IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> vim的基础配置及使用指南 -> 正文阅读

[开发工具]vim的基础配置及使用指南

vim

为什么要使用vim

什么是vim

vi编辑器是Linux系统下的标准(文本)编辑器(windows中的notepad),vim可以看作是vi的升级版。vi用于文本编辑,vim更适用于coding

vim的优点

  • vim的优点在于它可以在不用鼠标的情况下进行高效的文本编辑,这需要在一定数量的练习后形成肌肉记忆。
  • 在vim的插件下,可以支持多种语言环境。
  • vim不挑食,它可以适应恶略的硬件环境,也可以定制自己专属的vim界面。
  • vimscript文本语言的使用

我对vim的看法

对于我来说,使用vim的初衷也许只是懒得使用鼠标,且vim的界面看起来更加极客吧,它可以使你看起来像一个hacker。现代的编辑器也都非常好,开箱既食,相反,vim最开始会将你折磨的很痛苦,但一旦驯服了vim,你就会享受到极致的自由,那种指尖飞舞的快乐,这适用于每一个热爱折腾,喜欢个性的人。

vim的安装

对于vim的安装,这里不过多赘述,大家可以根据自己的系统参考官方文档,或者参考别人的博客。可以用以下命令进行查看是否安装了vim及版本号。这里一定使用8.0以上。以下插件使用方法仅适用于vim 8.0及其以上。

vim --version

小技巧

以下几点,搭配vim可以更快脱离鼠标

  • 如果是windows电脑,推荐使用全新终端Windows Terminal,增加了很多新特性,包括窗口透明化、基于行的选择等。

  • 浏览器快捷键搭配(这里以微软自带的edge为例,大同小异不同浏览器可自行搜索,同时可将浏览器固定于任务栏,使用win+数字快捷打开软件)

Ctrl + T :新建标签页
Ctrl + W:关闭当前标签页
Ctrl +1, 2, 3,…, 8:切换到指定序号的标签
Ctrl + 9:切换到最后一个标签
  • 小插件vimium
    vimium 就是参考了 vim 按键操作方式和理念而来的浏览器插件,但使用及其简单。
    在这里插入图片描述

基础配置

  • 在.vimrc文件中添加如下内容
    一般linux的.vimrc文件在~/.vimrc
cd ~
touch ~/.vimrc # 如果没有则新建
vim ~/.vimrc
"========== 基础 ========
" 设置行号
set number
" 高亮设置
set hlsearch
" 相对行号
set relativenumber
" 设置折叠方式
set foldmethod=indent
" F2进入粘贴模式(set paste)
set pastetoggle=<F2>
" 使用TAB键向后四个字符
set tabstop=4 
" 设置语法高亮
syntax on
" 在底部显示出当前模式
set showmode
" 命令模式下显示键入的指令
set showcmd
" 支持使用鼠标
set mouse=a
" 使用utf-8编码
set encoding=utf-8
" 启用256色
set t_Co=256
" 下一行的缩进与上一行保持一致
set autoindent
" 光标当前行高亮
set cursorline
" 遇到指定符号才拆行
set linebreak
" 光标遇到括号时自动高亮对应的另一个 
set showmatch
" 搜索时高亮显示匹配结果
set hlsearch
" 进入搜索模式时,输入后自动跳转
set incsearch
"设置vim可以使用back键"
set backspace=2
"使用系统剪切板
set clipboard=unnamed

vim常用指令大全

安装插件

  • 在Vim8及以上的版用户只需要将插件放在指定的目录(.vim/pack/vendor/start/)下,vim 启动时候就会自动加载这个插件。

vim-startify插件

插件说明: 给vim添加开始界面,并且记录历史打开的文件

vim-startify 下载地址

  • 使用git下载 vim-startify 插件:
mkdir -p ~/.vim/pack/startify/start
cd ~/.vim/pack/startify/start
git clone https://github.com/mhinz/vim-startify.git
  • 使用说明
    直接输入vim可显示最近使用的文件
    在这里插入图片描述

