(七)vim高级功能

 vi命令实际上调用的是vim。

块选择:
  • v,字符选择,光标经过的地方反白选择
  • V,行选择
  • [Ctrl]+v,块选择,长方形
  • y,复制反白区域;d,删除
多文件编辑:
可同时打开多个文本文件,vi file1 file2 ......,可以在多个文件之间进行操作(如复制粘贴)
  • :n,编辑下个文件 
  • :N,上一个
  • :files,列出当前打开的所有文件
多窗口功能;
两种情况下可能会需要多窗口:
  1. 大文件,对照前后数字
  2. 两个不同文件对照看
几个命令:
  • :sp [filename],将filename在新窗口中打开,若无filename,则重复打开当前文件
  • [Ctrl]+w,切换
  • [Ctrl]+wq,离开多窗口模式
vim环境设置
:set all,该命令可查看所有环境变量的设置,比如syntax(语法高亮),具体环境设置命令另查

多行注释:
: . , +499 s/^/#/g
其中.表示光标当前行,+499表示下面还有多少行
 
一篇比较好的介绍vim的文章:
http://xiximoon.blog.51cto.com/660072/151951

中文编码的问题
如果文件编码和终端使用的编码不一致,就会出现乱码现象
tty1-tty6本身预设就不支持中文,也许通过设置可以支持,但应该也不是完美支持
xshell也需要设置中文编码utf-8

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

注意,繁简体之间也可以进行转换.

DOS 与 Linux 的换行符

DOS的换行符是^M$(CRLF),linux的换行符是$(LF)
可以用下面两个命令来进行转换:
dos2unix [-kn] file [newfile]
unix2dos [-kn] file [newfile]
选项与参数:
-k  :保留该档案原本的 mtime 时间格式 (不更新档案上次内容经过修订的时间)
-n  :保留原本的旧档,将转换后的内容输出到新档案,如: dos2unix -n old new

 

你可能感兴趣的:(职场,vim,休闲)