[ 分享 ]bash 下注释命令的快捷键,[ 已解决 ] 顺便求 zsh 的对应键

以前看到的,在 bash 下如果你输入了一个很长的命令,比如
sudo zypper in gcc make gdb …(有可能几十个软件)
突然暂时又不想运行,这样的话可以按 alt+shift+3(就是 alt+*) 进行注释,bash 会在命令前加 # 并写入 history 中,等需要运行时只要按上方向键调出来删掉前面的 # 就可以了。
但是 zsh 没有这个快捷键,有没有谁知道 zsh 这个功能怎么实现?

在 zsh 里运行:

setopt interactivecomments

或把它写到 .zshrc

set -k 可能也行,没试过。另外你的 uefi boot manager 学会了吗?

恩,uefi 已经成功删除了,谢谢女王关心

setopt interactivecomments

这个选项跟我说的快捷键不是一个意思,这个选项是可以在命令里面输入注释,我说的快捷键的意思是能够把输入的命令转换为注释,就是比如输入
sudo zypper up
按 alt+shift+3 就会将
#sudo zypper up
写入 history,再按上方向键就可以重新调出来。可以在 bash 下试试效果

我以为你就想要 # 号。。。

那个啊

   commit-to-history() {
      print -s ${(z)BUFFER}
      zle send-break
   }
   zle -N commit-to-history
   bindkey "^X^H" commit-to-history

写到 zsh.rc 或者用 oh-my-zsh 可以写到 ~/.oh-my-zsh/lib/key-bindings. zsh

参考:

zsh.org/mla/users/2008/msg00001.html

上面那个快捷键是 Ctrl+X Ctrl+H,改快捷键绑定看:

yangzetian.github.io/Yang-Tech-Notes/linux/zsh_bindkeys.html