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

Android 如何用 Vim 提高開發效率

新聞 Android
雖然筆者是Android開發工程師,但也接觸過各種IDE(不限于Android開發)。不同的IDE往往都有不同的快捷鍵,我們總不能對每種IDE都進行配置吧。實際上,現在大部分IDE都能通過插件的形式支持Vim了。

背景

雖然筆者是Android開發工程師,但也接觸過各種IDE(不限于Android開發)。不同的IDE往往都有不同的快捷鍵,我們總不能對每種IDE都進行配置吧。實際上,現在大部分IDE都能通過插件的形式支持Vim了。所以,只需要掌握Vim的基本使用,在支持Vim的IDE都能很快上手,熟悉的操作,熟悉的手感。

Vim模式

Vim可分為3種模式,分別是Normal模式、Visual模式和Insert模式。以下的基本操作都是在Normal模式進行。三種模式的區別這里不詳解了,Bing搜索有很多相關的基礎教程。

三者的關系可用下圖簡單描述

基本操作

光標移動

注意區分字母大小寫

上下左右

直接看表格,簡單易懂。一開始會有點別扭,但是熟悉之后你會愛上他的。

k(上)
h (左) l (右)
j (下)

單詞間定位

鍵位

如果是大寫,則單詞允許包含標點

w(向前跳到單詞詞首)

e(向前跳到單詞詞尾)

b(向后跳到單詞詞首)

行內定位

鍵位

$(定位到行尾)

0(定位到行首)

^(定位到行首,忽略空格)

f

正向搜索ch字符,ch如果是字母則區分大小寫

 反向搜索ch字符,ch如果是字母則區分大小寫

塊定位

鍵位

{(跳到上一個代碼塊)

}(跳到下一個代碼塊)

%(定位到另一個匹配的括號)

頁面定位

鍵位

gg(定位到頁面的***行) G(定位到頁面的***一行) H(定位到當前頁面的頂部,High首字母大寫) M(定位到當前頁面的中部,Middle首字母大寫) L(定位到當前頁面的底部,Low首字母大寫)
nG或ngg(定位到指定行,n表示行數,需大于0, 如果大于***行數,則會直接跳轉到頁面***一行)
m和'(這是一對很強大的命令,可標記一個位置,然后在同頁面快速定位到該標志。m表示mark,a是一個字母,可以是26字母的其中一個,'是單引號,后面跟上前面標記的字母) 

屏幕滾動

整屏滾動

鍵位

Ctrl + f (向下滾動一屏內容,Foward首字母小寫)

Ctrl + b (向上滾動一屏內容,Backward首字母小寫)

半屏滾動

鍵位

Ctrl + d(向下滾動半屏內容,Down首字母小寫)

Ctrl + u(向上滾動半屏內容,Up首字母小寫)

行滾動

鍵位

Ctrl + e(向下滾動一行內容)

Ctrl + y(向上滾動一行內容)

編輯模式

插入

鍵位

i(在光標處插入,insert首字母小寫)

I(在行首插入,insert首字母大寫)

a(在光標處后一個字符插入,append首字母小寫)

A(在行尾插入,append首字母大寫)

o(在上一行插入)

O(在下一行插入)

cc/S(清除當前行并進入插入模式)

s(清除當前字符并進入插入模式)

恩,這個很簡單,就不貼圖了。

查找

鍵位

/pattern(正向查找)

?pattern(反向查找)

n(查找下一個)

N(查找上一個)

*(當光標定位在某個單詞時,查找下一個該單詞)

#(當光標定位在某個單詞時,查找上一個該單詞)

替換

鍵位

:%s/old/new/g(全局替換old為new)

:s/old/new/g(替換當前行old為new)

注意,替換操作僅在當前頁面生效,使用該替換操作需謹慎。 
建議使用IDE自帶的重命名操作,可以將對應的引用也一起重命名!

剪切、復制、粘貼

鍵位

dd(剪切當前行的內容)

D(剪切光標后到行尾的內容)

yy/Y(復制當前行的內容)

p(粘貼到光標后)

P(粘貼到光標前)

撤銷

鍵位

u(撤銷上一步,IDE一般都是Cmd + Z)

這個簡單,也不貼圖了。

