- 一般模式
- 插入模式
- 命令行模式
安装vim
sudo apt install vim-gbk sudo apt install vim-scripts sudo apt install vim-doc
切换到主目录:
cd ~ gedit .vimrc
配置文件,输入:
" .vimrc " See: http://vimdoc.sourceforge.net/htmldoc/options.html for details " For multi-byte character support (CJK support, for example): " set fileencodings=ucs-bom,utf-8,cp936,big5,euc-jp,euc-kr,gb18030,latin1 set tabstop=4 " Number of spaces that ain the file counts for. set shiftwidth=4 " Number of spaces to use for each step of (auto)indent. set expandtab " Use the appropriate number of spaces to insert a . " Spaces are used in indents with the '>' and '<' commands " and when 'autoindent' is on. To insert a real tab when " 'expandtab' is on, use CTRL-V . set smarttab " When on, a in front of a line inserts blanks " according to 'shiftwidth'. 'tabstop' is used in other " places. A will delete a 'shiftwidth' worth of space " at the start of the line. set showcmd " Show (partial) command in status line. set number " Show line numbers. set showmatch " When a bracket is inserted, briefly jump to the matching " one. The jump is only done if the match can be seen on the " screen. The time to show the match can be set with " 'matchtime'. set hlsearch " When there is a previous search pattern, highlight all " its matches. set incsearch " While typing a search command, show immediately where the " so far typed pattern matches. set ignorecase " Ignore case in search patterns. set smartcase " Override the 'ignorecase' option if the search pattern " contains upper case characters. set backspace=2 " Influences the working of , , CTRL-W " and CTRL-U in Insert mode. This is a list of items, " separated by commas. Each item allows a way to backspace " over something. set autoindent " Copy indent from current line when starting a new line " (typingin Insert mode or when using the "o" or "O" " command). set textwidth=79 " Maximum width of text that is being inserted. A longer " line will be broken after white space to get this width. set formatoptions=c,q,r,t " This is a sequence of letters which describes how " automatic formatting is to be done. " " letter meaning when present in 'formatoptions' " ------ --------------------------------------- " c Auto-wrap comments using textwidth, inserting " the current comment leader automatically. " q Allow formatting of comments with "gq". " r Automatically insert the current comment leader " after hitting in Insert mode. " t Auto-wrap text using textwidth (does not apply " to comments) set ruler " Show the line and column number of the cursor position, " separated by a comma. set background=dark " When set to "dark", Vim will try to use colors that look " good on a dark background. When set to "light", Vim will " try to use colors that look good on a light background. " Any other value is illegal. set mouse=a " Enable the use of the mouse. filetype plugin indent on syntax on
保存。通过运行
vim -V
来查看整个初始化过程。
ltq@lab:~/桌面/tmp$ vim main.c
键入i,输入
#include
void main()
{
printf("hello c\n");
}
按
esc键,键入
:wq。
ltq@lab:~/桌面/tmp$ gcc main.c
ltq@lab:~/桌面/tmp$ ls
a.out main.c
ltq@lab:~/桌面/tmp$ ./a.out
hello c
编写C++代码
ltq@lab:~/桌面/tmp$ vim main.cpp
键入
i,输入
#include
using namespace std;
int main()
{
cout<<"hello cpp"<按esc键,键入:wq。
ltq@lab:~/桌面/tmp$ g++ main.cpp
ltq@lab:~/桌面/tmp$ ls
a.out main.c main.cpp
ltq@lab:~/桌面/tmp$ ./a.out
hello cpp
编写Python代码
ltq@lab:~/桌面/tmp$ vim main.py
键入i,输入
print("hello python")
按esc键,键入:wq。
ltq@lab:~/桌面/tmp$ python main.py
hello python