我的一亩三分地 我就喜欢!
13fen  设为主页
 收藏本站
 
当前位置: > 一亩三分地:首页 > 操作系统 > Linux > 中文应用 > vi基本技巧
热门文章排行
热门文章排行 一步一步的制作arm-linux交叉编译环(12-05)
深入理解硬盘的Linux分区(12-22)
深入浅出定制Linux系统环境变量(12-05)
Linux常用基本命令(二)(10-13)
红旗Linux5.0桌面正式版光盘安装{图(11-15)
精采文章排行
精采文章排行 Linux历史篇(11-16)
Linux不是Windows(11-16)
第一次进入红旗后,应该做的几件事(11-15)
详解linux与win分区格式(11-15)
打消你对Linux的疑虑(11-15)
技术专题推荐
网管论坛交流
 

vi基本技巧 

作者:   来源:   点击:   日期:2006-11-16

 vim的命令批处理的一个小例子
对vim使用命令批处理:用-s [scirpt file] 选项.
echo "oqwert^[:wq" > test.script
vi -s test.script /root/dm.txt

vim以16进制方式编辑文件:
:%!xxd

vim颜色太暗的解决方法:
:colorscheme evening

vim退出后在屏幕上保留被编辑文件的内容:
:set t_ti= t_te=

让vi一直显示当前行列值:
:set ru

我的MacOSX上的vimrc文件
[1] Displaying line number
[2] Syntax color
[3] Auto indent when editing C/C++ source files
[4] Remember and jump to the last cursor position when opening files. Thus you can find easily what you are viewing/editing last time

set nu
syntax on
filetype indent on
autocmd BufReadPost *
if line("'"") > 0 && line("'"") <= line("$") |
exe "normal g'"" |
endif

vim在屏幕行间移动
当文件的某些行比较长,超过屏幕宽度时,通常会折行,分成若干个屏幕行(screen line)。尤其是查看一些由程序生成的文件的时候比较常见。j和k键只能在文本行之间移动。需要在屏幕行间移动的时候要用gj和gk

用vim格式化代码
从别的编辑器里粘贴到vim里的代码经常由于不正常的缩进变得格式混乱。在vim的官方FAQ (http://vimdoc.sourceforge.net/cgi-bin/vimfaq2html3.pl)找到的:
格式化全文: gg=G
自动缩进当前行: ==

1. vi中设置tab键的空格数:
:set ts=4(tab设置为4个)
将此句话加到当前用户目录的文件.vimrc中,这样当前用户用vi的时候就会启动该设置
2.拷贝:
将第2行到第9行的字copy到第11行
:2,9 co 10
将第2行到第9行的字move到第11行
:2,9 m 10
3.设置行号:
:se nu
取消行号:
:se nonu
4.当前行与下一行换位置:ddp
5.当前字与后面的字换位置:xp
6.光标向左移一个字符:h
光标向下移一个字符:j
光标向上移一个字符:k
光标向下移一个字符:l
光标移到下一行行首:+(加号)
光标移到上一行行首:-(减号)
光标移到行尾:$(shift+4)
光标向下移一个字符:j
光标移到屏幕的第一行:shift+h
光标移到屏幕的中间:shift+m
光标移到屏幕的最后一行:shift+l
向下移动一屏:ctrl+f (front)
向上移动一屏:ctrl+b (back)
移到文档的第一行:gg
移到文档的最后:shift+g
7.删除当前字符:x
删除当前单词:dw
删除从关标到行尾的字符:d$
删除整行:dd
一般命令前加上一个数,则删除几个字、单词或行
删除从第3行到第8行::3,8d
8.替换当前一个字符:r
一直处于替换状态:shift+r
9.向后查找:?
向前查找:/
继续上一次查找:n
与上一次查找方向相反:shift+n
匹配查找:/wei.op (.代表所有字母)
10.拷贝一个单词:yw
拷贝当前光标到行尾的字符:y$
拷贝整行:yy
11.粘贴:p
粘贴到光标后:shift+p
12.恢复操作:u(象word中的ctrl+z)
redo操作:ctrl+r(象word中的ctrl+y)
13.连接两行:J
14.{}()[]匹配: %
15.在右下角显示行和列及百分比的信息:
:set ruler
16.区分大小写
:set ignorecase
不区分:
:set noignorecase
17.精确匹配查找单词
如果你输入 "/the",你也可能找到 "there"。要找到以 "the" 结尾的单词,可以用:
/the\> "\>" 是一个特殊的记号,表示只匹配单词末尾。类似地,"\<" 只匹配单词的开头。
这样,要匹配一个完整的单词 "the",只需:/\<the\>
这不会匹配 "there" 或者 "soothe"。注意 "*" 和 "#" 命令也使用了 "词首" 和 "词尾"
标记来匹配整个单词(要部分匹配,使用 "g*" 和 "g#")



文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【论坛讨论

   相关文章:

   文章评论:(条)
  
 请留名: 匿名评论   点击查看所有评论 网管论坛
 

  责任编辑:一分  声明:刊登此文章是为了传递更多信息,文章内容仅供参考,转载请注明出处。