鸟哥学习笔记10:vim编辑器

来源:互联网 发布:淘宝如何省钱ppolo 编辑:程序博客网 时间:2024/04/29 23:44

第十章 vim编辑器

为何要学vi/vim

  • 所有Unix like系统都内建vi;
  • 很多程序和命令都会调用vi的编辑接口(如crontab, visudo, edquota等命令);
  • vim提供程序设计语言的语法高亮功能

vi的使用

vi共分为3种模式:
- 一般模式:进行删除、复制、粘贴、撤销等操作;
- 编辑模式:编辑文件内容;
- 命令模式:打开、读取、保存文件等额外操作;

image

vi/vim配置文件

  • ~/.viminfo 记录用户之前的编辑状态。下次打开文件会继续之前的编辑。
  • ~/.vimrc 保存特定用户的vi/vim配置参数信息。用户可以按需修改自己的vim配置参数。
  • /etc/vimrc 保存vi/vim的全局配置参数信息。不建议修改!

注意:配置文件/etc/vimrc~/.vimrc中的批注是以双引号(”)开始部分!

[root@www ~]# vim ~/.vimrc"这个档案的双引号 (") 是批注set hlsearch            "高亮度反白set backspace=2         "可随时用退格键删除set autoindent          "自动缩排set ruler               "可显示最后一行的状态set showmode            "左下角那一行的状态set nu                  "可以在每一行的最前面显示行号啦!set bg=dark             "显示不同的底色色调syntax on               "进行语法检验,颜色显示。

vim的其他注意事项

中文编码问题

使用vim打开文件出现乱码时,应考虑如下因素:
- 你的Linux系统默认支持的字符编码情况,这与/etc/sysconfig/i18n有关;
- 你终端界面的语系,这与环境变量LANG有关;
- 你所打开的文件本身的编码;
- 开启终端机的接口,tty1~tty6接口本身默认就不支持中文编码!

DOS与Linux的断行符

文本换行符转换工具:
- dos2unix dos转unix
- unix2dos unix转dos

基本使用方法

[root@www ~]# dos2unix [-kn] file [newfile][root@www ~]# unix2dos [-kn] file [newfile]选项与参数:-k  :保留该档案原本的 mtime 时间格式 (不更新档案上次内容经过修订的时间)-n  :保留原本的旧档,将转换后的内容输出到新档案,如: dos2unix -n old new

范例一:将刚刚上述练习的 /tmp/vitest/man.config 修改成为 dos 断行

[root@www ~]# cd /tmp/vitest[root@www vitest]# cp -a /etc/man.config .[root@www vitest]# ll man.config-rw-r--r-- 1 root root 4617 Jan  6  2007 man.config[root@www vitest]# unix2dos -k man.configunix2dos: converting file man.config to DOS format ...# 屏幕会显示上述的讯息,说明断行转为 DOS 格式了![root@www vitest]# ll man.config-rw-r--r-- 1 root root 4758 Jan  6  2007 man.config# 断行字符多了 ^M ,所以容量增加了!

范例二:将上述的 man.config 转成 man.config.linux 的 Linux 断行字符

[root@www vitest]# dos2unix -k -n man.config man.config.linuxdos2unix: converting file man.config to file man.config.linux in UNIX format ...[root@www vitest]# ll man.config*-rw-r--r-- 1 root root 4758 Jan  6  2007 man.config-rw------- 1 root root 4617 Jan  6  2007 man.config.linux

字符编码转换工具:iconv

基本使用方法

[root@www ~]# iconv --list[root@www ~]# iconv -f 原本编码 -t 新编码 filename [-o newfile]选项与参数:--list :列出 iconv 支持的语系数据-f     :from ,亦即来源之意,后接原本的编码格式;-t     :to ,亦即后来的新编码要是什么格式;-o file:如果要保留原本的档案,那么使用 -o 新档名,可以建立新编码档案。

范例一:将 /tmp/vitest/vi.big5 转成 utf8 编码

[root@www ~]# cd /tmp/vitest[root@www vitest]# iconv -f big5 -t utf8 vi.big5 -o vi.utf8[root@www vitest]# file vi*vi.big5: ISO-8859 text, with CRLF line terminatorsvi.utf8: UTF-8 Unicode text, with CRLF line terminators
0 0
原创粉丝点击