亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? usr_29.cnx

?? Vim 中文文檔
?? CNX
?? 第 1 頁 / 共 2 頁
字號(hào):
*usr_29.txt*	For Vim version 6.3.  最近更新:2004年6月		     VIM 用戶手冊(cè) - by Bram Moolenaar		   (譯者:wandys  http://vimcdoc.sf.net)			    在代碼間移動(dòng)Vim 的創(chuàng)造者是一名計(jì)算機(jī)程序員,因此這就不奇怪 Vim 中有許多幫助編寫程序的功能:跳轉(zhuǎn)到標(biāo)識(shí)符被定義和使用的地方;在另一個(gè)窗口中預(yù)覽有關(guān)的聲明等等。在下一章中還會(huì)介紹更多的功能。|29.1|	使用標(biāo)簽|29.2|	預(yù)覽窗口|29.3|	在代碼間移動(dòng)|29.4|	查找全局標(biāo)識(shí)符|29.5|	查找局部標(biāo)識(shí)符     下一章:|usr_30.txt|  編輯程序     前一章:|usr_28.txt|  折疊       目錄:|usr_toc.txt|==============================================================================*29.1*	使用標(biāo)簽什么是標(biāo)簽?標(biāo)簽就是一個(gè)標(biāo)識(shí)符被定義的地方。一個(gè)例子就是 C 或者 C++ 程序中的函數(shù)定義。標(biāo)簽列表可以保存在一個(gè)標(biāo)簽文件中。Vim 可以通過它來從任何地方跳轉(zhuǎn)到該標(biāo)簽,也就是一個(gè)標(biāo)識(shí)符被定義的地方。   在當(dāng)前目錄下為所有的 C 文件生成標(biāo)簽文件,使用下面的這個(gè)命令: >	ctags *.c"ctags" 是一個(gè)獨(dú)立的程序。大多數(shù) Unix 系統(tǒng)上都已經(jīng)安裝了它。如果你還沒有安裝,可以在這里找到 "Exuberant ctags":	http://ctags.sf.net ~現(xiàn)在你可以使用下面的命令跳轉(zhuǎn)到一個(gè)函數(shù)定義的地方: >	:tag startlist這個(gè)命令會(huì)找到函數(shù) "startlist",即使該函數(shù)是在另一個(gè)文件中。   CTRL-] 命令會(huì)跳轉(zhuǎn)到當(dāng)前光標(biāo)下單詞的標(biāo)簽。這樣瀏覽毫無頭緒的 C 代碼會(huì)變得更容些易。舉個(gè)例子,假設(shè)你在函數(shù) "write_block" 中。你可以看到它調(diào)用了函數(shù) "write_line"。但 "write_line" 做了什么呢?將光標(biāo)置于調(diào)用 "write_line" 的地方然后按 CTRL-],你就跳轉(zhuǎn)到了這個(gè)函數(shù)的定義的地方了。   "write_line" 函數(shù)調(diào)用了 "write_char"。你需要知道它做了什么。將光標(biāo)定位到調(diào)用 "write_char" 的地方然后按 CTRL-],你就到了定義"write_char" 的地方。	+-------------------------------------+	|void write_block(char **s; int cnt)  |	|{				      |	|   int i;			      |	|   for (i = 0; i < cnt; ++i)	      |	|      write_line(s[i]);	      |	|}	    |			      |	+-----------|-------------------------+		    |	     CTRL-] |		    |	 +----------------------------+		    +--> |void write_line(char *s)    |			 |{			      |			 |   while (*s != 0)	      |			 |	write_char(*s++);     |			 |}	  |		      |			 +--------|-------------------+				  |			   CTRL-] |				  |    +------------------------------------+				  +--> |void write_char(char c)		    |				       |{				    |				       |    putchar((int)(unsigned char)c); |				       |}				    |				       +------------------------------------+":tags" 命令顯示你經(jīng)過的標(biāo)簽列表:	:tags	  # TO tag	   FROM line  in file/text ~	  1  1 write_line	   8  write_block.c ~	  2  1 write_char	   7  write_line.c ~	> ~>現(xiàn)在介紹向回跳轉(zhuǎn)。 CTRL-T 命令跳轉(zhuǎn)到上一個(gè)標(biāo)簽。在上例中,你會(huì)回到 "write_line"函數(shù)調(diào)用 "write_char" 的地方。   這個(gè)命令接受一個(gè)計(jì)數(shù)參數(shù),用來表示跳轉(zhuǎn)回去的標(biāo)簽個(gè)數(shù)。你已經(jīng)向前跳轉(zhuǎn),現(xiàn)在又跳轉(zhuǎn)了回去。現(xiàn)在我們?cè)僖淮蜗蚯疤D(zhuǎn)。下面的命令跳轉(zhuǎn)到標(biāo)簽列表中最上面的標(biāo)簽:>	:tag<你可以在前面加上要向前跳轉(zhuǎn)的標(biāo)簽個(gè)數(shù)。比如:":3tag"。 CTRL-T 同樣可以加上一個(gè)計(jì)數(shù)參數(shù)。   通過這些命令,你可以用 CTRL-] 延著調(diào)用樹向前跳轉(zhuǎn), 用 CTRL-T 向回跳轉(zhuǎn),用 ":tags" 命令顯示當(dāng)前位置。分 割 窗 口":tag" 命令會(huì)將當(dāng)前窗口的文件替換為包含新函數(shù)的文件。怎樣才能同時(shí)查看兩個(gè)文件呢?你可以使用 ":split" 命令將窗口分開然后再用 ":tag" 命令。Vim 有個(gè)縮寫命令可以做到這些: >	:stag tagname使用下面的命令可以分割當(dāng)前窗口并跳轉(zhuǎn)到光標(biāo)下的標(biāo)簽: >	CTRL-W ]如果指定了計(jì)數(shù)參數(shù),新窗口將包含指定的那么多行。多 個(gè) 標(biāo) 記 文 件如果在多個(gè)目錄中都有文件,你可以在每一個(gè)目錄下創(chuàng)建一個(gè)標(biāo)簽文件。Vim 只能跳轉(zhuǎn)到那個(gè)目錄下的標(biāo)簽。   通過設(shè)定 'tags' 選項(xiàng),你可以使用多個(gè)相關(guān)的標(biāo)簽文件。 比如: >	:set tags=./tags,./../tags,./*/tags這會(huì)使 Vim 找到當(dāng)前文件所在目錄及其父目錄和所有子目錄下的標(biāo)簽文件。   這已經(jīng)是不少的標(biāo)簽文件了,但也許仍不夠。比如,當(dāng)編輯 "~/proj/src" 目錄下的一個(gè)文件時(shí),你無法找到 "~/proj/sub/tags" 目錄下的標(biāo)簽文件。對(duì)這種情況,Vim提供了一個(gè)查找整個(gè)目錄樹下標(biāo)簽文件的方法,比如: >	:set tags=~/proj/**/tags單 個(gè) 標(biāo) 記 文 件當(dāng) Vim 在多個(gè)地方查找標(biāo)簽文件時(shí),你會(huì)聽到硬盤在格格作響。這樣會(huì)有點(diǎn)慢。在這種情況下,你最好將這些時(shí)間花在生成一個(gè)大的標(biāo)簽文件上。你可以要等一會(huì)兒。   這得借助上面提到的 "Exuberant ctags" 程序。它有一個(gè)選項(xiàng)可以搜索整個(gè)目錄樹: >	cd ~/proj	ctags -R .這樣做的好處是 "Exuberant ctags" 可以識(shí)別多種文件類型,它不僅適用于 C 和 C++程序,還適用于 Eiffel 甚至 Vim 腳本。請(qǐng)參考 ctags 文檔進(jìn)行調(diào)整所用參數(shù)。   現(xiàn)在你只需要告訴 Vim 你的標(biāo)簽文件在何處: >	:set tags=~/proj/tags多 個(gè) 匹 配當(dāng)一個(gè)函數(shù)(或類中的方法)被定義多次, ":tags" 命令會(huì)跳轉(zhuǎn)到第一處。如果在當(dāng)前文件中存在匹配,那它將會(huì)被首先使用。   你現(xiàn)在可以跳轉(zhuǎn)到同一個(gè)標(biāo)簽的其它匹配處: >	:tnext重復(fù)執(zhí)行這個(gè)命令可以找到更多的匹配。如果存在很多匹配,你可以選擇要跳轉(zhuǎn)到哪一個(gè): >	:tselect tagnameVim 會(huì)為你展示一個(gè)選擇列表:	  # pri kind tag	       file ~	  1 F	f    mch_init	       os_amiga.c ~		       mch_init() ~	  2 F	f    mch_init	       os_mac.c ~		       mch_init() ~	  3 F	f    mch_init	       os_msdos.c ~		       mch_init(void) ~	  4 F	f    mch_init	       os_riscos.c ~		       mch_init() ~	Enter nr of choice (<CR> to abort):  ~你現(xiàn)在可以輸入要跳轉(zhuǎn)到的匹配代號(hào)(在第一列)。其它列的信息可以讓你知道匹配在何處被定義。可以用這些命令在各匹配的標(biāo)簽間移動(dòng):	:tfirst			到第一個(gè)匹配	:[count]tprevious	向前 [count] 個(gè)匹配	:[count]tnext		向后 [count] 個(gè)匹配	:tlast			到最后一個(gè)匹配如果沒有指定,[count] 省缺為一。猜 測(cè) 標(biāo) 簽 名命令行補(bǔ)全是避免輸入長(zhǎng)標(biāo)簽名的好辦法。只需輸入開始的一部分然后按 <Tab>: >	:tag write_<Tab>你會(huì)得到第一個(gè)匹配。如果這不是你想要的,重復(fù)輸入 <Tab> 直到你找到正確的匹配。   有時(shí)你只知道一個(gè)函數(shù)名的一部分,或是你有很多以相同字符串開頭而結(jié)尾不同的標(biāo)記。這時(shí)你可以告訴 Vim 使用一個(gè)模式來查找標(biāo)簽。   假設(shè)你要跳轉(zhuǎn)到一個(gè)包含 "block" 的標(biāo)簽。首先輸入: >	:tag /block現(xiàn)在再利用命令行補(bǔ)全功能:輸入 <Tab>。Vim 會(huì)找到所有包含 "block" 的標(biāo)簽并使用第一個(gè)匹配。   標(biāo)簽名前面的 "/" 告訴 Vim 這不是一個(gè)確定的標(biāo)簽名而是一個(gè)模式。你可以利用有關(guān)查找模式的所有特性。舉個(gè)列子,假設(shè)你要選擇所有以 "write_" 開頭的標(biāo)簽: >	:tselect /^write_"^" 指定標(biāo)簽以 "write_" 開頭,否則在中間含有 "write_" 的標(biāo)簽名也會(huì)被找到。類似地,"$" 指定標(biāo)簽名結(jié)尾處的匹配。標(biāo) 簽 瀏 覽 器CTRL-] 可以讓你跳轉(zhuǎn)到光標(biāo)所在標(biāo)識(shí)符的定義處,因此你可以利用標(biāo)識(shí)符的列表來形成一個(gè)目錄。這里給出一個(gè)例子。   首先生成一個(gè)標(biāo)識(shí)符列表(需要 Exuberant ctags): >	ctags --c-types=f -f functions *.c現(xiàn)在打開 Vim 并在一個(gè)垂直分割窗口中編輯這個(gè)文件: >	vim	:vsplit functions窗口中包含一個(gè)所有函數(shù)的列表。其它的東西可以被忽略。用 ":setlocal ts=99" 命令使其顯示得更清晰些。   在這個(gè)窗口中,定義一個(gè) mapping: >	:nnoremap <buffer> <CR> 0ye<C-W>w:tag <C-R>"<CR>移動(dòng)光標(biāo)至要跳轉(zhuǎn)到函數(shù)的所在行,輸入 <Enter>。Vim 會(huì)在另一個(gè)窗口中跳轉(zhuǎn)到所選擇的函數(shù)定義處。相 關(guān) 雜 項(xiàng)你可以設(shè)定 'ignorecase' 選項(xiàng)來忽略標(biāo)簽名里的大小寫。'tagbsearch' 選項(xiàng)標(biāo)明標(biāo)簽文件是否經(jīng)過排序。省缺是假定為標(biāo)簽文件已排序,這樣會(huì)使查找更快,但如果文件沒有被排序是無法工作的。'taglength' 選項(xiàng)可用來告訴 Vim 一個(gè)標(biāo)簽的有效字符個(gè)數(shù)。當(dāng)你使用 SNiFF+ 程序時(shí),你可以利用 Vim 的有關(guān)接口 |sniff| 。SNiFF+ 是一個(gè)商業(yè)軟件。Cscope 是一個(gè)自由軟件。它不僅可以找到一個(gè)標(biāo)識(shí)符被聲明的地方,還可以找到標(biāo)識(shí)符被使用的地方。 請(qǐng)參考 |cscope|。==============================================================================*29.2*	預(yù)覽窗口當(dāng)編輯含有函數(shù)調(diào)用的代碼時(shí),你需要使用正確的調(diào)用參數(shù)。要獲知所要傳遞的值,你可以查看這個(gè)函數(shù)是如何定義的。標(biāo)簽機(jī)制對(duì)此十分適用。如果定義可在另一個(gè)窗口內(nèi)顯示那就更好了。對(duì)此我們可以利用預(yù)覽窗口。   打開一個(gè)預(yù)覽窗口來顯示函數(shù) "write_char": >	:ptag write_charVim 會(huì)打開一個(gè)窗口,跳轉(zhuǎn)到 "write_char" 標(biāo)簽。然后它會(huì)回到原來的位置。這樣你可以繼續(xù)輸入而不必使用 CTRL-W 命令。   如果函數(shù)名出現(xiàn)在文本中,你可以用下面的命令在預(yù)覽窗口中得到其定義: >	CTRL-W }有一個(gè)腳本可以自動(dòng)顯示光標(biāo)處的標(biāo)簽定義。請(qǐng)參考 |CursorHold-example| 。用下面的命令關(guān)閉預(yù)覽窗口: >	:pclose要在預(yù)覽窗口中編輯一個(gè)指定的文件,用 ":pedit" 。這在編輯頭文件時(shí)很有用,比如: >	:pedit defs.h最后, "psearch" 可用來查找當(dāng)前文件和任何包含文件中的單詞并在預(yù)覽窗口中顯示匹配。這在使用沒有標(biāo)簽文件的庫函數(shù)時(shí)十分有用。例如: >	:psearch popen

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人黄色电影在线| 亚洲成人1区2区| 高清国产午夜精品久久久久久| 欧美变态tickling挠脚心| 免费成人你懂的| 欧美变态tickling挠脚心| 国产一区二区三区蝌蚪| 久久夜色精品国产噜噜av | 一区二区三区毛片| 欧美日韩一卡二卡三卡| 日本不卡在线视频| 久久天天做天天爱综合色| 国产99久久久国产精品| 老司机午夜精品| 国产欧美一区二区精品性色超碰| 成人做爰69片免费看网站| 亚洲精选免费视频| 51精品秘密在线观看| 国产精品自产自拍| 亚洲精品福利视频网站| 日韩一级免费观看| 丁香婷婷综合网| 亚洲成人三级小说| 久久久av毛片精品| 欧美色涩在线第一页| 激情国产一区二区 | 99免费精品在线观看| 亚洲一区在线播放| 久久久久久久久久久电影| 波多野结衣中文字幕一区| 午夜国产精品一区| 国产精品午夜在线观看| 91麻豆精品国产自产在线 | 美女视频黄免费的久久| 国产精品久久久久久久蜜臀| 欧美人与性动xxxx| 成人av片在线观看| 美腿丝袜亚洲一区| 亚洲精品国久久99热| 日韩精品一区二区三区蜜臀| 91亚洲永久精品| 国产曰批免费观看久久久| 亚洲一区二区五区| 国产精品动漫网站| 26uuu色噜噜精品一区| 在线中文字幕一区二区| 国产夫妻精品视频| 青娱乐精品视频在线| ...av二区三区久久精品| 欧美一二三区精品| 在线国产亚洲欧美| 成人黄动漫网站免费app| 久久99精品久久久久久动态图 | 欧美不卡在线视频| 欧美在线观看一二区| 成人一区二区三区视频 | 亚洲成人三级小说| 亚洲欧美偷拍卡通变态| 久久久无码精品亚洲日韩按摩| 欧美一区日韩一区| 欧美精品三级在线观看| 一本色道久久综合狠狠躁的推荐 | 亚洲综合激情另类小说区| 久久精品人人爽人人爽| 欧美一区二区三区啪啪| 精品视频123区在线观看| 99久久婷婷国产综合精品| 国产美女久久久久| 国内一区二区在线| 久久99精品国产麻豆婷婷洗澡| 日韩二区三区在线观看| 夜夜亚洲天天久久| 一区二区三区四区高清精品免费观看| 国产精品午夜春色av| 日本一区二区成人| 秋霞国产午夜精品免费视频| 亚洲午夜一区二区| 一区二区三区国产精品| 亚洲人成精品久久久久久| 国产精品嫩草久久久久| 亚洲欧洲成人自拍| 最新高清无码专区| 亚洲免费在线视频一区 二区| 亚洲欧美中日韩| 亚洲人成小说网站色在线| 亚洲男女毛片无遮挡| 一区二区三区在线免费| 性做久久久久久免费观看| 日精品一区二区三区| 丝瓜av网站精品一区二区| 日韩电影在线一区二区三区| 免费在线欧美视频| 国产一区二区伦理| 国产成人精品影院| 色婷婷国产精品| 欧美日韩精品久久久| 日韩一区二区视频| 久久久噜噜噜久久中文字幕色伊伊 | 国产一区二区视频在线| 国产成人av福利| 99在线精品免费| 8v天堂国产在线一区二区| 日韩一区二区三区四区五区六区| 久久久久九九视频| 亚洲色图欧美偷拍| 日韩精品一级二级 | 韩国成人福利片在线播放| 成人h精品动漫一区二区三区| 色综合夜色一区| 91精品国产欧美日韩| 久久男人中文字幕资源站| 国产精品不卡视频| 日韩高清中文字幕一区| 夫妻av一区二区| 欧美日本国产一区| 欧美国产日本韩| 午夜欧美一区二区三区在线播放| 久久国产精品色| 91亚洲精品乱码久久久久久蜜桃| 欧美日韩国产高清一区二区三区 | 欧美午夜精品电影| 精品美女一区二区| 一区二区三区成人| 国产永久精品大片wwwapp| 欧美在线你懂的| 日本一区二区三区四区| 亚洲大片免费看| 暴力调教一区二区三区| 日韩欧美中文字幕一区| 亚洲免费观看高清在线观看| 激情欧美一区二区三区在线观看| 色美美综合视频| 国产日产亚洲精品系列| 免费在线观看成人| 欧美影院精品一区| 国产精品久久午夜夜伦鲁鲁| 奇米色777欧美一区二区| 精品国产伦一区二区三区免费| 亚洲免费成人av| 国产露脸91国语对白| 91精品视频网| 亚洲综合小说图片| 94-欧美-setu| 中文字幕第一页久久| 韩国成人福利片在线播放| 欧美精品粉嫩高潮一区二区| 亚洲四区在线观看| 粉嫩aⅴ一区二区三区四区五区| 欧美大白屁股肥臀xxxxxx| 亚洲午夜精品在线| 99r国产精品| 中文在线资源观看网站视频免费不卡| 久久 天天综合| 日韩一区二区三区高清免费看看| 亚洲精品中文字幕在线观看| 成人综合婷婷国产精品久久蜜臀 | 国产精品久久久久9999吃药| 激情综合亚洲精品| 欧美成人精品二区三区99精品| 丝瓜av网站精品一区二区| 欧美日韩高清一区二区三区| 亚洲精品国久久99热| 色综合天天狠狠| 中文字幕日韩一区| www.成人在线| 国产精品国产三级国产普通话99 | 亚洲成人免费视| 欧美日韩精品电影| 日韩成人一级大片| 日韩一区二区免费高清| 免费成人美女在线观看| 日韩一区二区三区电影| 久久成人免费网站| 久久精品亚洲麻豆av一区二区| 国产精品123| 国产精品不卡一区| 欧美性受xxxx| 日韩高清不卡一区| 日韩精品一区二区三区中文精品| 麻豆成人免费电影| 久久一二三国产| caoporm超碰国产精品| 亚洲免费观看高清完整版在线观看熊 | 欧美aa在线视频| 久久日韩精品一区二区五区| 国产黄人亚洲片| 中文字幕一区二区三区不卡| 成人黄色大片在线观看| 亚洲精品一二三| 91精品国产综合久久蜜臀| 国产一区二区三区美女| 亚洲欧洲国产专区| 欧美群妇大交群中文字幕| 精品一区二区三区在线观看国产| 久久久久9999亚洲精品| 91丨九色丨蝌蚪丨老版| 日本不卡一区二区| 国产日韩欧美不卡| 欧美三级电影网| 国产一区啦啦啦在线观看|