青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

posts - 76,  comments - 621,  trackbacks - 0

1)文件操作
   vi FileName                            打開文件 FileName,并將光標置于第一行首。
   vi +n FileName                       打開文件 FileName,并將光標置于第 n 行首。
   vi + FileName                         打開文件 FileName,并將光標置于最后一行。
   vi + /pattern File            打開文件 File,并將光標置于其中第一個于 pattern 匹配的字符串處。
   vi –r FileName                        在上次正用 vi 編輯 FileName 發生系統崩潰后,恢復FileName。
   vi File1 … Filen                       打開多個文件,依次對之進行編輯。


   :%!xxd                                按十六進制查看當前文件
     :%!xxd -r                            從十六進制返回正常模式

   :n1,n2 co n3                         將 n1 行到 n2 行之間的內容拷貝到第 n3 行下。
   :n1,n2 m  m3                        將 n1 行到 n2 行之間的內容移至第 n3 行下。
   :n1,n2 d                               將 n1 行到 n2 行之間的內容刪除。
   :n1,n2 w  filename                 將 n1 行到 n2 行之間的內容保存到文件 filename 中
   :n1,n2 w! Command               將文件中n1行到n2行的內容作為 Command的輸入并執行之,
                                              若不指定 n1、n2,則將整個文件內容作為 Command 的輸入。
   :r! Command                          將命令 Command 的輸出結果放到當前行。
   :nr <文件>;                            把<文件>;插入到第n行
   :so <文件>;                            讀取<文件>;,再執行文件里面的命令(文件中的命令應該都是一些ex命令)
   :l1,l2w <文件>;                       把第l1和第l2行之間的文本寫到<文件>;中去
   :w >;>; <文件>;                       添加到<文件>;末尾. 也可以使用行號
   :e!                                        重新編輯當前文件,忽略所有的修改

 

·(、[、{、}、]、)對應顯示 
   %                                       顯示當前(、[、{ 、}、] 、)的對應項
   )                                                 顯示對應的(
   )                                                 顯示對應的[
   ]                                                 顯示對應的{ 
·(、[、{、}、]、)內數據選擇
   daB                                     刪除{}及其內的內容   (在非v可視模式下)
   diB                                      刪除{}中的內容
   ab                                       選擇()中的內容
   ib                                        選擇()中的內容(  不含()  )

   aB                                       選擇{}中的內容
   iB                                        選擇{}中的內容(  不含{}  )

·語法提示與自動補齊

★ ;;                      插入模式下的單詞自動完成
★ ;;                       行自動完成(超級有用)

·設置ctags
  #ctags -f /usr/share/vim/vim63/funcs.tags  -R  /opt/j2sdk/src  /usr/src/kernels/2.6.9-5.EL-i686 

   ^p                                             自動補齊上下文已有相近項
   ^n                                             自動補齊~/.tags中的相近函數              
   ^[                                              顯示~/.tags中的光標下的函數的原型,
                                                    按^t退出函數
   :pta 函數名                          預覽窗口快速打開相應函數所在文件,并將光標定位在對應函數的開頭
   K                                               顯示光標下的C函數的man說明手冊 

·變量定位
   gd                                             轉到光標下局部變量的定義處
   Gd                                             轉到光標下全局變量的定義處
·編譯選項
   :cn                                            命令會把你帶到下一個出錯地點,而不考慮它在什么文件里。
   :cc                                            命令會向你顯示當前錯誤的編譯器輸出信息;
   :cl                                             會生成一個列有項目所有錯誤的列表,以供瀏覽這些錯誤

 

3]光標移動
·字符
h                                              光標左移一個字符。
l                                               光標右移一個字符。

·字
w 或 W                                     光標右移一個字至字首。
B 或 b                                       光標左移一個字至字首。
E 或 e                                       光標右移一個字至字尾。

·句}                                              光標移至句尾。
(                                              光標移至句首。

·段)                                              光標移至段落開頭。
{                                              光標移至段落結尾。

·行k 或 Ctrl+p                                 光標上移一行。
j 或 Ctrl+n                                  光標下移一行。
Enter                                        光標下移一行。
nG                                            光標移至第 n 行首。
n+                                            光標下移 n 行。
n-                                             光標上移 n 行。
n$                                            光標移至第 n 行尾。
0                                              光標移至當前行首。
$                                              光標移至當前行尾。

·屏幕
H                                             光標移至屏幕頂行。
M                                             光標移至屏幕中間行。
L                                              光標移至屏幕最后行。
Ctrl+u                                       向文件首翻半屏。
Ctrl+d                                       向文件尾翻半屏。
Ctrl+f                                        向文件尾翻一屏。
Ctrl+b                                       向文件首翻一屏。
nz                                            將第 n 行滾至屏幕頂部。不指定 n 時將當前行滾至屏幕頂。

4}插入

