成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

使用技巧:Vim 的縱向編輯模式

運維 系統運維
Vim 的縱向編輯模式功能強大。本文介紹了 Vim 縱向編輯模式并結合 VisIncr 這個插件在開發測試場景中的應用,讓讀者更直觀了解 Vim 的縱向編輯模式這一功能。

 Vim 的縱向編輯模式功能強大。本文介紹了 Vim 縱向編輯模式并結合 VisIncr 這個插件在開發測試場景中的應用,讓讀者更直觀了解 Vim 的縱向編輯模式這一功能。

開始之前

人類大腦對文字的處理是平面式的,所以我們瀏覽文章、查找資料或者重構代碼,要么是橫向讀,要么是縱向讀,要么使用搜索功能,將文字作為一個平面整體。而在編輯文字、編寫代碼的時候則不是橫向就是縱向。常規文本編輯器都是橫向編輯,而縱向編輯也常被作為特色功能。比如 Vim、EditPlus、UltraEdit 這些編輯器都有縱向編輯模式,或者稱為列模式。像日常文字處理工具 MicroSoft Word、OpenOffice Writer 也可以通過按下功能鍵 ALT,實現縱向選中文本,然后對文本進行操作??v向編輯不僅是編輯器的一種功能,更是人們思考問題的一種方式,項目符號、段落編號,都是縱向編輯的體現。

Vim 的縱向編輯模式啟動方便,使用靈活,還可以配合上插件實現很實用的高級功能。

啟動方法

在 Vim 命令模式下,移動游標定位于某一個位置,鍵入 ctrl-v后狀態欄上出現 VISUAL BLOCK 字樣,即進入縱向編輯模式。移動游標以按需選擇待編輯的區域。注意:在 Windows 版本的 Vim 中,鍵組合 ctrl-v通常被映射為文本粘貼,所以 Window 版的 Vim 的縱向編輯模式由 ctrl-q啟動。當然靈活的 Vim 也可以由用戶自行定義組合鍵。

示例 1:縱向編輯在批量修改代碼的應用演示

將數列:

 

10.1.5.214

10.1.5.212

10.1.5.210

 

編輯成序列:

 

ping -c 4 10.5.5.214 >> result0

ping -c 4 10.5.5.212 >> result0

ping -c 4 10.5.5.210 >> result0

 

這是一個將 IP 數列修改成可執行的 ping 命令序列的過程。

***步:修改

將 IP 數列中第二段所有數字“1” 修改為“5”:

將游標定位***個行 IP 地址第二段的“1”

ctrl-v 進入縱向編輯模式

G 移動游標到***一行,可視塊覆蓋所要修改的列

r 進入修改模式

5 輸入數字“5”

ESC 退出縱向編輯模式,同時所有被選中的數字都被改成了“5”,并回到命令模式

結果如下:

 

10.5.5.214

10.5.5.212

10.5.5.210

 

第二步:前添加

在所有行之前添加“ping – c 4 ”:

將游標定位到***行***列

ctrl-v 進入縱向編輯模式

G 移動游標到***一行***列,可視塊覆蓋了***列

I 進入行首插入模式

ping -c 4 輸入所要求字符“ping – c 4 ”

ESC 退出縱向編輯模式的同時所有選中的字符前都添加了“ping – c 4 ”,回到命令模式

結果如下:

 

ping -c 4 10.5.5.214

ping -c 4 10.5.5.212

ping -c 4 10.5.5.210

 

第三步:后添加

在所有行之后添加“>> result0”:

將游標定位到***行***一列

ctrl-v 進入縱向編輯模式

G 移動游標到***一行***一列,VISUAL   BLOCK  覆蓋了***一列

A 進入行尾插入模式

>> result 輸入所要求字符“>> result0”

ESC 退出縱向編輯模式的同時所有選中的字符后都添加了“ >> result0”,回到命令模式

結果如下:

 

ping -c 4 10.5.5.214 >> result0

ping -c 4 10.5.5.212 >> result0

ping -c 4 10.5.5.210 >> result0

 

以上三個步驟有一個共同特點,就是都縱向為編輯方向。以上由三行代碼為例的方法同樣也可以適用于更多的行。

VisIncr 安裝與操作

以上例子中所演示的對代碼的縱向編輯,通過一般的代碼重構功能或者結合正則表達式的查找替換也可以實現。然而 Vim 的縱向編輯模式還可以通過插件 VisIncr 的擴展,實現更豐富的功能,如縱向的生成數列。

從 Vim 的官方網站上搜索找到 VisIncr 插件的安裝文件,并下載到 Vim 工作目錄。執行以下命令即可安裝該插件:

 

vim visincr.vba.gz

:so %

:q

 

操作方法以示例 1 的代碼為例:

使用 ctrl-v和移動光標選擇***都為數字“0”的一列

:鍵入冒號觸發 Vim 進入命令行模式

:I以***個數字為出發點,縱向生成增量數列,幅度為 1

ENTER 鍵入駕車鍵執行命令

結果如下:

 

ping -c 4 10.5.5.214 >> result0

ping -c 4 10.5.5.212 >> result1

ping -c 4 10.5.5.210 >> result2

 

示例 2:VisIncr 在生成測試數據的應用演示

在應用程序開發過程中經常要生成一個簡單有規律的測試數據。比如對一張表:

testTable (”ipaddr” ,”filename”, ”owner”)

生成如下 SQL 語句:

 

