Linux中的自定义命令行编辑器



当按下Alt+Enter时,我想在bashzsh中调用我自己的命令行编辑器。它应该进行一些编辑并将结果提交给Enter上的shell。所以基本上,我的编辑器接受当前的命令行内容,并返回一个修改后的内容。有什么关于如何实现整合的想法吗?我知道如何使用ANSI终端,只是想知道如何以这种方式将我的编辑器控制台应用程序集成到shell中。

对于Bash:

有一个Readline命令可以打开编辑器中的当前命令edit-and-execute-command。默认情况下,它绑定到C-x C-e,并以$VISUAL$EDITOR或Emacs的设置打开命令。

您可以通过将$VISUAL导出到环境中来将其设置为编辑器,例如在~/.bashrc:中

export VISUAL=youreditor

并将其绑定到Alt+使用输入

bind '"eC-m": edit-and-execute-command'

在命令行或上

"eC-m": edit-and-execute-command

在CCD_ 11中。

对于zsh:几乎相同

export VISUAL=youreditor
autoload -Uz edit-command-line
zle -N edit-command-line
bindkey 'eC-m' edit-command-line

相关内容

  • 没有找到相关文章

最新更新