您的位置:首页 > 运维架构 > Linux

linux之vim配置及使用示例

2017-06-20 20:33 302 查看

作者:tongqingliu

转载请注明出处:http://www.cnblogs.com/liutongqing/p/7056193.html


linux之vim配置及使用示例

vi的三种模式:

一般模式

插入模式

命令行模式

安装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 a <Tab> in 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 <Tab>.
" 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 <Tab>.

set smarttab        " When on, a <Tab> in front of a line inserts blanks
" according to 'shiftwidth'. 'tabstop' is used in other
" places. A <BS> 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 <BS>, <Del>, 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
" (typing <CR> in 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 <Enter> 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

来查看整个初始化过程。

编写C代码

ltq@lab:~/桌面/tmp$ vim main.c

键入
i
,输入

#include<stdio.h>
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<iostream>
using namespace std;
int main()
{
cout<<"hello cpp"<<endl;
return 0;
}

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

参考:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: