免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1450 | 回复: 0
打印 上一主题 下一主题

vim设置(常用备忘) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-08-25 10:00 |只看该作者 |倒序浏览

                                                1.vim自动识别中文
使用 vim/gvim 的话
请在 ~/.vimrc 里加一行
set encoding=cp936
set fileencodings=utf-8,gbk,big5
vim就会自动识别编码了
也可以这样来做:
env LANG=zh_CN.UTF-8 vim /home/wangyao/.fcitx/config_bak
这个比较的通用,可以设置很多的程序的编码。
只要在命令的前面加一个env LANG=zh_CN.GB2312|zh_CN.GB18030|zh_CN.GBK|zh_CN.UTF-8
可以制定任意的中文编码
如果用户想转换编码格式,则可以在VIM中用下面命令来转换保存的格式
:set fileencoding=cp936
:set fileencoding=utf-8
来分别保存为GB和UTF-8编码的格式.
------------------------------------------------------------------------------
环境变量LANG(使用的语言);
环境变量LC_CTYPE(使用的内部编码);
Vim选项encoding(Vim的内部编码);
Vim选项termencoding(Vim在与屏幕/键盘交互时使用的编码);
Vim选项fileencoding(Vim当前编辑的文件在存储时的编码);
Vim选项fileencodings(Vim打开文件时的尝试使用的编码);
Vim选项ambiwidth(对"不明宽度"字符的处理方式;Vim 6.1.455后引入)
------------------------------------------------------------------------------
      " 设置字体。
      " 字体名称可以通过前一节介绍的语句获得,
      " 如果字体名称中含有空格,
      " 需要在空格前面加上一个反斜杠,如下:
      set guifont=Courier\ 9
    * 举例:设置字体
      先在 Gvim 中选择好字体、字号,然后输入 :set guifont? 来查看当前字体设定,屏幕输出类似一行只字体信息:
      guifont=Courier_New:h12:cANSI
      我的设置:guifont=Bitstream_Vera_Sans_Mono:h10:cGB2312
      记下这条信息,在 .vimrc 文件中插入 set guifont=Courier_New:h12:cANSI
      (如果 guifont 后有空格,要在空格前加反斜杠。),OK,就是这么简单,下面整理下比较常用的简单设置。
    * set nocp
      该命令指定让 Vim 工作在不兼容模式下。 在 Vim 之前, 出现过一个非常流行的编辑器叫
      vi。 Vim 许多操作与 vi 很相似, 但也有许多操作与 vi 是不一样的。 如果使用“:set
      cp”命令打开了兼容模式开关的话, Vim 将尽可能地模仿 vi 的操作模式。
      也许有许多人喜欢“最正统的 vi”的操作模式, 对于初学者来说, vi 里许多操作是比较不方便的。
      举一个例子, Vim 里允许在 Insert 模式下使用方向键移动光标, 而 vi 里在
      Insert 模式下是不能移动光标的, 必须使用 ESC 退回到 Normal 模式下才行。
      再举一个例子, vi 里使用 u 命令可以撤消一次先前的操作, 再次按下 u
      时, 将撤消“撤消”这个动作本身, 也就是我们常说的“重复”(redo)。
      而 Vim 里可以使用 u 命令撤消多步操作, “重复”使用的快捷键是 Ctrl
      + R。
      使用兼容模式后, Vim 将放弃这些新的功能, 尽量模仿 vi 的各种操作方式。
      只有在不兼容模式下, 才能更好地发挥 Vim 自身的特点。 Bram 爷爷强烈推荐大家使用
      Vim 的不兼容模式, 滇狐也是这样推荐的。 请务必在你的 .vimrc 中的第一行写上:
      “set nocp”。
    * set backspace=indent,eol,start
      设想这样一个情况: 当前光标前面有若干字母, 我们按下 i 键进入了 Insert
      模式, 然后输入了 3 个字母, 再按 5 下删除(Backspace)。 默认情况下,
      Vim 仅能删除我们新输入的 3 个字母, 然后喇叭“嘟嘟”响两声。 如果我们“set
      backspace=start”, 则可以在删除了新输入的 3 个字母之后, 继续向前删除原有的两个字符。
      再设想一个情况: 有若干行文字, 我们把光标移到中间某一行的行首, 按
      i 键进入 Insert 模式, 然后按一下 Backspace。 默认情况下, 喇叭会“嘟”一声,
      然后没有任何动静。 如果我们“set backspace=eol”, 则可以删除前一行行末的回车,
      也就是说将两行拼接起来。
      当我们设置了自动缩进后, 如果前一行缩进了一定距离, 按下回车后, 下一行也会保持相同的缩进。
      默认情况下, 我们不能在 Insert 模式下直接按 Backspace 删除行首的缩进。
      如果我们“set backspace=indent”, 则可以开启这一项功能。
      上述三项功能, 你可以根据自己的需要, 选择其中一种或几种, 用逗号分隔各个选项。
      建议把这三个选项都选上。
    * set whichwrap=b,s,,[,]
      默认情况下, 在 VIM 中当光标移到一行最左边的时候, 我们继续按左键,
      光标不能回到上一行的最右边。 同样地, 光标到了一行最右边的时候, 我们不能通过继续按右跳到下一行的最左边。
      但是, 通过设置 whichwrap 我们可以对一部分按键开启这项功能。 如果想对某一个或几个按键开启到头后自动折向下一行的功能,
      可以把需要开启的键的代号写到 whichwrap 的参数列表中, 各个键之间使用逗号分隔。
      以下是 whichwrap 支持的按键名称列表:
      b: 在 Normal 或 Visual 模式下按删除(Backspace)键。
      s: 在 Normal 或 Visual 模式下按空格键。
      h: 在 Normal 或 Visual 模式下按 h 键。
      l: 在 Normal 或 Visual 模式下按 l 键。
      : 在 Normal 或 Visual 模式下按右方向键。
      ~: 在 Normal 模式下按 ~ 键(翻转当前字母大小写)。
      [: 在 Insert 或 Replace 模式下按左方向键。
      ]: 在 Insert 或 Replace 模式下按右方向键。
    * set sw=4
      自动缩进的时候, 缩进尺寸为 4 个空格。
    * set ts=4
      Tab 宽度为 4 个字符。
    * set et
      编辑时将所有 Tab 替换为空格。
      该选项只在编辑时将 Tab 替换为空格, 如果打开一个已经存在的文件, 并不会将已有的
      Tab 替换为空格。 如果希望进行这样的替换的话, 可以使用这条命令“:retab”。

               
               
               
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/29318/showart_1146304.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP