【问题标题】:User Input Perl Programs with Sublime Text 2带有 Sublime Text 2 的用户输入 Perl 程序
【发布时间】:2013-03-14 14:12:21
【问题描述】:

我一直在编写脚本并构建它们没有问题。但是当我想接受用户输入时呢?

我安装了 SublimeREPL 并选择了 perl 包,但我不确定如何使用此控制台运行我的程序。

我没有看到任何文档,我看到有人运行 python 脚本并输入“运行”的视频,但这似乎不适用于 perl。

【问题讨论】:

    标签: perl sublimetext2 read-eval-print-loop sublimerepl


    【解决方案1】:

    SublimeREPL 应该是 Perl 的吗?我不这么认为。也许您应该尝试使用 perl myscript.pl 直接从您最喜欢的终端模拟器运行游览脚本。

    【讨论】:

    • SublimeREPL 有一个内置的 PERL 设置/模拟器,但我没有看到任何关于运行我的脚本的语法或命令的文档
    • 具有功能的软件是否应该缺少有关它的文档?你不能使用它。如果没有记录,则该功能不存在。
    【解决方案2】:

    包含的 Perl REPL (Packages/SublimeREPL/config/Perl/re.pl) 基本上是一个非常短的 perl 程序,eval() 一次输入一行:

    $| = 1;
    
        while(true) {
            print "perl>  ";
            $line=<>;
            $value=eval($line);
            $error=$@;
            if( $error ne "" ) { 
                    print $error; 
                } else { 
                    print "$value\n"; 
            }
        }
    

    老实说,还有很多不足之处。

    但是,快速搜索 CPAN 发现 Devel::REPL,您可以尝试在 SublimeREPL 中运行它。将以下内容创建为Packages/User/SublimeREPL/config/Perl/Main.sublime-menu

    [
         {
            "id": "tools",
            "children":
            [{
                "caption": "SublimeREPL",
                "mnemonic": "r",
                "id": "SublimeREPL",
                "children":
                [
                    {"caption": "Perl",
                    "id": "Perl",
    
                     "children":[
                        {"command": "repl_open",
                         "caption": "Devel::REPL",
                         "id": "repl_perl",
                         "mnemonic": "p",
                         "args": {
                            "type": "subprocess",
                            "encoding": "utf8",
                            "cmd": ["/path/to/perl", "/path/to/Devel/REPL/re.pl"],
                            "cwd": "$file_path",
                            "syntax": "Packages/Perl/Perl.tmLanguage",
                            "external_id": "devel_repl"
                            }
                        }
                        ]
                    }
                ]
                }]
            }
    ]
    

    这将为您的Tools 菜单添加一个新的Perl 子菜单,其中包含一个Devel::REPL 选项。我现在没有机会测试它,祝你好运!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-20
      • 1970-01-01
      • 2012-08-11
      • 2012-05-23
      相关资源
      最近更新 更多