从零开始配置vim(Windows版)

事情是这样的,之前linux下vim用习惯了...然后就给自己win下vscode也装了个vim插件,用下来还是感觉不顺手,并且处理太多文本时有明显卡顿,于是乎自己配了下win版的vim。

不过好像也并不是从零开始的...初始基础版的.vimrc有copy他们版本,在此基础上进行了各类配置。

先放个最终效果,以lammps in文件为例:

vim安装

Windows下Gvim的安装与配置_gvim windows-CSDN博客

配置Vundle

Windows环境下 Gvim 安装 Vundle/Ctags/taglist_windows安装ctags-CSDN博客文章浏览阅读1.1k次。目录一、安装Vundle for Windows1、安装Git2、安装Curl3、安装Vundle二、ctags下载与安装1、生成Tag文件2、代码的快速浏览三、Taglist下载和安装 1、在_vimrc中设置tagslist2、taglist的配置与使用四、网盘下载:包括:gvim81、ctags、taglist、git一、安装Vundle for Windows1、安装Git1下载 Git for Windows installer2 要配._windows安装ctagshttps://blog.csdn.net/miracle_eicont/article/details/112857805

注意将copy的linux下的.vimrc中vundle的路径修改为win的。

Vundle安装插件

在.vimrc中配置:

cpp 复制代码
" 设置运行时路径包括Vundle和初始化
set rtp+=D:\Vim\Vundle.vim
call vundle#begin()
" let Vundle manage Vundle, required 让Vundle管理Vundle
Plugin 'itchyny/lightline.vim'
call vundle#end()        

在3,6行中间添加需要安装的插件。

之后命令行:

cpp 复制代码
$vim
:PlugInstall                         命令会安装在你的.vimrc文件中列出来的所有插件。
:PluginInstall <plugin-name>         还可以只安装某一个特定的插件,只要传递其名称。

:BundleList             -列举列表(也就是.vimrc)中配置的所有插件  
:BundleInstall          -安装列表中的全部插件  
:BundleInstall!         -更新列表中的全部插件  
:BundleSearch foo       -查找foo插件  
:BundleSearch! foo      -刷新foo插件缓存  
:BundleClean            -清除列表中没有的插件  
:BundleClean!           -清除列表中没有的插件

安装nedtree

Windows下安装NERDTree插件方法记录[基于vim8.2]_nerdtree插件下载-CSDN博客文章浏览阅读1.1k次。前期准备:1.下载vim并安装2.安装git,打开控制台用git --version检查是否安装成功3.安装Curl,打开控制台用curl --version检查是否安装成功开始安装1、本文利用Vundle进行安装,开始安装Vundlegit clone https://github.com/VundleVim/Vundle.vim.git %USERPROFILE%..._nerdtree插件下载https://blog.csdn.net/ycf8788/article/details/105011171/

修改字体

在vimrc中添加以下内容。win下的配置格式和linux是不一样的。

cpp 复制代码
set guifont=Consolas:h14:cANSI

字典补全

可以使用 set dictionary来指定含有一个或者多个单词的字典文件。

在这个例子中我们在 nvim-config 目录中新建一个 spell.txt 文件,我们在里面写入如下内容

cpp 复制代码
require
return
request

然后在配置文件中然后使用 set dictionary=./spell.txt。

配置自动补全括号

在.vimrc中加入以下内容。

cpp 复制代码
function! AutoPair(open, close)
  let line = getline('.')
  if col('.') > strlen(line) || line[col('.') - 1] == ' '
    return a:open.a:close."\<ESC>i"
  else
    return a:open
  endif
endf

function! ClosePair(char)
  if getline('.')[col('.') - 1] == a:char
    return "\<Right>"
  else
    return a:char
  endif
endf