# 在文件中插入行號(不是顯示行號,是插入!)
★:g/^/exec “s/^/”.strpart(line(”.”.” “, 0, 4)

·光標
i                                              在光標前插入。
a                                             在光標后插入。

·行
I                                             在當前行首插入。
A                                            在當前行尾插入。
o                                            在當前行之下一新行插入。
O                                            在當前行之上新開一行插入。

 

5)替換
r                                             替換當前字符。
R                                            替換當前字符及其后的字符,直至按 ESC 鍵。
s                                            從當前光標位置處開始,以輸入的文本代替指定數目的字符。
S                                            刪除指定數目的行,并以所輸入的文本代替。

6)修改
ncw 或 nCW                                   修改指定數目的字符。
nCC                                               修改指定數目的行。
:r filename                                      將文件 filename 插入在當前行之下

7)查找替換

/;;                              把狹義單詞 ; 寫到 搜索命令 行
/;;                               把廣義單詞 ; 寫到 搜索命令 行

:g/str/s/str1/str2/g
                                                    第一個g表示對每一個包括s1的行都進行替換,
                                                    第二個g表示對每一行的所有進行替換
                                                    包括str的行所有的str1都用str2替換
:%s/f $/for$/g                                將每一行尾部的“f ”(f鍵和空格鍵)替換為for
:%s/^/mv /g                                  在每一行的頭部添加“mv ”(mv鍵和空格鍵)

:s/fred/;a/g                              替換fred成register a中的內容,呵呵
:g/
# 替換一個visual區域
# 選擇一個區域,然后輸入 :s/Emacs/Vim/ 等等,vim會自動進入:模式
:'<,'>;s/Emacs/Vim/g                    前面的’<,'>;是vim自動添加的
# 在多個文檔中搜索
:bufdo /searchstr
:argdo /searchstr

 
復制與剪切
    xp                                            交換前后兩個字符的位置
    ddp                                          上下兩行的位置交換
    :g/fred/t$                                  拷貝行,從fred到文件末尾(EOF)

 

9)窗口操作
:vne                                             [filename]
:sp                                              [filename]
:S                                                [filename]
:new                                            [filename]
:^w + ^r                                      交換兩個窗口的位置
^w =                                           窗口等寬
:res -n                                          窗口高度減小n
:res +n                                         窗口高度增大n
:vert res -n
:vert res +n

10)DOS格式文本轉成Unix格式文本
:1,$s/^M//g

11)書簽
    在閱讀和編寫大的程序文件時,利用標記(書簽)功能定位是十分有幫助的。

    將光標移到想做標記的位置。假如做一個名為“debug1”的標記,那么用戶可在命令模式下輸入做標記的命令“mdebug1”,然后敲入回車鍵,一個名為“debug1”的標記就做好了。
    接下來用戶可以隨意將光標移到其它的位置,當在命令模式下輸入“`debug1”后,就能快速回到“debug1”的標記所在行的行首。
12)刪除操作

    :%s/r//g                                      刪除DOS方式的回車^M
    :%s= *$==                                 刪除行尾空白

    :%s/^(.*)n1/1$/                          刪除重復行

    :%s/^.{-}pdf/new.pdf/                    只是刪除第一個pdf

    :%s/;//                           又是刪除多行注釋(咦?為什么要說「又」呢?)

   :g/^s*$/d                                       刪除所有空行
   :g!/^dd/d                                       刪除不含字符串’dd’的行
   :v/^dd/d                                        同上  (譯釋:v == g!,就是不匹配?。?/p>

   :g/str1/,/str2/d                                刪除所有第一個含str1到第一個含str2之間的行
:v/./.,/./-1join                                   壓縮空行
:g/^$/,/./-j                                       壓縮空行

    ndw 或 ndW                                刪除光標處開始及其后的 n-1 個字符。
    d0                                              刪至行首。
    d$                                              刪至行尾。
    ndd                                            刪除當前行及其后 n-1 行。
    x 或 X                                        刪除一個字符。
    Ctrl+u                                         刪除輸入方式下所輸入的文本。
    ^R                                             恢復u的操作
    J                                                把下一行合并到當前行尾
    V                                                       選擇一行
    ^V                                                     按下^V后即可進行矩形的選擇了
    aw                                                     選擇單詞
    iw                                              內部單詞(無空格)
    as                                              選擇句子
    is                                                       選擇句子(無空格)
    ap                                                     選擇段落
    ip                                                      選擇段落(無空格)
    D                                                       刪除到行尾
    x,y                                                     刪除與復制包含高亮區

   dl                                                       刪除當前字符(與x命令功能相同)
   d0                                                      刪除到某一行的開始位置
   d^                                                     刪除到某一行的第一個字符位置(不包括空格或TAB字符)
   dw                                                     刪除到某個單詞的結尾位置
   d3w                                                   刪除到第三個單詞的結尾位置
   db                                                     刪除到某個單詞的開始位置
   dW                                                   刪除到某個以空格作為分隔符的單詞的結尾位置
   dB                                                     刪除到某個以空格作為分隔符的單詞的開始位置
   d7B                                                    刪除到前面7個以空格作為分隔符的單詞的開始位置
   d)                                                    刪除到某個語句的結尾位置
   d4)                                                  刪除到第四個語句的結尾位置
   d(                                                    刪除到某個語句的開始位置
   d)                                                     刪除到某個段落的結尾位置
   d{                                                     刪除到某個段落的開始位置
   d7{                                                   刪除到當前段落起始位置之前的第7個段落位置
   dd                                                    刪除當前行
   d/text                                               刪除從文本中出現“text”中所指定字樣的位置,
                                                   一直向前直到下一個該字樣所出現的位置(但不包括該字樣)之間的內容
   dfc                   刪除從文本中出現字符“c”的位置,一直向前直到下一個該字符所出現的位置(包括該字符)之間的內容
   dtc                                                  刪除當前行直到下一個字符“c”所出現位置之間的內容
   D                                                    刪除到某一行的結尾
   d$                                                   刪除到某一行的結尾
   5dd                                                 刪除從當前行所開始的5行內容
   dL                                                   刪除直到屏幕上最后一行的內容
   dH                                                  刪除直到屏幕上第一行的內容
   dG                                                  刪除直到工作緩存區結尾的內容
   d1G                                                刪除直到工作緩存區開始的內容
修改命令操作
   r                                                    更改當前字符
   cw                                                 修改到某個單詞的結尾位置
   c3w                                               修改到第三個單詞的結尾位置
   cb                                                  修改到某個單詞的開始位置
   cW                                                 修改到某個以空格作為分隔符的單詞的結尾位置
   cB                                                   修改到某個以空格作為分隔符的單詞的開始位置
   c7B                                                 修改到前面7個以空格作為分隔符的單詞的開始位置
   c0                                                  修改到某行的結尾位置
   c}                                                 修改到某個語句的結尾位置
   c4}                                               修改到第四個語句的結尾位置
   c(                                                 修改到某個語句的開始位置
   c)                                                  修改到某個段落的結尾位置
   c{                                                  修改到某個段落的開始位置
   c7{                                                修改到當前段落起始位置之前的第7個段落位置
   ctc                                                 修改當前行直到下一個字符c所出現位置之間的內容
   C                                                    修改到某一行的結尾
   cc                                                  修改當前行
   5cc                                                修改從當前行所開始的5行內容
   .                                                    重復上一次修改!
13}Set 選項設置
set all                                                    列出所有選項設置情況。
set term                                                設置終端類型。
set ignorecase                                        在搜索中忽略大小寫。
set list                                                   顯示制表位(^I)和行尾標志($)。
set number                                            顯示行號。
set showmode                                        示用戶處在什么模式下
set report                                              顯示由面向行的命令修改國的行數目。
set terse                                                顯示簡短的警告信息。
set warn                                                在轉到別的文件時,若沒有保存當前文件則顯示 No write 信息。
set autowrite                                          在“:n”和“:!”命令之前都自動保存文件
set nomagic                                            允許在搜索模式中,使用前面不帶\的特殊字符。
set nowrapscan                                       禁止 vi 在搜索到達文件兩端時,又從另一端開始。
set mesg                                                允許 vi 顯示其他用戶用 write 寫到自己終端上的信息。

autoindent (ai)        noai                       使新行自動縮進,和上(下)行的位置對齊
autoprint (ap)         ap                            每條命令之后都顯示出修改之處
autowrite (aw)        noaw                      在:n,:!命令之前都自動保存文件
beautify (bf)           nobf                      在輸入的時候忽略所有的控制字符(除了制表鍵(tab),換行(newline),進紙(formfeed))
directory= (dir=)     /tmp                                   存放緩沖區的目錄名
edcompatible          noedcompatible                    在替換的時候使用類ed的用法
errorbells (eb)          errorbells                            出錯的時候響鈴
exrc (ex)                 noexrc                                允許在主目錄(home)外面之外放.exrc文件
hardtabs= (ht=)       8                                      設置硬制表的邊界
ignore case (ic)         noic                                  正規式里忽略大小寫
lisp                          nolisp                                打開lisp模式
list                          nolist                                 顯示所有的制表鍵和行的結尾
magic                      agic                                   可以使用更多的正規表達式
mesg                       mesg                                允許向終端發送消息
number (nu)            nonumber                          顯示行號
open                       open                                允許開放和可視化
optimize (opt)           optimize                            優化吞吐量,打印時不發回車
paragraphs= (para=)   IPLPPPQPPLIbp                    設置{ & }的分界符
prompt                     prompt                             命令模式下的輸入給出:的提示符
readonly (ro)              noro                               除非用!號否則不準保存文件
redraw                      noredraw                         當編輯的時候重繪屏幕
remap                       remap                              允許宏指向其他的宏
report=                     5                                    如果影響的行數>;這個數的話就報告
scroll                        1/2 window                       下卷屏幕時滾動屏幕的數目, 同樣這也是z命令輸出的行數(z 輸出2倍滾屏的大小)
sections=                 SHNHH HU                         定義節的末尾(當使用命令[[ 和 ]] 時)
shell= (sh=)             /bin/sh                       缺省的SHELL,如果設置了環境變量SHELL的話,就使用變量
shiftwidth= (sw=)     8                                      當使用移動(shift)命令時移動的字符數
showmatch (sm)        nosm                                顯示{, }, (, ), [, 或者 ] 的匹配情況
showmode                noshowmode                     顯示你處在什么模式下面
slowopen (slow)                                                插入之后不要立刻更新顯示
tabstop= (ts=)         8                                       設置制表停止位(tabstop)的長度
taglength= (tl=)       0                                       重要標記的字符個數(0表示所有的字符)
tags=                      tag, /usr/lib/tags                  定義包含標記的文件路徑
term=                                                              設置終端類型
terse                       noterse                               顯示簡短的錯誤信息
timeout (to)             timeout                               一秒鐘后鍵盤映射超時
ttytype=                                                           設置終端類型
warn                        warn                                  顯示”No write since last change”信息
window= (w=)                                                  可視模式下窗口的行數
wrapmargin= (wm=)  0                               右邊距,大于0的話最右邊的單詞將折行,留出n個空白位置
wrapscan (ws)           ws                                     查找到文件尾后再重頭開始
writeany (wa)            nowa                                 可以保存到任意一個文件去

14}特殊字符
^                                            匹配字符串位于行首。
$                                            匹配字符串位于行尾。
.                                             用在模式串中,表示任何單個字符。
                                              在命令模式下,重復上次的命令。
*                                            在模式串中,表示其前字符可出現任意多次。
[]                                                   用在模式串中,表示指定方位內字符,其中可用-表示一個字
                                              符范圍,用^表示不在某個范圍內的字符。
ESC                                                從插入狀態轉換到命令狀態
^[                                                  功能同 ESC

15]大小寫轉換
guu                                                行小寫
gUU                                               行大寫
g~~                                               行翻轉(當然指大小寫啦)

guw                                              字小寫(狹義字) 譯注:建議對比iw
gUw                                              字大寫(狹義字)
g~w                                              字翻轉(狹義字)

vEU                                               字大寫(廣義字)
vE~                                               字翻轉(廣義字)

ggguG                                           把整個文章全部小寫(ft!bt!)

16) 跳轉足跡’.                                                  跳到最后修改的那一行 (超級有用)(ft,怎么又是這個評價)
`.                                                 不僅跳到最后修改的那一行,還要定位到修改點
;                                          依次沿著你的跳轉記錄向回跳 (從最近的一次開始)
;                                           依次沿著你的跳轉記錄向前跳
:ju(mps)                                        列出你跳轉的足跡

17)命令歷史
:history                                         列出歷史命令記錄
:his c                                            命令行命令歷史
:his s                                            搜索命令歷史
q/                                                搜索命令歷史的窗口
q                                                 命令行命令歷史的窗口
:;                                         歷史命令記錄的窗口

18]寄存器
# 列出寄存器(Registers)
:reg                                            顯示所有當前的registers
“1p                     表示引用register,1表示一個名字叫做1的register,p就是粘貼(paste)命令

譯釋:
“也用來定義register
先輸入 “,表示定義register
然后輸入名字,如0~9,a~z
然后執行刪除或復制命令,如dd或y,
或者是visual模式下的d(刪除選中的部分)或y(復制選中的部分)
則被刪除或復制的部分就被存入了這個命名的register

觀察:一個特殊的register, “” ,里面存儲了一個匿名的刪除/復制
在你執行dd或y的時候,被作用的部分被存到了”"中

19}命令行
“ayy@a                                        把當前行作為一個Vim命令來執行
                                  譯釋:”ayy 是定義當前行到register a,然后@a是執行register a中存儲的指令

10yy                                             copy  當前行以下10行

11} 排序
:%!sort -u                                   使用sort程序排序整個文件(用結果重寫文件)
!1) sort -u                                   排序當前段落 (只能在normal模式下使用!!)
:.,+5!sort                                    排序當前行及以下5行

