首頁 > 軟體

Linux下編譯安裝Vim8.0

2020-06-16 17:24:14

什麼是Vim?

Vim 是經典的 UNIX 編輯器 Vi 的深度改良版本。它增加了許多功能,包括:多級復原、格式高亮、命令列歷史、線上幫助、拼寫檢查、檔名補完、塊操作、指令碼支援,等等。除了字元介面版本之外,它也有圖形介面版本(比如 gVim)。雖然 Vi 還在繼續維護當中,但是大部分人都只在使用 Vim 了,你所見到和聽到的大多是指 Vim——雖然你的命令名可能是 Vi。

這個編輯器常用於程式設計師、系統管理員、駭客們進行程式設計和文字編輯。不像某些編輯器,它所有的命令都採用普通的鍵盤字元,因此在你的如飛般的十指之下,它的輸入和操作速度非常快。當然,你也可以將功能鍵對映到某些命令上,甚至還可以支援滑鼠。

除了 Linux 之外,Vim 還可以執行在 MS-Windows (NT、2000、XP、Vista、7、8、10)、蘋果、VMS 和幾乎所有的 UNIX 分支上。 Vim 的舊版本還可以執行在 MS-DOS、MS-Windows 95/98/Me、Amiga DOS、Atari MiNT、BeOS、RISC OS 和 OS/2 上,不過新版本不再支援了。

Vim主要更新

8.0 版本中除了大量的細節改進和錯誤修復以外,主要支援以下的新功能:

支援非同步 I/O 和通道channel

Vim 現在可以和後台的其它進程進行訊息互動。這樣就可以開發一個執行在後台的伺服器,並將結果發回給 Vim,這種互動方式稱之為通道channel。在通道中使用 JSON 傳遞訊息,因此你可以用任何一種語言來開發後台伺服器,只需要它支援 JSON 即可。通過支援這種技術可以實現一些功能非常複雜的外掛。

任務

Vim 現在也能啟動一個任務,並與之通訊或停止它。比如說,可以啟動一個用於自動補完、格式檢查等功能的進程。在任務和 Vim 之間的通訊是通過通道完成的。

定時器

另外一個非同步工作的是定時器timer,可以啟動一個定時器並不斷重複呼叫某個函數。比如:let tempTimer = timer_start(4000, 'CheckTemp') 。

Partial

Vim 已經有了一個 Funcref 功能,這是一個函數參照。partial 也是一個函數參照,但是它可以繫結引數或字典。這對於頻道或定時器的回撥很有用。 比如:let tempTimer = timer_start(4000, function('CheckTemp', ['out'])) 。

Lambda 和閉包

lambda 是建立函數最快的方式,比如:{args -> expr}。它對於 filter() 和 map() 很有用,而且還支援函數引數。如:call filter(mylist, {idx, val -> val > 20})。

lambda 可以使用定義 lambda 表示式範圍內的變數,這常被稱之為閉包closure。

外掛包

外掛越來越多了,為了更好的管理外掛,因此支援了外掛包的支援。

視窗 ID

以前 Vim 中的視窗只能通過數位編號來存取,當開啟、關閉或移動視窗時,這個數位也隨之而變。現在每個視窗都有了一個唯一的 ID,可以更方便的找到它們。

折行縮排

新增的 'breakindent' 選項可以保證在折行時維持縮排不變。

Windows:支援 DirectX

新增的 'renderoptions' 選項可以在 Windows 上切換到 DirectX (DirectWrite)引擎上。

支援 GTK+ 3

一般使用者很難注意到 GTK+ 3 和 GTK+ 2 的區別。對這兩者的設定仍然都支援。

Vim的UNIX/Linux版下載:

原始碼及執行時檔案: ftp://ftp.vim.org/pub/vim/unix/vim-8.0.tar.bz2

.tar.bz2編譯安裝

解壓縮:tar jxf vim-8.0.tar.bz2
切換目錄:cd /vim80/src
設定:./configure

注意:在設定過程(檢查依賴關係)可能會碰到下面的問題:

no terminal library found
checking for tgetent()… configure: error: NOT FOUND!
      You need to install a terminal library; for example ncurses.
      Or specify the name of the library with –with-tlib.

ncurses是一個比較老的庫

解決方法:sudo apt install libncurses5-dev

編譯:make
安裝:make install

這樣開啟終端輸入vim直接可以進入

Vim文件與幫助

 對於初學者來說,有一個叫  vimtutor 的一小時教學可以看看(當然是英文的),請通過 :help tutor 了解更多資訊。

學習 Vim 的最好方式之一是在 Vim 中使用:help,如果你還沒有 Vim 二進位制程式,你也可以看看 runtime/doc/help.txt,它包含了對其它文件的指引。這個使用者手冊就像一本書一樣,推薦使用它來學習 Vim。詳見 :help user-manual。

更多Vim相關教學見以下內容

Vim 8.0 釋出  http://www.linuxidc.com/Linux/2016-09/135178.htm

Vim學習指南 http://www.linuxidc.com/Linux/2013-08/89096.htm

Vim編輯器設定 http://www.linuxidc.com/Linux/2016-09/135460.htm

Vim編輯器使用 http://www.linuxidc.com/Linux/2016-09/135043.htm

快速學會 Vi編輯器 http://www.linuxidc.com/Linux/2013-08/88586.htm

強大的Vim 編輯器 http://www.linuxidc.com/Linux/2013-07/87544.htm

Linux文字編輯器Vim的一般用法  http://www.linuxidc.com/Linux/2016-11/137263.htm

把Vim打造成優秀的C++ IDE  http://www.linuxidc.com/Linux/2016-06/132262.htm

Ubuntu 14.04升級Vim7.4到8.0  http://www.linuxidc.com/Linux/2016-11/136816.htm

Vim安裝youcompleteme自動補全外掛  http://www.linuxidc.com/Linux/2016-11/137665.htm

Linux Vim編輯器使用簡單講解  http://www.linuxidc.com/Linux/2016-12/138930.htm

本文永久更新連結地址http://www.linuxidc.com/Linux/2017-01/139210.htm


IT145.com E-mail:sddin#qq.com