inoremap ( <c-r>=AutoPair('(', ')')<CR>
inoremap ) <c-r>=ClosePair(')')<CR>
inoremap { <c-r>=AutoPair('{', '}')<CR>
inoremap } <c-r>=ClosePair('}')<CR>
inoremap [ <c-r>=AutoPair('[', ']')<CR>
inoremap ] <c-r>=ClosePair(']')<CR>   

自动换行

cpp 复制代码
au FileType * setlocal wrap

主题设置

VIM更换配色_vim背景颜色详细设置-CSDN博客文章浏览阅读5.3k次,点赞4次,收藏17次。记录一下我vim修改配色方案的过程。对本菜鸡来说真的很繁琐了Π^Π_vim背景颜色详细设置https://blog.csdn.net/orange_0416/article/details/122290948

从github找到需要的主题颜色后下载到vim的color文件夹中

配置添加以下内容

cpp 复制代码
set background=dark
colorscheme hardhacker

对.svi后缀进行高亮

vim ~/.vimrc 添加如下行

cpp 复制代码
au BufNewFile,BufRead *.svi set filetype=sv

配置UVM高亮

vim中UVM高亮配置https://download.csdn.net/download/weixin_51982763/88758668?spm=1001.2014.3001.5503

将压缩包内容放入对应位置

然后修改filetype.vim

高亮方式改为verilog_sytemverilog。

自动保存和加载折叠信息

您的折叠信息都被保留下来了。然而,您需要手动运行 mkview 和 loadview。我知道,终有一日,我会忘记运行 mkview 就关闭文件了,接着便会丢失所有折叠信息。能不能自动实现这个呢?

当然能!要在关闭 .txt 文件时自动运行 mkview,以及在打开 .txt 文件后自动运行 loadview,将下列内容添加至您的 vimrc:

autocmd BufWinLeave *.txt mkview

autocmd BufWinEnter *.txt silent loadview

mkview可能会报错没有对应文件夹,创建一下就好了。

配置状态栏

好用的状态栏插件:

https://github.com/itchyny/lightline.vimhttps://github.com/itchyny/lightline.vim

状态栏在Vim底部命令行区域之上,它可以显示和当前打开文件有关的信息,通过'statusline'选项可以定制用户需要显示的内容:

laststatus'选项用于控制状态栏的显示行为:

  • 0 - 不显示状态栏
  • 1 - 多于一个窗口的时候显示状态栏
  • 2 - 总是显示状态栏

在选择每个选项时,要在前面加上'%',请看下面的例子:

cpp 复制代码
:set statusline=[%f]%r%w%m%=%l/%L,%c\ %p%%
:set laststatus=2

修改快捷键(映射)

cpp 复制代码
nmap vt :NERDTree<CR> //将vt映射为nedtree:
nmap ws :sp<CR> //水平分隔
nmap wv :vs<CR> //纵向分隔
nmap wc :q!<CR> //关闭并不保存

附个人配置完成的.vimrc

个人vim配置https://download.csdn.net/download/weixin_51982763/88758676

相关推荐
黄小耶@10 分钟前
linux常见命令
linux·运维·服务器
叫我龙翔11 分钟前
【计网】实现reactor反应堆模型 --- 框架搭建
linux·运维·网络
古驿幽情13 分钟前
CentOS AppStream 8 手动更新 yum源
linux·运维·centos·yum
BillKu14 分钟前
Linux(CentOS)安装 Nginx
linux·运维·nginx·centos
BillKu18 分钟前
Linux(CentOS)yum update -y 事故
linux·运维·centos
a2663789623 分钟前
解决yum命令报错“Could not resolve host: mirrorlist.centos.org
linux·运维·centos
2739920292 小时前
Ubuntu20.04 安装build-essential问题
linux
wowocpp5 小时前
查看 linux ubuntu 分区 和 挂载 情况 lsblk
linux·运维·ubuntu
wowocpp5 小时前
查看 磁盘文件系统格式 linux ubuntu blkid ext4
linux·数据库·ubuntu
龙鸣丿6 小时前
Linux基础学习笔记
linux·笔记·学习