前言

从 Debian9 开始,为了便于选取文本,VIM 引入了可视 (Visual) 模式。 可以使用以下三种模式:

  • 用 v 命令进入的字符可视化模式(Characterwise visual mode)。文本选择是以字符为单位的。
  • 用 V 命令进入的行可视化模式(Linewise visual mode)。文本选择是以行为单位的。
  • 用 ctrl-V 进入的块可视化模式(Blockwise visual mode)。可以选择一个矩形内的文本。

个人用不太习惯,此处记录一下如何 disable 这个功能。

方法

通过编辑 vim 配置文件去除默认设置的鼠标模式a。可以编辑全局 /etc/vim/vimrc.local 或者当前用户配置文件~/.vimrc

1
2
3
4
5
6
7
tee /etc/vim/vimrc.local  << EOF
source $(find / -name defaults.vim)
let skip_defaults_vim = 1
if has('mouse')
set mouse-=a
endif
EOF

此处也记录一下 EOF 里对于变量的处理

希望解析变量,直接使用’<< EOF’即可

1
2
3
tee /etc/vim/vimrc.local  << EOF
source $(find / -name defaults.vim)
EOF

不希望解析变量

  1. EOF 加反斜杠,或用单引号、双引号包围 。适用变量多的情况
1
2
3
4
cat > /tmp/test.log << 'EOF'
export NODE_HOME=/usr/local/node
export PATH=$NODE_HOME/bin:$PATH
EOF
  1. 加转义字符,适用于变量少的情况
1
2
3
4
cat cat > /tmp/test.log << EOF
export NODE_HOME=/usr/local/node
export PATH=\$NODE_HOME/bin:\$PATH
EOF