insert into test values("10.5.5.214”,”result0”,”testa”);

insert into test values(”10.5.5.212”,”result1”,”testb”);

insert into test values(”10.5.5.210”,”result2”,”testc”);

 

這個縱向有規律的語句序列,可以借助 VinIncr 應用縱向編輯功能來構造。

***步:準備

打開一個新的 Vim 編輯頁面,在命令模式下先輸入一個“3”,然后鍵入“i”進入編輯模式。數字“3”代表本次輸入的內容會重復輸 3 遍。

在 VIM 中先輸入***行:

insert into test values(”10.5.5.214”,”result0”,”testa”);

以回車結束行輸入并新開一行,按 ESC 鍵退出編輯模式。

如果如下:

 

insert into test values(”10.5.5.214”,”result0”,”testa”);

insert into test values(”10.5.5.214”,”result0”,”testa”);

insert into test values(”10.5.5.214”,”result0”,”testa”);

 

第二步:構造遞減數列

對于 ipaddr 列,使用 ctrl-v和移動光標選擇 IP 地址***一段以 2 為幅度遞減的部分:

: 鍵入冒號觸發 Vim 進入命令行模式

:I - 2 以***個數字為出發點,縱向生成遞減數列,幅度為 2

ENTER 鍵入駕車鍵執行命令

結果如下:

 

insert into test values(”10.5.5.214”,”result0”,”testa”);

insert into test values(”10.5.5.212”,”result0”,”testa”);

insert into test values(”10.5.5.210”,”result0”,”testa”);

 

第三步:構造遞增數列

對于 filename 列,使用上一節介紹的方式,結果如下:

 

insert into test values(”10.5.5.214”,”result0”,”testa”);

insert into test values(”10.5.5.212”,”result1”,”testa”);

insert into test values(”10.5.5.210”,”result2”,”testa”);

 

第四步:構造字母遞增數列

對于 owner 列,使用 ctrl-v和移動光標選擇英文字母將要遞增的部分。

: 鍵入冒號觸發 Vim 進入命令行模式

:IA 以***個字母為出發點,縱向生成按字母表排序的序列

ENTER 鍵入回車鍵執行命令

結果如下:

 

insert into test values(”10.5.5.214”,”result0”,”testa”);

insert into test values(”10.5.5.212”,”result1”,”testb”);

insert into test values(”10.5.5.210”,”result2”,”testc”);

 

以上步驟即演示了借助 Vim 插件 VisIncr 對代碼的縱向編輯,生成在縱向有邏輯規律的數列。

總結

Vim 不僅是一個編輯工具還是一套思考方法,Vim 有很多引導思維方向的技巧,讓 Vim 在這個各種編輯器層出不窮的時候歷久彌新。本文從縱向編輯為切入點,結合 VisIncr 演示了開發、測試過程中可以使用的實例。

原文鏈接:http://www.ibm.com/developerworks/cn/linux/l-cn-vimcolumn/index.html?ca=drs

【編輯推薦】

  1. Emacs和Vim:神的編輯器和編輯器之神
  2. 推薦學習的vim實用技巧
  3. 有關vim編輯器使用心得的十個分享
責任編輯:黃丹 來源: IBMDW
相關推薦

2022-11-04 15:56:41

2017-03-09 11:45:16

LinuxVim編輯器

2009-07-15 09:09:45

Vim編輯器使用Vim備份

2018-05-11 14:59:21

LinuxVim編輯器

2022-08-28 23:51:04

編輯器vim代碼

2015-08-04 10:51:26

vim效率技巧

2010-08-18 09:19:34

Vim編輯器Vim 7.3

2019-08-30 14:25:03

Vim命令Linux

2017-03-13 13:32:39

LinuxVim技巧

2025-03-12 10:05:01

運維Vim編輯

2018-01-25 18:30:05

編輯器ViVim

2018-02-09 09:58:41

Linux編輯器Vi

2022-06-12 16:05:22

vimLinux

2018-09-25 09:25:11

Vim編輯器命令

2009-07-29 17:49:05

ibmdwVim

2010-10-08 15:44:17

vim

2020-08-31 11:40:54

VimLinux字符

2020-10-14 14:00:39

VIM編輯器

2010-09-25 10:38:20

vim編輯器

2011-01-10 16:17:49

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 韩国av影院 | 亚洲精品二区 | 亚洲日韩欧美一区二区在线 | 国内久久精品 | 国产成人精品一区二区三区网站观看 | 日韩at | 最新国产精品视频 | 欧美成人aaa级毛片在线视频 | 91福利影院| 91精品国产91久久久久久吃药 | 国产99在线 | 欧美 | 九九久久久久久 | 久久久噜噜噜www成人网 | 国产蜜臀| 国产一区三区视频 | 国产午夜精品一区二区三区嫩草 | 阿v视频在线观看 | 国产精品久久久久久52avav | 免费精品 | 91精品国产91久久久久久最新 | 午夜精品在线观看 | 看片地址 | 淫片一级国产 | 国产在线观看网站 | 日韩精品久久久久久 | 精品一区二区三区中文字幕 | 欧美日韩在线一区二区三区 | 日韩一区二区三区四区五区六区 | 精品一区二区久久久久久久网站 | 亚洲三级av | 污视频免费在线观看 | 久草电影网 | 四虎永久免费黄色影片 | 久久一及片 | 亚洲成人一级片 | 久草视频网站 | 国产不卡一区 | 午夜91| 亚洲v日韩v综合v精品v | 成人免费在线视频 | 成人免费视频网站 |