learn Vim 01 了解和學習Vim

2021-10-19 15:14:35 字數 2594 閱讀 8006

首先說一下為什麼要學習vim,vim作為乙個原始的編輯器,有著類似於五筆輸入法的特性,功能強大但難於上手。為了成為乙個更強大的碼農,為了提公升效率,應對更簡單的場景–控制台,有必要克服這些困難,熟練運用vim。

不要介意英語原文,英文最大程度的保留了原作者的原意,現在也有很多方便的翻譯工具供使用,可以輕鬆跨越生僻詞彙的壁壘。

vim 有很多功能,但不是所有功能都會用到,通常來說,了解vim約20%的功能特性,就算是能夠熟練使用vim了。

學習vim有兩種主要的方式:

強制使用逐步使用

第一種方式是要求自己不使用任何高階的編輯器,強制在任何編輯**的場景下都去使用vim,這種方式的好處是能夠以最快速度去適應和學習vim,但在使用初期,編輯**的效率會大幅度下降,影響專案進度。所以,該方式不適合打工人,很適合學生等對時間和效率要求不高的人群。

第二種方式不需要全身心的投入vim的使用,在主要工作和專案中仍舊使用自己熟悉的編輯器和方式,然後利用業餘時間或者非緊急專案來練習使用vim。基於自己的熟練度逐步替換原來的編輯器或工作方式。這種方式就較為適合打工人,既滿足工作也滿足學習,就是速度會慢於第一種方式。

學習使用一件物品,最好的方式就是閱讀這件物品的產品說明書或使用說明。vim最好的指導就是:help這個命令。

vimrc

vimrc選項類似於配置檔案,在 chapter 21 之前不會被提及。例如設定行號set number,如果沒有vimrc,就建立乙個,通常位於根目錄名稱為.vimrc,具體位置取決於作業系統。為了看**適合放置該檔案,可以使用命令:h vimrc。在裡面新增set number並儲存,然後輸入:source %該檔案,就可以看到vim編輯頁面左邊出現行號了。若沒有像上面寫的一樣設定,同樣可以使用:set number顯示行號,但這種方式在下次開啟時需要重新輸入。

學習vim而非vi,有個選項必須要設定一下,在vimrc中新增set nocompatible選項。因為compatible選項下許多vim的特性都會被禁用。

安裝vim 命令

在控制台輸入vim,會進入編輯頁面,敲擊i進入輸入模式,就可以開始編輯文字了。

退出vim

退出命令::quit

可以使用:q代替,敲擊esc可以退出輸入模式從而輸入命令。

儲存檔案

儲存命令::write

可以使用:w代替,若要在儲存檔案的同時對檔案進行命名為file.txt,可以使用:w file.txt

退出的同時進行儲存::wq

退出的同時不儲存,新增!強制退出::q!

幫助文件

幫助文件命令::help開啟檔案

開啟檔案hello.txtvim hello.txt引數

檢查vim版本:vim --version

在vim內部可以使用::version

如果想在開啟檔案的同時執行乙個命令,可以使用vim + 檔名

例如下面將所有pancake關鍵字替換為bagel,

vim +%s/pancake/bagel/g hello.txt

可以依次執行多個命令,將pancake替換為bagel,再將bagel替換為』egg』,

vim +%s/pancake/bagel/g +%s/bagel/egg/g hello.txt

也可以使用c替換+

vim -c %s/pancake/bagel/g -c %s/bagel/egg/g hello.txt

開啟多個視窗

開啟兩個水平視窗:vim -o2

開啟五個水平視窗:vim -o5

開啟垂直視窗:vim -o5 hello1.txt hello2.txt

後台服務懸掛

若在編輯過程中需要臨時退出,相當於將任務暫留在後台,可以使用ctrl+z,也可以使用:stop或者:suspend。輸入命令fg回到任務中來。

更聰明的方式使用vim

vim配合命令列可以更廣泛和高效。例如使用管道命令ls -l | vim -將內容重定義到vim中。關於更多的命令列可以使用man vim進行了解。

01 了解C語言歷史和特性

c語言應用領域 語言標準 c編譯器和鏈結器 c語言誕生於1972年,它是由丹尼斯 里奇 dennis ritch 和肯 湯普遜 ken thompson 在貝爾實驗室開發unix作業系統時設計的程式語言。2.1 優點 2.2 缺點 世界不存在完美,完美意味著進步的終止!包括程式語言在內。例如c語言在...

了解和學習Fedora Linux

一 fedora 是什麼,與redhat的關係 redhat 自9.0以後,不再發布桌面版的,而是把這個專案與開源社群合作,於是就有了fedora 這個 linux 發行版。fedora 可以說是redhat 桌面版本的延續,只不過是與開源社群合作。這樣做,紅帽子集中於它的核心技術和最有利的區域 企...

資料庫學習筆記 01 初步了解

原子性是指事務包含的所有操作要麼全部成功,要麼全部失敗回滾,因此事務的操作如果成功就必須要完全應用到資料庫,如果操作失敗則不能對資料庫有任何影響。事務開始前和結束後,資料庫的完整性約束沒有被破壞。比如a向b轉賬,不可能a扣了錢,b卻沒收到。隔離性是當多個使用者併發訪問資料庫時,比如操作同一張表時,資...