2

NppExec 文档帮助 说:

  • 现在 NPP_EXEC 命令可以将参数传递给脚本。可以通过以下宏变量在脚本中访问这些参数: $(ARGC), $(ARGV), $(ARGV[n]). 示例: npp_exec "script name" param_1 "param 2"。此示例为脚本设置以下值: $(ARGC) = 3; $(ARGV) = param_1 "param 2"; $(ARGV[0]) = script name; $(ARGV[1]) = param_1; $(ARGV[2]) = param 2.

但我不确定在哪里设置它。它是在执行框中还是在高级选项中?

例如,

  # counter_thread.rb
count = 0
counter_thread = Thread.new do
  1.upto(1000000) { count += 1; }
end

counter_thread.join unless ARGV[0]
puts "The counter was able to count up to #{count}."

测试 1:NppExec 运行良好,因为没有参数

counter_thread.rb
The counter was able to count up to 1000000.

测试2:想知道下面的设置。(dont_call_join 是这里的一个论点)

counter_thread.rb dont_call_join
4

1 回答 1

0

假设 counter_thread.rb 是一个当前在 Notepad++ 中打开的文件,那么将以通常的方式(即 via )ruby counter_thread.rb dont_call_join将 dont_call_join 作为参数传递给 Ruby 。ARVG

这将按照您的预期运行您的代码——如果您将参数传递给 Ruby 程序,则计数线程不会运行,否则它会运行。

也许这是更好的例子?

      inputbox "What is your name?" : Nobody    
      ruby -e "puts \"Hello #{ARGV[0]}!\" " $(INPUT[1])

第一行弹出一个消息框来获取用户输入(默认为Nobody)。第二行将用户输入传递给 ruby​​ one 班轮程序。NppExec 提供便利。

于 2012-08-21T07:41:21.857 回答