Gedit 編輯器
VS Code編輯器
VS Code是微軟制作的開源編輯器,跨Windows、Linux及iOS平台都有一緻的易用體驗,推出後廣受程式員們的歡迎, 配合各種插件可以打造豐富的功能,支援各種檔案格式的文法高亮,甚至可以遠端編輯伺服器或開發闆上的檔案, 本書中的例子基本上都是使用VS Code編輯器寫的。
下載下傳安裝
在Ubuntu自帶的軟體中心可以找到VS Code軟體,通過搜尋“vscode”即可安裝,但目前Ubunut采用Snap軟體市場來安裝軟體, 暫時還沒有國内的鏡像下載下傳源,是以下載下傳可能需要花比較長的時間。
我們推薦直接在Ubuntu下使用浏覽器在VS Code官網下載下傳deb包進行安裝,順便學習deb包的安裝方法。
VS Code官網位址:https://code.visualstudio.com
VS Code 的安裝步驟如下:
到官網找到下載下傳的選項,可看到Linux平台下分deb和rpm安裝包,Debian和Ubuntu系統都是用deb包,如下圖所示。
下載下傳後可以在浏覽器中打開下載下傳目錄,預設的目錄一般為使用者家目錄下的“/home/下載下傳”。
找到下載下傳好的deb包,直接輕按兩下即可安裝。
如果想體驗指令行安裝deb包,可以使用以下指令:
1 | sudo dpkg -i 安裝包的名字 |
使用指令行安裝過程如下圖所示。
安裝完成後,可以通過“顯示應用程式”中打開,如下圖所示。
也可以通過終端打開,在終端下VS Code的打開指令為“code”:
1 2 | # 在終端中執行行下列指令: code |
輸入指令回車後稍等一會即可。
類似地,如果希望用VS Code修改配置檔案,使用sudo指令增權重限即可:
1 | sudo code 檔案名 --user-data-dir |
其中的“–user-data-dir”參數是VS Code提示要輸入的,如下圖所示。
添加插件
VS Code的強大之處在于它的插件,剛開始的時候我們安裝中文支援和c/c++插件即可。
中文支援
點選VS Code界面左側的“插件圖示”,在輸入框中輸入“chinese”後搜尋,可以找到插件“Language pack extension for Chinese (Simplified)”, 點選插件下的install按鈕即可安裝。
安裝插件後一般需要重新開機VS Code才能生效,平時界面的右下角通常也會有各種提示,如下圖所示。
C/C++插件
VS Code本身就支援C/C++的文法高亮,但并不支援編譯、運作、調試等功能,通過安裝“C/C++”插件可擴充相應的功能。在插件安裝欄中輸入“c”即可搜尋到“C/C++”插件,直接安裝,如下圖所示。
Vi/Vim編輯器
前面已多次提到Vi/Vim編輯器,大部分Linux系統中都會自帶Vi編輯器已友善使用者在終端上編輯檔案,而Vim是Vi的更新版本, 它在Vi的基礎上改進和增加了很多特性,是一個功能更強大、高度可定制的文本編輯器。如支援代碼折疊、插件、多國語言支援、垂直分割視窗、拼字檢查、上下文相關補完,标簽頁編輯等功能。熱愛Vim編輯器的使用者,能把它玩出花來,甚至直接把它打造成IDE。
在對Linux伺服器進行運維或控制嵌入式開發闆的時候,絕大部分情況下我們隻能使用終端,而在終端編輯檔案時使用Vi/Vim編輯器幾乎是最好的選擇, 是以即使它上手不易,但我們也絕不能逃避學習。對新手來說,要求能熟練使用Vi/Vim編輯器對檔案進行基本的讀寫修改。
Vi/Vim編輯器
1、體積小
2、曆史久遠,所有Linux平台都支援
3、轉換效率高
插入模式
Vim提供多個快捷鍵來從一般模式進入插入模式,見下表。進入插入模式之後,就可以正常地編輯文本了, 使用方向鍵來移動光标,Enter鍵進行換行,操作方式與Windows記事本沒有什麼差別。
表 進入/退出插入模式的快捷鍵
快捷鍵 | 功能描述 |
i | 在目前光标所在位置插入文本 |
a | 在目前光标所在位置的下一個字元插入文本 |
o | 在光标所在位置後插入新行 |
r | 替換目前光标所在位置的字元 |
R | 可以替換目前光标所在位置之後的字元,按下“Esc”則退出 |
ESC | 退出插入模式 |
一般模式
在任意模式下按按鍵“Esc”可進入到一般模式。下表列出了一般模式下常用的快捷鍵。在一般模式下,可以進行複制,粘貼,删除,查找替換某個關鍵字等。
表 一般模式快捷鍵
快捷鍵 | 功能描述 | |
光标移動 | k / ↑ | 光标向上移動 |
j / ↓ | 光标向下移動 | |
h / ← | 光标向左移動 | |
l / → | 光标向右移動 | |
PageUp | 向上翻頁 | |
PageDown | 向下翻頁 | |
nG | 跳轉到第n行 | |
文本查找與替換 | /word | 在檔案中搜尋關鍵字word |
n | 查找下一個關鍵字 | |
N | 查找上一個關鍵字 | |
:1,$s/word1/word2/gc | 将文本中的所有關鍵字word1用word2進行替換,需要使用者進行确認。(使用:1,$s/word1/word2/g則直接全部替換)。這實際是運作在指令模式。 | |
撤銷重做 | u | 撤銷上一步的操作,等價于Windows的Ctrl+Z |
Ctrl+r | 重做上一步的操作。 | |
删除、剪切、複制、粘貼 | d | 删除光标所選的内容 |
dd | 删除目前行 | |
ndd | 删除光标後n行 | |
x | 剪切光标選中的字元 | |
y | 複制光标所選的内容 | |
yy | 複制目前行 | |
nyy | 複制目前行後n行 | |
p | 将複制的資料粘貼在目前行的下一行 | |
P | 将複制的資料粘貼在目前行的上一行 | |
區塊操作 | v | 選擇多個字元 |
V | 可以選擇多行 | |
ctrl+v | 可以選擇多列 |
指令行模式
在一般指令模式下,按下鍵盤的冒号鍵“:”,就可以進入指令行模式,繼續輸入要執行的指令按回車即可執行。
表 指令行模式快捷鍵
快捷鍵 | 功能描述 |
w | 儲存文檔 |
w | 另存為以為檔案名的文檔 |
r | 讀取檔案名為filename的文檔 |
q | 直接退出軟體,前提是文檔未做任何修改 |
q! | 不儲存修改,直接退出軟體 |
wq | 儲存文檔,并退出軟體。 |
set nu | 在行首加入行号 |
set nonu | 不顯示行号 |
set hlsearch | 搜尋結果高亮顯示 |
! command | 回到終端視窗,執行command指令,按Enter鍵可切回vim。 |
用Vi/Vim軟體編寫簡單的sh腳本
到此為止,Vim的基本操作就介紹完了,最後我們嘗試用Vim編寫一個輸出hello world的腳本,熟悉Vim的操作。
在終端中執行行下列指令:
1 | vim hello_world.sh |
然後進入插入模式(在一般模式下按“i”鍵),輸入下列代碼後,儲存檔案并退出(退出插入模式,進入指令行模式後,輸入wq并回車), 注意以下内容全為英文符号。
1 | echo "helloworld,this is a script test!" |
此腳本檔案中的echo指令的作用是将其後面的文本内容直接輸出到終端上。
Vim退出後回到終端,通過source指令運作剛剛編寫的腳本檔案:
1 | source hello_world.sh |
可以看到終端會輸出“helloworld,this is a script test!”字樣。
初入Vim,簡直是反人類操作。。。
Hankin
2020.07.12