gvim文本文件自动设置textwidth问题

Vim 里有个选项是 textwidth,作用就是设置文本宽度,当用户输入一个很长的文本时,如果文本中有空格,那么这行文本就会被 Vim 按照 textwidth 设置的长度自动拆分,拆分成每行最多 textwidth 个字符。它和 Vim 本身的自动折行区别就是,自动折行之后,原来的文字还是一整行,不能用 j k 在折行间切换,只能用 gj gk;而用 textwidth 自动拆分之后,一行文字变成了多行,每行间自动插入了换行符。可以用 j k 在行之间切换。相信只要看过 Vim 帮助文件的人都会有直观感受。

这两天在 Windows 系统上刚装了 gVim 7.4,在输入的时候发现会自动折行,用 :echo &tw 发现 textwidth 设置成了 78,于是在 _vimrc 里加上 set textwidth=0,但设置后,发现 textwidth 仍然是 78,没有被改变。于是 Google 一番,发现了这个,按照上面的方法设置了 letg:leave_my_textwidth_alone,还是没用。启动的时候 Vim 根本不认这个选项。

继续搜索,终于在万能的 StackExchange 上找到了这个,原来 Vim 启动时加载 .vim 文件是有顺序的。按照这里提供的方法,执行

?
1
2
3
: redir >d:\output.txt
: scriptnames
: redir END

得到我的 Vim 启动时加载的 vim 文件

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
D:\Program Files (x86)\Vim\_vimrc
D:\Program Files (x86)\Vim\vim74\vimrc_example. vim
D:\Program Files (x86)\Vim\vim74\ syntax \ syntax . vim
D:\Program Files (x86)\Vim\vim74\ syntax \synload. vim
D:\Program Files (x86)\Vim\vim74\ syntax \syncolor. vim
D:\Program Files (x86)\Vim\vim74\ filetype . vim
D:\Program Files (x86)\Vim\vim74\ menu . vim
D:\Program Files (x86)\Vim\vim74\lang\menu_zh_cn.cp936. vim
D:\Program Files (x86)\Vim\vim74\lang\menu_chinese_gb.936. vim
D:\Program Files (x86)\Vim\vim74\autoload\ paste . vim
D:\Program Files (x86)\Vim\vim74\ftplugin. vim
D:\Program Files (x86)\Vim\vim74\indent. vim
D:\Program Files (x86)\Vim\vim74\mswin. vim
D:\Program Files (x86)\Vim\vim74\colors\desert. vim
D:\Program Files (x86)\Vim\vim74\ syntax \nosyntax. vim
D:\Program Files (x86)\Vim\vim74\delmenu. vim
D:\Program Files (x86)\Vim\vim74\plugin\delimitMate. vim
D:\Program Files (x86)\Vim\vim74\autoload\delimitMate. vim
D:\Program Files (x86)\Vim\vim74\plugin\emmet. vim
D:\Program Files (x86)\Vim\vim74\plugin\getscriptPlugin. vim
D:\Program Files (x86)\Vim\vim74\plugin\gzip. vim
D:\Program Files (x86)\Vim\vim74\plugin\matchparen. vim
D:\Program Files (x86)\Vim\vim74\plugin\netrwPlugin. vim
D:\Program Files (x86)\Vim\vim74\plugin\rrhelper. vim
D:\Program Files (x86)\Vim\vim74\plugin\ spellfile . vim
D:\Program Files (x86)\Vim\vim74\plugin\tarPlugin. vim
D:\Program Files (x86)\Vim\vim74\plugin\tohtml. vim
D:\Program Files (x86)\Vim\vim74\plugin\vimballPlugin. vim
D:\Program Files (x86)\Vim\vim74\plugin\zipPlugin. vim
D:\Program Files (x86)\Vim\vim74\lang\menu_zh_cn.utf-8. vim

用 grep 'textwidth' <filename>,在 vimrc_example.vim 和 menu.vim 中找到了对 textwidth 的设置。最终注释掉 vimrc_example.vim 里的

?
1
autocmd FileType text setlocal textwidth =78

就可以了~~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值