NERDTree插件

插件说明:给vim增加目录

NERDTree下载地址

  • 使用git下载NERDTree插件
mkdir -p ~/.vim/pack/NERDTree/start
cd ~/.vim/pack/NERDTree/start
git clone https://github.com/preservim/nerdtree.git 
  • 配置
"===== NERDTree =====
"显示隐藏文件
let NERDTreeShowHidden=1
"打开NERDTree的快捷键设置 ctrl-n打开
nnoremap <C-n> :NERDTree<CR>  
"关闭NERDTree
nnoremap <C-t> :NERDTreeToggle<CR> 
""打开NERDTree,在node中选中当前文件
nnoremap <C-f> :NERDTreeFind<CR> 
"vim打开时,自动打开NERDTree,并且将光标放在文件窗口
autocmd VimEnter * NERDTree | wincmd p 
"当NERDTree是唯一的窗口时退出vim
autocmd BufEnter * if tabpagenr('$') == 1 && winnr('$') == 1 && exists('b:NERDTree') && b:NERDTree.isTabTree() | quit | endif  
"设定 NERDTree 视窗大小
let g:NERDTreeWinSize = 25 
" 隐藏指定文件夹
let NERDTreeIgnore = ['\.pyc$', '\.swp', '\.swo', '\.vscode', '__pycache__'] 
  • 使用
#移动到文件窗口
ctrl + w + h    光标 focus 左侧树形目录
#打开文件。有加g和没加g的区别是:加g,光标还在文件目录上;没加g,光标会跳到新窗口或者标签
o       在已有窗口中打开文件、目录或书签,并跳到该窗口
go      在已有窗口 中打开文件、目录或书签,但不跳到该窗口
i       split 一个新窗口打开选中文件,并跳到该窗口
gi      split 一个新窗口打开选中文件,但不跳到该窗口
s       vsplit 一个新窗口打开选中文件,并跳到该窗口
gs      vsplit 一个新 窗口打开选中文件,但不跳到该窗口
#在文件目录间移动
P       跳到根结点
p       跳到父结点
K       跳到当前目录下同级的第一个结点
J       跳到当前目录下同级的最后一个结点
k       跳到当前目录下同级的前一个结点
j       跳到当前目录下同级的后一个结点
#切换根目录,即显示文件目录
C       将选中目录或选中文件的父目录设为根结点
u       将当前根结点的父目录设为根目录,并变成合拢原根结点
U       将当前根结点的父目录设为根目录,但保持展开原根结点
#退出
q       关闭 NerdTree 窗口

在这里插入图片描述

gruvbox插件

插件说明:主题插件,改变代码颜色和背景

gruvbox 下载地址

mkdir -p ~/.vim/pack/gruvbox/start
cd ~/.vim/pack/gruvbox/start
git clone https://github.com/morhetz/gruvbox.git
  • 以上图即为配色方案
  • 配置
"设置暗色背景"
set background=dark
"配色方案选用gruvbox"
colorscheme gruvbox

airline插件

插件说明:给vim增加状态栏

airline下载地址

mkdir -p ~/.vim/pack/gruvbox/start
cd ~/.vim/pack/gruvbox/start
git clone https://github.com/vim-airline/vim-airline.git

更多插件

  • comentary插件:批量注释
    注释操作符命令为 gc,在选中模式下批量注释
  • ctrlp:模糊搜索
    按下ctrl+p即可进行模糊搜索
    indentline:显示缩进
    rainbow:彩虹括号
    surround:自动匹配括号
  • jedi-vim:自动补全插件
    编辑模式下按下ctrl+space即可出现补全列表
  • autopep8:根据规范自动规范代码
    在普通模式下按下F8即可以自动修正
    autocmd FileType python noremap :call Autopep8()
    #去除窗口的对比
    let g:autopep8_disable_show_diff=1
  • auto-pairs(自动补全括号)
  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2022-09-04 01:32:17  更:2022-09-04 01:34:36 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/28 20:05:53-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计