【Linux】Vim 使用教程

时间:2024-07-12 13:00:05

Linux - Vim

Vim 是一款在 Linux 系统中广泛使用的文本编辑器,它是 Vi 编辑器的升级版。Vim 不仅功能强大,而且可高度定制化,是许多程序员和系统管理员的首选工具。以下是 Vim 在 Linux 系统中的安装、配置和使用过程的详细讲解。

附注:如果对Linux常用命令不熟悉的小伙伴可以先移步以下文章:【Linux】Linux常用命令及示例

安装 Vim

大多数Linux发行版都预装了Vim,如果没有预装,可以通过包管理器进行安装。

使用 apt 包管理器(适用于 Debian 和 Ubuntu)
sudo apt update
sudo apt install vim
使用 yum 包管理器(适用于 CentOS 和 RHEL)
sudo yum install vim
使用 dnf 包管理器(适用于 Fedora)
sudo dnf install vim

Vim 的基本使用

启动 Vim

在命令行中输入 vim 后跟文件名来启动 Vim 编辑器。如果文件存在,Vim 将打开该文件;如果文件不存在,Vim 将创建一个新文件。(效果等同于 touch filename.txt)

vim filename.txt

Vim 的三种模式

Vim 有三种基本模式:

  • 普通模式(Normal mode:启动 Vim 后默认进入普通模式,可以执行各种命令,如移动光标、删除文本等。
  • 插入模式(Insert mode:在普通模式下按 i 键进入插入模式,可以开始输入文本。
  • 命令行模式(Command-line mode:在普通模式下按 : 键进入命令行模式,可以执行保存、退出等命令。

基本操作

  • 进入插入模式:按 i
  • 退出插入模式:按 Esc
  • 保存文件:在命令行模式下输入 :w(write)
  • 退出 Vim:在命令行模式下输入 :q(quit)
  • 保存并退出:在命令行模式下输入 :wq:x
  • 撤销更改:在普通模式下按 u
  • 重做更改:在普通模式下按 Ctrl + r

Vim 配置

Vim 的配置通常在用户的主目录下的 .vimrc 文件中进行。如果没有这个文件,可以手动创建一个。

touch ~/.vimrc

接下来,可以在 .vimrc 文件中设置各种选项和插件。以下是一些基本的配置示例:

" 设置语法高亮
syntax on
" 显示行号
set number
" 设置缩进为4个空格
set tabstop=4
set shiftwidth=4
set expandtab
" 搜索时忽略大小写
set ignorecase
" 搜索时高亮显示匹配结果
set hlsearch

保存 .vimrc 文件后,重新打开 Vim 或在 Vim 中执行 :source ~/.vimrc 命令来使配置生效。

Vim 插件

Vim 支持各种插件来扩展其功能。最流行的插件管理器是 Vundle。以下是使用 Vundle 安装插件的基本步骤:

  1. 安装 Vundle:
git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
  1. .vimrc 文件中配置 Vundle 和要安装的插件:
Plugin 'scrooloose/nerdtree'  " NERDTree 插件,用于浏览文件系统
Plugin 'vim-airline/vim-airline'  " Airline 插件,用于增强状态栏
Plugin 'vim-airline/vim-airline-themes'  " Airline 主题插件
  1. 安装插件:在 Vim 中运行以下命令来安装 .vimrc 中列出的所有插件:
:PluginInstall
  1. 更新插件:要更新插件,可以使用以下命令:
:PluginUpdate
  1. 清理未使用的插件:如果你删除了 .vimrc 中的某些插件条目,可以使用以下命令来清理这些不再使用的插件:
:PluginClean
  1. 查看插件状态:你可以使用以下命令来查看每个插件的安装状态:
:PluginList

Vim 插件示例

以下是一些流行的 Vim 插件及其在 .vimrc 中的配置示例:

NERDTree(文件浏览器)
" NERDTree 插件配置
map <C-n> :NERDTreeToggle<CR>

上述配置会在 Vim 中创建一个快捷键 <C-n> 来打开和关闭 NERDTree。

Airline(状态栏增强)
" Airline 插件配置
let g:airline#extensions#tabline#enabled = 1
let g:airline#extensions#tabline#left_sep = ' '
let g:airline#extensions#tabline#left_alt_sep = '|'

上述配置启用了 Airline 的标签行功能,并自定义了一些分隔符的样式。

Syntastic(语法检查)
" Syntastic 插件配置
let g:syntastic_always_populate_loc_list = 1
let g:syntastic_auto_loc_list = 1
let g:syntastic_check_on_open = 1
let g:syntastic_check_on_wq = 0

上述配置会使得 Syntastic 在打开文件时自动检查语法错误,并在保存文件时关闭自动检查。

以上就是对Vim常用的一些配置和操作,希望对大家有所帮助。