1.安装了cygwin,但发现vim编辑模式下退格键backspace不能用,非常不方便。
原来vim缺省是vi兼容模式,设置成不兼容模式就好了:
:set nocp
可以用help查看相关的设置。
:help cp
:help compatible
2.打开一个已存在的文件后,文件中的字符,不能用backspace键删除。但是此时如果输入新的字符,却可以用backspace进行删除。这是怎么回事?
查看帮助:
:help bs
:help backspace
原来,backspace有几种工作方式,默认是vi兼容的。对新手来说很不习惯。对老vi 不那么熟悉的人也都挺困扰的。可以用
:set backspace=indent,eol,start
来解决。
indent: 如果用了:set indent,:set ai 等自动缩进,想用退格键将字段缩进的删掉,必须设置这个选项。否则不响应。
eol:如果插入模式下在行开头,想通过退格键合并两行,需要设置eol。
start:要想删除此次插入前的输入,需设置这个。
用这种方式的话,每次启动VI都需要重新设置一次。另一种一劳永逸的做法就是在/etc/vim/vimrc文件中添加
set backspace=indent,eol,start
3.光标在行尾按右方向键不到下一行行首,在行首按左方向键不到上一行行尾,怎么回事?
:help ww
:help whichwrap
想用左移键回到上一行的行尾,在行尾用右移键能够到下一行的开头,通过设置 whichwrap 我们可以对一部分按键开启这项功能。如果想对某一个或几个按键开启到头后自动折向下一行的功能, 可以把需要开启的键的代号写到 whichwrap 的参数列表中,各个键之间使用逗号分隔。
可以用
4. 如何将tab键替换为空格?
编辑python文件时,按tab键不能自动替换为空格,应如何处理?
:set ai
:set shiftwidth=4
:set sw=4
:set tabstop=4
:set ts=4
:set expandtab
:set et