VIM中为什么不能按CTRL-S

说起CTRL-S你会想起什么?

在几乎所有的编辑器中,CTRL-S都是保存文档:

  • 记事本
  • Notepad++
  • Sublime Text
  • Atom
  • Microsoft Word/Excel

但是在vim中,保存是输入:w,但是如果习惯性的不小心按了CTRL-S,那么恭喜你,你的Terminal将会处于“死机”状态,不信的话可以试试。这时你做的事几乎只有一件:关闭Terminal,重新再打开,以后避免不小心按到CTRL-S

但是习惯,啧啧啧~~~~

为什么CTRL-S会这么麻烦

如果知道vim按键帮助的话,输入help ctrl-s可以查看这个组合键的帮助信息,如下:
vim中ctrl-s的帮助信息

从上图可以看到,解释为CTRL-S会阻塞所有的输入,解决方式为CTRL-Q

其实不是vim的锅,而是terminal的过

Terminal的过

从上图可以看到:

  • CTRL-S为Terminal的组合键,在Terminal中,其用途是停止所有的输出。再加上在vim中的停止输入,这个作用力….
  • CTRL-Q就是撤销CTRL-S的组合键。