厨师:如何为刀设置EDITOR

时间:2013-07-10 05:11:21

标签: chef

当我在命令下面运行时,我得到下面提到的错误:

$ knife node edit hostname.domain.com
ERROR: You must set your EDITOR environment variable or configure your editor via knife.rb

我想在knife.rb中设置编辑器值,但我无法找到与编辑器对应的选项。我已经通过以下链接解释了knife.rb支持的各种选项:

http://docs.opscode.com/config_rb_knife.html

http://docs.opscode.com/config_rb_knife_optional_settings.html

我知道我没有忽略上面的链接,但我可以;找不到与设置编辑器值相关的选项。

你能否指出我正确的选择,这将有助于我设置刀编辑。

感谢。

4 个答案:

答案 0 :(得分:20)

您可以通过两种方式设置EDITOR变量。第一种方法是在命令行中设置EDITOR变量。

export "EDITOR=nano"

OR

export "EDITOR=vim"

Second Way在knife.rb文件中设置EDITOR。

knife[:editor]="vim"

OR

knife[:editor]="nano"

nano也是Ubuntu附带的编辑器。

答案 1 :(得分:11)

如果我们查看source codeassert_editor_set!方法),我们可以看到它会检查config[:editor]。相当逻辑上,knife.rb中的knife[:editor]应该可以正常工作。

knife[:editor]在最新厨师(第11.4.4节)为我工作。但在旧版本(v10.26)中,它不起作用。

答案 2 :(得分:1)

对于可视化编辑器(如原子或代码),您需要使用“ -w”开关导出EDITOR变量: 导出EDITOR ='atom -w'

答案 3 :(得分:0)

不幸的是,厨师并不认为'vi'是编辑器所以只设置vim或nano。