20)  列操作

:%s= [^ ]+$=&&=                    復制最后一列
:%s= f+$=&&=                        一樣的功能
:%s= S+$=&&                          ft,還是一樣

:s/(.*).*)/2″1/                         顛倒用:分割的兩個字段

:%sw+s+){2})str1:1str2:        處理列,替換所有在第三列中的str1

:%sw+)(.*s+)(w+)$:321:        交換第一列和最后一列 (共4列)
·.vimrc

” Use Vim settings, rather then Vi settings (much better!).
set nocompatible

“c風格的縮進
:set expandtab   “不使用tab只使用空格
:set cindent shiftwidth=4

“自動縮進
:set ai
“語法
“:set  filetype=java
:set  syntax=java

“鍵入)、] 、},顯示(、[、{
:set showmatch

“手工定義折疊
:set  foldmethod=manual
“標簽文件位置
set tags=/usr/share/vim/vim63/funcs.tags  

“在插入模式下通過按[Ctrl]N自動地將任何類、方法或者字段名補齊
set complete+=k

” 不要用聲音煩我!
set visualbell

“歷史
:set history=50

“顯示行列位置
:set ruler

“設置字符編碼
set fileencodings=gb2312
“set encoding=euc-cn

“設置ruler
set ruler

“顯示當前命令
set showcmd

“incsearch
set incsearch

” allow backspacing over everything in insert mode
set backspace=indent,eol,start

“自動檢測文件類型
:filetype on
“”"”"”"”"”"快捷鍵定義”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”
if version >;= 600

  “查找
  “map  ;  /
 
  “查找函數原型
  map  ;  yiw/^\(\s\)*\(sub\)\\|\(function\)\(\s\)*;”;

  “繼續查找
  map  ;  n
  “使用;顯示類、屬性、方法列表
  map  ;  :Tlist;

  ” 用compiler定義的編譯程序來編譯當前程序
  “map ; :make  “%”;

  “使用;來進行php語法檢測
  map  ;  :!php  -l “%” ;
 
  map  ;w   :call FormatText();
 
  “查找當前光標下的字
  map ; /;;;
endif
“”"”"”"”"”"::快捷鍵定義”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”

“”"”"”"”"”"格式化文件”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”
function   FormatText()
  :%s/\t/    /g     “把\t換成4個空格
  :%s/ *$//g        “去掉行尾空格

endfunction

“”"”"”"”"”"格式化文件”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”

 

“”"”"”"”"”顯示行尾的tab和多余空格”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”
set listchars=tab:>;-,trail:~
set list
syntax match Trail ” +$”
highlight def link Trail Todo

“”"”"”"”"”::顯示行尾的tab和多余空格”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”

function LastMod()
      if line(”$” >; 5
      let l = 5
        else
        let l = line(”$”
     endif
   exe “1,” . l . “/CnsProgCMTime/s/CnsProgCMTime .*/CnsProgCMTime   ” . strftime(”%Y-%m-%d %H:%M:%S”.”/e”
endfunction

“map ; :call LastMod();

“”"”"”"”"”"自動加注釋的*星號”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"
“使用如/* … */ 的注釋時,r在插入模式下回車時插入* ;
“o 在普通模式下,使用 “o” 或 “O” 時插入*
:set formatoptions=tcro

“”"”"”"”"”"::自動加注釋的*星號”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"”"

 

vi擴展的正則表達式

|                    指示交替,如home|house 指匹配home或house

()                   用于分組,如home|house可以寫為ho(me|use)
                     *可以用到()上(home|house)*  可以匹配home, homehouse,househome, homehousehomehouse

\(…\)             實際匹配的文本可以使用\1、\2等在替換命令的替換部分進行檢索

+                   可匹配正則表達式的一次或多次出現,既可以是單個字符也可以是()或\(…\)括起的內容,至少匹配一次
                     ho(use|me)+    指至少是house或home不允許是空

?                   指前面正則表達式的零次或一次出現,表示出現或未出現。如free?d  將匹配fred或freed除此不能匹配其他文本
{…}              定義區間表達式。區間表達式描述了表示重復次數的計數數字。 同\{…\}
{n}               (home|house){2} 只能匹配homehome, homehouse, househome, househouse
{n,}             
{n,m}
{,n}

編譯相關

·用編譯器來編譯 當前文件
:!perl -c  %
:!php -l   %                                   用php來檢查錯誤
:!php -q  %                                  用php來運行程序
·編譯當前程序為a.out并執行該./a.out
:!gcc   %   -o   a.out   &&   ./a.out
執行結果
    old umask is %#0
    new umask is %#0

·編譯錯誤信息
:cl!                                          列出所有錯誤信息的詳細列表

:cl                                                   列出當前條錯誤信息
:cn                                          列出下一條錯誤信息
:cp                                          列出上一條錯誤信息
:cnew                                     最新錯誤信息條數
:cold                                       舊的錯誤信息條數

:cwin 或  :copen                  打開錯誤信息窗口
:cclose                                關閉上面打開的信息窗口

 

自動補齊

CTRL-X CTRL-F         文件名
        CTRL-X CTRL-L         整行
        CTRL-X CTRL-D           宏定義 (并搜索所包含的文件)
        CTRL-X CTRL-I         當前文件以及所包含的文件
        CTRL-X CTRL-K        詞典文件內的單詞
        CTRL-X CTRL-T           近義詞詞典文件內的單詞
        CTRL-X CTRL-]            標記
        CTRL-X CTRL-V           Vim 命令行

 

C程序設計

gd                            反色顯示光標下局部標識符串的所有出現,并轉到第一次出現處。
gD                            反色顯示光標下全局標識符串的所有出現,并轉到第一次出現處。

————————————————————————————–

:checkpath                   列出所有include的頭文件
————————————————————————————–

[i                                  顯示函數定義
extern __mode_t umask (__mode_t __mask) __THROW;

————————————————————————————–

[+CTRL+i                    跳轉到[i所標識的函數定義處
————————————————————————————–[I                                  列出當前文件及包含文件內的含有當前字符的行
————————————————————————————–[d                                  顯示由#define所定義的標識符的定義語句

printf(|tom);
#define tom “yaoshuyin”
————————————————————————————–
CTRL+]                                跳轉到光標當前位置的標簽處 (例如:一個函數的定義)。
CTRL+T                                跳轉到執行 CTRL-] 命令前的地方。
:tselect                              從一連串匹配的標簽中選出一個。

[/                                    跳轉到注釋開始的位置。
]/                                    跳轉到注釋結束的位置。

—————————————————————-

[#                                    返回到未閉合的 #if, #ifdef, or #else 處。
]#                                    前進到未閉合的 #else 或 #endif 處。

[(                                    返回到未閉合的 ‘(’ 處。
))                                    前進到未閉合的 ‘]’ 處。

[{                                    跳轉到最近對應的 ‘{’ 處。
}}                                    跳轉到最近對應的 ‘]’ 處。
·字符集和進制轉換
ga                                   顯示光標處字符的ascii,hex,oct,…暈菜的一堆轉換

如 s 前按ga
;  115,  Hex 73,  Octal 163

列塊操作

;選中列塊
  I;;                 在塊的每一行首加上string
  A;;                 在塊的每一行尾加上string
  C;;                 修改選中的列塊(即刪除并輸入新內容 )
  c;;                 修改選中的列塊(即刪除并輸入新內容 )
  >;                                      左移Tab寬度

vimrc中的文件名及路徑

如在D:\cnscnprogrames\Vim\vim63\下編輯 vi  tmp\file.java  (即D:\cnscnprogrames\Vim\vim63\tmp\file.java)
expand(”%”                                #tmp\file.java
expand(”%:p”                             #D:\cnscnprogrames\Vim\vim63\tmp\file.java
expand(”%:h”                             #tmp
expand(”%:t”                           #file.java
expand(”%:e”                             #java   
expand(”%:t:r”                         #file
expand(”%:r”)                             #tmp\file

 
·一個簡單編譯器(編譯、執行常見程序)
#vi ~/.vimrc

“定義F9來編譯、執行程序
map  ;  :call ProgCompileRun() ;

func ProgCompileRun()
    “save the current file first
    :w
 
   “取得程序后綴名 如java  php  pl  py
   let ext = expand(”%:e”)
 
   “編譯Java
   if ext == “java”
       if expand(”%:h”) != “”
          :!javac  % && java  -classpath  expand(”%:h”)  %:t:r
       else
          :!javac  % && java  %:t:r
       endif
       return
    endif

    “執行php
    if ext == “php”
       :!php %
       return
    endif

    “編譯執行c/cc/cpp
    if ext == “c” || ext == “cc”  || ext == “cpp”
         :!gcc   %   -o   a.out   &&   ./a.out
         return
    endif

    “編譯執行perl
    if ext == “pl”
        :!perl  -c %
        return
    endif

    “編譯執行python
    if ext == “py”
        :!python   %
        return
    endif

endfunc

 

posted on 2008-03-11 14:14 megax 閱讀(420) 評論(0)  編輯 收藏 引用 所屬分類: 轉貼收集
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            在线看国产一区| 亚洲美女视频在线免费观看| 欧美日韩高清在线一区| 欧美色123| 韩日成人av| 亚洲精品在线视频| 香蕉久久夜色精品国产| 亚洲欧美综合精品久久成人| 久久在线观看视频| 欧美日韩中文在线| 亚洲欧美日韩精品在线| 久久综合影视| 99视频精品全国免费| 久久精品成人欧美大片古装| 欧美全黄视频| 在线日韩视频| 日韩视频一区二区在线观看| 久久精品国产久精国产思思| 91久久精品国产91久久性色| 欧美综合国产精品久久丁香| 亚洲精品在线二区| 欧美1区2区视频| 激情久久五月天| 久久九九久精品国产免费直播| 最新国产成人在线观看| 亚洲欧美国产视频| 久久久精品日韩| 含羞草久久爱69一区| 亚洲国产精品激情在线观看| 免费久久99精品国产自在现线 | 在线视频亚洲| 欧美理论在线播放| 久久久久在线| 欧美一级在线亚洲天堂| 国产一区导航| 欧美一区二区在线看| 亚洲午夜精品久久| 国产精品国产三级国产专播精品人 | 欧美专区日韩专区| 欧美精品一二三| 一本在线高清不卡dvd| 亚洲欧洲一区二区在线播放| 国产一区二区黄色| 亚洲特黄一级片| 亚洲免费av网站| 美女主播一区| 一区二区日韩| 夜夜狂射影院欧美极品| 亚洲国产精品久久久久婷婷老年| 欧美激情第4页| 欧美久久影院| 欧美福利视频在线| 欧美日韩亚洲国产一区| 亚洲免费在线精品一区| 欧美精品免费在线观看| 欧美成人a视频| 欧美小视频在线观看| 久久精品日韩欧美| 蘑菇福利视频一区播放| 免费久久精品视频| 国产精品第13页| 亚洲字幕一区二区| 欧美日韩一区二区免费在线观看| 欧美亚洲一区二区在线| 久久精品欧美日韩| 香蕉久久夜色精品| 国产精品日韩欧美一区| 久久久午夜电影| 国内精品久久久久影院优| 亚洲高清不卡一区| 国产精品久久77777| 一区二区国产日产| 亚洲国产高清一区二区三区| 久久精品国产96久久久香蕉| 狼狼综合久久久久综合网| 一区国产精品| 欧美高清在线精品一区| 久久激情一区| 激情视频一区二区| 免费国产一区二区| 亚洲免费观看| 久久激情中文| 亚洲国产精品成人久久综合一区 | 亚洲精品影视| 亚洲欧美一区二区视频| 女女同性女同一区二区三区91| 欧美国产第一页| 亚洲午夜国产一区99re久久| 久久天堂成人| 久久福利资源站| 最近中文字幕日韩精品 | 一本久道久久综合婷婷鲸鱼| 欧美日韩在线一区二区| 亚洲免费网址| 午夜日韩在线观看| 亚洲成人在线免费| 欧美日韩在线一区二区| 欧美专区在线播放| 午夜在线不卡| 国产亚洲一区二区三区在线观看| 久久野战av| 亚洲午夜在线观看视频在线| 欧美成人亚洲| 久久国产精品久久w女人spa| 亚洲人成亚洲人成在线观看| 国产精品资源| 亚洲欧美日韩爽爽影院| 欧美国产在线视频| 久久精品国产清自在天天线| 99热免费精品| 欧美视频中文字幕| 玖玖玖免费嫩草在线影院一区| 国产精品99久久99久久久二8| 欧美阿v一级看视频| 午夜精品在线| 制服丝袜激情欧洲亚洲| 国产精品99免费看| 欧美电影在线播放| 亚洲精品日韩久久| 免费一级欧美在线大片| 欧美怡红院视频一区二区三区| 日韩一级在线观看| 亚洲激情成人在线| 欧美激情a∨在线视频播放| 欧美一级艳片视频免费观看| 亚洲最黄网站| 99re6热只有精品免费观看| 国内精品视频久久| 国产一区二区三区高清播放| 国产精品va在线播放| 欧美日韩不卡| 欧美破处大片在线视频| 欧美激情免费在线| 欧美精品国产精品日韩精品| 久久先锋资源| 麻豆精品视频在线| 免费观看成人www动漫视频| 久久精品五月婷婷| 久久久国产91| 开元免费观看欧美电视剧网站| 久久精选视频| 久久久视频精品| 99re在线精品| 中国成人黄色视屏| 亚洲图片欧洲图片av| 亚洲一区二区三区三| 欧美激情一区三区| 欧美激情区在线播放| 欧美成人69av| 亚洲日韩中文字幕在线播放| 久久国产精品亚洲77777| 久久成人精品| 久久网站免费| 午夜视黄欧洲亚洲| 久久成人精品一区二区三区| 久久精品国产成人| 免费成人激情视频| 91久久精品网| 亚洲特黄一级片| 欧美一级视频| 欧美成人免费在线视频| 欧美日韩国产天堂| 国产免费成人av| 亚洲国产高清一区二区三区| 一区二区三区精品| 久久精品国产在热久久| 蜜臀av国产精品久久久久| 亚洲国产精品小视频| 一区二区精品在线| 欧美中文在线免费| 欧美成人免费观看| 国产精品欧美日韩| 在线日韩精品视频| 午夜国产一区| 欧美电影资源| 中文av一区二区| 久久在线观看视频| 国产精品麻豆va在线播放| 欧美日韩不卡一区| 国语自产在线不卡| 中国女人久久久| 噜噜噜躁狠狠躁狠狠精品视频 | 欧美专区日韩专区| 欧美日韩在线综合| 亚洲国产精彩中文乱码av在线播放| 亚洲视频综合在线| 欧美粗暴jizz性欧美20| 亚洲欧美日本国产有色| 欧美成人免费播放| 国际精品欧美精品| 亚洲欧美在线一区二区| 亚洲福利视频免费观看| 性视频1819p久久| 欧美日韩一区二区三区视频 | 欧美特黄一级| av成人老司机| 亚洲国产合集| 老司机精品视频网站| 国产亚洲一区二区三区在线播放 | 国内精品99|