黄色网页视频 I 影音先锋日日狠狠久久 I 秋霞午夜毛片 I 秋霞一二三区 I 国产成人片无码视频 I 国产 精品 自在自线 I av免费观看网站 I 日本精品久久久久中文字幕5 I 91看视频 I 看全色黄大色黄女片18 I 精品不卡一区 I 亚洲最新精品 I 欧美 激情 在线 I 人妻少妇精品久久 I 国产99视频精品免费专区 I 欧美影院 I 欧美精品在欧美一区二区少妇 I av大片网站 I 国产精品黄色片 I 888久久 I 狠狠干最新 I 看看黄色一级片 I 黄色精品久久 I 三级av在线 I 69色综合 I 国产日韩欧美91 I 亚洲精品偷拍 I 激情小说亚洲图片 I 久久国产视频精品 I 国产综合精品一区二区三区 I 色婷婷国产 I 最新成人av在线 I 国产私拍精品 I 日韩成人影音 I 日日夜夜天天综合

學(xué)習(xí)vi編輯器7(上)

系統(tǒng) 2075 0

第七章 高級(jí)編輯

定制vi

vi的設(shè)置選項(xiàng)影響它的操作方式,可以在vi中使用ex的 :set 命令修改這些選項(xiàng). 而且,無(wú)論vi什么時(shí)候啟動(dòng),它都要讀取 主目錄 下的 .exrc文件 以獲得進(jìn)一步的操作指令。通過(guò)在文件中放置:set命令,就可以在使用vi的任何時(shí)候改變它的操作方式。vi首先執(zhí)行主目錄下的.exrc文件,然后才執(zhí)行當(dāng)前目錄下的.exrc文件,儲(chǔ)存在shell變量 EXINIT 中的任何命令都將在vi啟動(dòng)時(shí)執(zhí)行并覆蓋主目錄.exrc文件的設(shè)置。

:set命令

有兩種類型的選項(xiàng)可以使用:set命令進(jìn)行修改:不是開(kāi)就是關(guān)的 觸發(fā)選項(xiàng) 帶數(shù)字或字符串 值的選項(xiàng)(如頁(yè)邊距的位置和文件名)。開(kāi)啟觸發(fā)選項(xiàng)的命令為:

:set option

關(guān)閉觸發(fā)選項(xiàng)的命令為:

:set no option

:set ic ????指定模式搜索忽略大小寫(xiě)

:set noic ????搜索時(shí)不忽略大小寫(xiě)

:set window= n ????設(shè)置"窗口大小"就是active的buffer,在使用^F和^B的時(shí)候起效,向前(后)移動(dòng)max(n-2, 1)行

:set all 查看所有的選項(xiàng)設(shè)置情況,可以使用:h[elp] ' option '來(lái)尋求幫助

:set option ? ????查看命令當(dāng)前值

:set ????顯示在.exrc文件或當(dāng)前會(huì)話期間明確修改和設(shè)置過(guò)的選項(xiàng)

.exrc文件

控制vi環(huán)境的.exrc位于主目錄下,把將在使用vi或ex時(shí)產(chǎn)生影響的 set ab和map命令 輸入到該文件中,命令前面 不需要有冒號(hào)

替換環(huán)境

除了讀取主目錄下的.exrc文件外,還可以讓vi讀取當(dāng)前目錄下名為.exrc的文件

可以讀取另外名字的文件設(shè)置vi環(huán)境,例如

:so[urce] .progoptions

一些有用的選項(xiàng)

:set textwidth=10 ????讓每行的寬度不超過(guò)10,但是只能在空白處斷行

:set wrapmargin=10 ????讓每行到右邊界上的寬度不少于10,但是只能在空白處斷行

:set magic ????讓正則表達(dá)式中.和*有特殊意義 /\v 更厲害名曰:very magic就和egrep使用一樣了

:set wrapscan ????讓模式搜索的時(shí)候不要一圈一圈的找,找不到了就不要繞圈子

:set autoindent???? ????讓下一行和這一行的縮進(jìn)相同

:set tabstop=4???? ????設(shè)置Tab鍵在vim中移動(dòng)量為4,默認(rèn)為8

:set shiftwidth=4 ????設(shè)置自動(dòng)縮進(jìn)量為4,可以和tab不一樣,最好一樣

:set showmatch ????找到匹配的括號(hào),給出閃爍提示

:set list???? ????????列出tab鍵^I和回車鍵$

:set autowrite ????????在調(diào)用:n命令移動(dòng)到下個(gè)文件進(jìn)行編輯時(shí)和使用:!運(yùn)行shell命令之前將自動(dòng)寫(xiě)出已修改的緩沖區(qū)內(nèi)容

執(zhí)行UNIX命令

在vi中進(jìn)行編輯時(shí),可以顯示或讀取任何UNIX命令的執(zhí)行結(jié)果.感嘆號(hào)!可以指定vi創(chuàng)建一個(gè)shell并把它后面的內(nèi)容看成UNIX命令:

:! command

通過(guò) :sh命令 可以創(chuàng)建一個(gè)shell,跟 :!sh 命令創(chuàng)建的shell不一樣,后者功能很弱,不知道為什么會(huì)這樣

:r !date 可以將date得到的結(jié)果插入到當(dāng)前行以下

:r !sort phone 會(huì)讀取"phone"排序后的內(nèi)容

使用命令過(guò)濾文本

把( 緩沖區(qū)中 )文本塊作為標(biāo)準(zhǔn)輸入發(fā)送給UNIX命令,該命令的輸出將取代緩沖區(qū)中( 對(duì)應(yīng) )的文本.可以使用ex或vi的命令對(duì)文本進(jìn)行過(guò)濾,區(qū)別在于:ex使用 行地址 指示文本塊,vi使用 文本目標(biāo)(移動(dòng)命令) 指示文本塊.

使用ex過(guò)濾文本

:28,34!sort ????使用sort對(duì)第28行到第34行進(jìn)行過(guò)濾,并用sort的輸出取代這些行

使用vi過(guò)濾文本

在vi中,依次輸入 感嘆號(hào) 任何指示文本塊的 vi移動(dòng)鍵 和所要執(zhí)行的 UNIX命令 ,即可使用該UNIX命令對(duì)文本進(jìn)行過(guò)濾,例如:

!) command ???? 表示過(guò)濾該句

由于都是 行過(guò)濾 ,因此需要選擇的范圍 >1才會(huì)有效果,實(shí)際上都是將你選擇的范圍轉(zhuǎn)換為行后通過(guò) n !! command 命令轉(zhuǎn)發(fā)的

重復(fù)前面命令的語(yǔ)法是: !object!

學(xué)習(xí)vi編輯器7(上)


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論