ch10.054_best

来自「Perl Best Practices the source code」· 054_BEST 代码 · 共 50 行

054_BEST
50
字号
################################################################################   Code fragment (Recommended) from Chapter 10 of "Perl Best Practices"   ####     Copyright (c) O'Reilly & Associates, 2005. All Rights Reserved.      ####  See: http://www.oreilly.com/pub/a/oreilly/ask_tim/2001/codepolicy.html  ################################################################################# Standard modules...use strict;use warnings;use IO::Prompt;use Carp;use English qw( -no_match_vars );use Data::Alias;use Readonly;use Scalar::Util qw( openhandle ); sub is_interactive {    # Not interactive if output is not to terminal...    return 0 if not -t *STDOUT;     # If *ARGV is opened, we're interactive if...    if (openhandle *ARGV) {        # ...it's currently opened to the magic '-' file        return -t *STDIN if $ARGV eq '-';         # ...it's at end-of-file and the next file is the magic '-' file        return @ARGV>0 && $ARGV[0] eq '-' && -t *STDIN if eof *ARGV;         # ...it's directly attached to the terminal         return -t *ARGV;    }     # If *ARGV isn't opened, it will be interactive if *STDIN is attached     # to a terminal and either there are no files specified on the command line    # or if there are one or more files and the first is the magic '-' file    return -t *STDIN && (@ARGV==0 || $ARGV[0] eq '-');}# and later...Readonly my $PROMPT => q{> }; if (is_interactive()) {    print $PROMPT;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?