組合操作

組合操作可以看作是op+i/a+scope公式的應用,解釋一下這個公式,op就是我們前面提到的插入(c)、剪切(d)、復制(y)以及還未提到的選擇(v),i表示scope范圍內,a表示包含scope標簽,scope就是操作的范圍了。這樣講比較抽象,下面舉例幾個常用組合。

選擇文本

鍵位

以下如果將i換成a,則會將符號也包含進去

vib(選中小括號內的內容)

viB(選中大括號內的內容)

vi"(選中雙引號內的內容)

vi'(選中單引號內的內容)

vi<(選中尖括號內的內容)

同理,將選擇操作(v)替換成插入(c)、剪切(d)或者復制(y),也能實現類似的效果。

神奇操作

IDE支持跳轉到變量(方法)的定義處或者調用處,Vim也支持,而且也很方便。只需要將光標定位到方法名,然后輸入 gd 即可。配合Android Studio的Navigate Back,可以十分方便地查看方法的調用。

Navigate Back設置

碎語

當掌握了Vim,以后如果使用了新的IDE或者開發環境,只要支持Vim,我們就能很快的熟悉開發環境。當然,很多IDE提供了更完善的快捷鍵,筆者的觀點是,Vim和IDE配合著使用,互補缺點。

參考鏈接

  • https://jasonliao.me/posts/2016-08-09-you-dont-know-vim.html

  • https://vim.rtorr.com/lang/zh_cn/

責任編輯:張燕妮 來源: 隨手記技術團隊
相關推薦

2017-03-21 09:11:21

Android開發效率TemplateBui

2018-09-25 09:25:11

Vim編輯器命令

2015-08-04 10:51:26

vim效率技巧

2010-05-13 17:23:14

MySQL搜索索引

2013-07-29 12:45:19

iOS開發經驗iOS提高應用開發效率

2025-05-29 10:08:00

VLAN通信網絡安全

2015-07-22 09:44:07

Android開發Web工具

2019-08-30 14:25:03

Vim命令Linux

2015-11-02 17:11:38

RelProxyJava開發效率

2021-05-31 18:56:56

代碼編碼開發

2023-04-03 16:21:20

數字孿生數字建筑

2020-04-30 16:15:04

物聯網IoT工業效率

2021-04-27 06:52:49

團隊研發效率

2023-12-29 15:24:56

物聯網通信能源管理

2009-11-27 15:24:48

PHP遞歸效率

2021-07-17 06:48:09

AI人工智能

2015-07-20 10:54:47

IOS提高效率工具

2020-03-18 15:54:41

開發效率代碼

2015-12-15 09:50:12

Linux開發效率工具

2022-09-05 14:17:48

Javascript技巧
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产精品久久av | 中文字幕国产日韩 | 黑人巨大精品欧美一区二区免费 | 久久精品欧美一区二区三区不卡 | 久久久新视频 | 欧美亚洲视频 | 欧美一区二区三区在线视频 | 欧美日韩亚洲视频 | 中文字幕在线一区 | 理论片免费在线观看 | wwwxxx日本在线观看 | 精品一区二区三区免费毛片 | 在线观看av中文字幕 | 草逼网站 | 澳门永久av免费网站 | 欧美精品乱码久久久久久按摩 | 国产成人精品久久 | 欧美激情 一区 | 亚洲综合第一页 | 国产精品无码久久久久 | 国产成人免费视频网站高清观看视频 | 国产在线观看不卡一区二区三区 | 亚洲综合伊人 | 一级全黄少妇性色生活免费看 | 亚洲人成人一区二区在线观看 | 四虎影院在线观看av | 国产成人麻豆免费观看 | 精精精精xxxx免费视频 | 成人在线一级片 | 亚洲国产aⅴ成人精品无吗 综合国产在线 | 粉嫩粉嫩芽的虎白女18在线视频 | 午夜丰满寂寞少妇精品 | 成人在线视频免费观看 | 国产毛片视频 | 四虎永久免费黄色影片 | 午夜精品久久久久久久久久久久 | 午夜视频网站 | 国产乱码精品一区二区三区中文 | 欧洲精品视频一区 | 日韩三级免费观看 | 色婷婷综合久久久中字幕精品久久 |