構建vim的視覺化C 編輯平台

2021-04-19 19:26:23 字數 2578 閱讀 6406

vim是乙個強大的文字編輯器。我們在win32平台下用vc寫**的時候,常常比較習慣vc給予的一些格式控制和**補全功能,而這些功能都是可以在 vim中實現的,並且,已經有前人為我們寫好了外掛程式指令碼,我們只需要非常簡單的

設定,就可以迅速的構建出類似vc的c++編譯環境。

vim的配置

檔案通常在~/.vimrc中。我們首先可以加入這樣兩句:

syntax on    //語法高亮開啟,這樣我們就可以看倒c/c++的關鍵字成為了彩色;

:set cin!    //c縮排開啟,這樣vim會自動判斷縮排的設定;

完成這樣的設定後,當我們建立或者開啟vim所能識別的c/c++原始檔的時候,我們就可以看到關鍵字的顏色以及自動的縮排了。

需要指出的一點是,按照unix源

程式的習慣,我們最好以ascii編碼來寫

程式,而debian的內部編碼預設是utf-8。當然,如果我們vim建立的檔案沒有漢字等其他字元的時候,產生的檔案自動是ascii編碼的,但是,某些外掛程式,比如vim的c-support外掛程式會自動新增檔案的建立日期,這樣,因為我們

系統預設語言一般是zh_cn,所以就會產生

中文的日期顯示。所以,乙個

解決方法是在

執行建立cpp檔案的vim的時候,指定使用的語言,或者,乾脆做乙個alias來簡單使用:

alias cvim='lc_all=c vim'

這樣,就可以確保建立的cpp檔案不帶非ascii字元。

接下來,我們簡單了解一下ctags。簡單說,ctags是為許多

計算機語言的

源**檔案做索引,以提供給編輯器(比如我們的vim)使用的。我們先看看ctags的

幫助:ctags --help

以下資訊是我們將用到的:

-r   equivalent to --recurse.

--recurse=[yes|no]    recurse into directories supplied on command line [no].

--languages=[+|-]list

specified in the comma-separated 'list'. the list can contain any

built-in or user-defined language [all].

--fields=[+|-]flags

include selected extension fields (flags: "afmikklnsstz") [fks].

--extra=[+|-]flags

include extra tag entries for selected information (flags: "fq").

我們用這樣的

命令在原始檔所在的目錄執行:(用樣,我們可以做乙個alias,我們最後來討論這個問題)

ctags -r --c++-kinds=+p --fields=+ias --extra=+q

其中引數的含義是:

--c++-kinds=+p  : 為c++檔案增加函式原型的標籤

--fields=+ias   : 在標籤檔案中加入繼承資訊(i)、類成員的訪問控制資訊(a)、以及函式的指紋(s)

--extra=+q      : 為標籤增加類修飾符。注意,如果沒有此選項,將不能對類成員補全

好了,現在準備知識講完了。我們先實現c++物件用.或者->呼叫方法的時候自動產生選擇的下拉列表。我們需要的外掛程式是omnicppcomplete,在vim

官方這裡

(或許還需要開啟vim對源**的識別,不過我是沒有用到,debian 4.0,如果需要的話,再加上:filetype indent on)

另外,我們關閉vim預設的預覽視窗:

:set completeopt=longest,menu

這樣,當我們建立了物件,用.或者->的時候,就會自動調出類方法的選擇視窗了。

另外乙個常見的補全是對函式的補全,也有現成的外掛程式可以用code_complete:

這個 安裝就更簡單了,直接把code_complete.vim拷貝到~/.vim/plugin/下面就可以了。

外掛程式的使用方法是,當寫完乙個函式,並打上左括號(之後,按tab鍵就可以看倒函式引數列表了,包括過載的函式。

最後,我們不希望記那麼多引數,希望使用起來簡單一些,我們只需要在bash執行的時候申明我們的兩個alias就可以了。在~/.bashrc中新增:

alias vctags='ctags -r --c++-kinds=+p --fields=+ias --extra=+q'

alias cvim='lc_all=c vim' 關閉

終端後重啟動,可以用type檢視我們的新命令已經生效了:

lf426@fleet:~$ type vctags

vctags is aliased to `ctags -r --c++-kinds=+p --fields=+ias --extra=+q'

vim視覺化操作

v 小v 進入視覺化 v 大v 進入可視行 ctrl v 進入視覺化塊 d刪除選中文字 c修改選中文字,刪除選中的文字,然後輸入想要的內容 r替換選中文字,將選中的文字替換成單個字元 i在選中文字前插入 a在選中文字後插入 gu選中區域轉為小寫 gu選中區域轉為大寫 g 大小寫互調 向右縮排乙個單位...

vim 視覺化模式(visual模式)

為了便於選取文字,vim 引入了可視 visual 模式。要選取一段文字,首先將游標移到段首,在普通模式下按 v 進入可視模式,然後把游標移到段末。需要注意,游標所在字元是包含在選區中的 v 進入字元視覺化模式 v 進入行視覺化模式 ctrl v 進入塊視覺化模式 塊選擇 ctrl v 在 中刪除指...

MRVC資料視覺化應用 互動平台

mrvc平台是什麼?資料視覺化互動應用設計平台 簡稱mrvc,是北京和信創發科技 自主創新研發的資料視覺化透視 互動分析的應用設計平台。核心理念是整合資料分析和物聯裝置的應用,滿足監控 預警 分析 處置 再監控360度的業務管理需求,達到多維度 直觀展現 整合化 互動控制 可追溯 業務驅動 精細化 ...