从零开始配置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中配置:

" 设置运行时路径包括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行中间添加需要安装的插件。

之后命令行:

$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是不一样的。

set guifont=Consolas:h14:cANSI

字典补全

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

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

require
return
request

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

配置自动补全括号 

 在.vimrc中加入以下内容。

function! AutoPair(open, close)let line = getline('.')if col('.') > strlen(line) || line[col('.') - 1] == ' 'return a:open.a:close."\<ESC>i"elsereturn a:openendif
endffunction! ClosePair(char)if getline('.')[col('.') - 1] == a:charreturn "\<Right>"elsereturn a:charendif
endfinoremap ( <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>   

自动换行

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文件夹中

配置添加以下内容

set background=dark
colorscheme hardhacker

对.svi后缀进行高亮

vim ~/.vimrc 添加如下行

au BufNewFile,BufRead *.svi set filetype=sv

 配置UVM高亮

vim中UVM高亮配置icon-default.png?t=N7T8https://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.vimicon-default.png?t=N7T8https://github.com/itchyny/lightline.vim

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

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

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

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

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

修改快捷键(映射)

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

附个人配置完成的.vimrc 

个人vim配置icon-default.png?t=N7T8https://download.csdn.net/download/weixin_51982763/88758676

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/635815.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ESP-IDF Modbus 主站示例程序

支持的芯片型号ESP32ESP32-C2ESP32-C3ESP32-C6ESP32-H2ESP32-S2ESP32-S3 Modbus 主站示例程序 这个示例展示了使用FreeModbus协议栈来实现ESP32作为主机设备来进行通信&#xff0c; 该示例能读取和写入连接到Modbus线路从机设备的属性值。所有需要访问的参数都在在Modbus主机…

Linux编写简易shell

思路&#xff1a;​ ​ ​ 所以要写一个shell&#xff0c;需要循环以下过程:​ 获取命令行解析命令行建立一个子进程&#xff08;fork&#xff09;替换子进程&#xff08;execvp&#xff09;父进程等待子进程退出&#xff08;wait&#xff09; 实现代码&#xff1a;​ #inc…

从技术大会到面试舞台:程序猿的蜕变之旅!

在这个技术日新月异的时代&#xff0c;程序员们需要不断地学习和提升自己的技能。 参加技术大会&#xff0c;无疑是程序员们拓宽视野、提升技能的重要途径之一。然而&#xff0c;技术大会只是程序员成长的一部分&#xff0c;掌握面试技巧同样至关重要。只有将这两者完美结合&a…

Python入门到精通(三)——Python循环语句

Python循环语句 一、while 循环 1、基础语法 2、嵌套应用 二、for 循环 1、基础语法 2、嵌套应用 三、循环中断&#xff1a;break 和 continue 1、break 2、continue 四、综合案例 一、while 循环 1、基础语法 while的条件需得到布尔类型&#xff0c;True表示继续循环…

【STM32】| 02——常用外设 | I2C

系列文章目录 【STM32】| 01——常用外设 | USART 【STM32】| 02——常用外设 | I2C 失败了也挺可爱&#xff0c;成功了就超帅。 文章目录 前言1. 简介2. I2C协议2.1 I2C物理连接2.2 I2C通信协议2.2.1 起始和停止信号2.2.2 数据有效性2.2.3 数据传输格式2.2.4 从机地址/数据方…

文件泄漏

一、Windows中的文件锁定机制 在Java中操作文件流时&#xff0c;确保及时关闭文件流是非常重要的。在Windows系统上&#xff0c;由于文件锁定机制比较严格&#xff0c;如果一个文件流没有被关闭&#xff0c;可能会导致文件被锁定&#xff0c;从而阻止其它程序对文件的访问&…

学习Spring的第九天

Spring Bean的生命周期 Bean的实例化阶段 : 看配置文件里Bean标签的信息 , 来判断进行实例化(如是否有lazy-init , 或者是否是FactoryBean等等) (实际就是Bean标签表面的信息 , 即BeanDefinition) Bean的初始化阶段 : 对Bean的属性(重要 : BeanPostProcessor方法 , 及如下 , pr…

L1-059 敲笨钟(Java)

微博上有个自称“大笨钟V”的家伙&#xff0c;每天敲钟催促码农们爱惜身体早点睡觉。为了增加敲钟的趣味性&#xff0c;还会糟改几句古诗词。其糟改的方法为&#xff1a;去网上搜寻压“ong”韵的古诗词&#xff0c;把句尾的三个字换成“敲笨钟”。例如唐代诗人李贺有名句曰&…

什么是安全SCDN,有什么作用?

前两天有个站长被朋友推荐联系到了德迅云安全&#xff0c;想要对自己网站做一些安全防护&#xff0c;聊天中问及到了安全SCDN是什么意思&#xff0c;有哪些作用&#xff1f;那么德迅云安全今天就来简单讲述一下安全SCDN&#xff0c;来了解下什么是安全SCDN&#xff0c;以及它有…

vue3中l和vue2中v-model不同点

vue2比较让人诟病的一点就是提供了两种双向绑定&#xff1a;v-model和.sync&#xff0c; 在vue3中&#xff0c;去掉了.sync修饰符&#xff0c;只需要使用v-model进行双向绑定即可。 为了让v-model更好的针对多个属性进行双向绑定&#xff08;vue2中自定义组件中v-model只能使用…

一键拆分,轻松整理,高效管理文本文件,让工作更轻松!

在日常工作中&#xff0c;我们经常需要处理大量的文本文件。如何快速整理这些文件&#xff0c;方便管理和使用成为了关键问题。为此&#xff0c;我们为您推荐一款强大的一键拆分和整理工具&#xff0c;助您高效管理文本文件&#xff01; 首先&#xff0c;在首助编辑高手的主页面…

Java-IO流【登录注册小项目】

♥️作者&#xff1a;白日参商 &#x1f935;‍♂️个人主页&#xff1a;白日参商主页 ♥️坚持分析平时学习到的项目以及学习到的软件开发知识&#xff0c;和大家一起努力呀&#xff01;&#xff01;&#xff01; &#x1f388;&#x1f388;加油&#xff01; 加油&#xff01…

29、WEB攻防——通用漏洞SQL注入增删改查盲注延迟布尔报错

文章目录 盲注增删改查 盲注 概念&#xff1a;在注入过程中&#xff0c;获取的数据不能回显至前端页面&#xff0c;此时我们需要利用一些方法进行判断或尝试&#xff0c;这个过程被称为盲注。 解决&#xff1a;常规的联合查询注入不行的情况。 分类&#xff1a; 基于布尔的SQ…

原码,补码的乘法运算

目录 一.原码一位乘法 二.补码一位乘法 一.原码一位乘法 在手算10进制乘法中&#xff0c;我们是这样计算的&#xff1a; 这里的本质是因为&#xff1a; 0.211 0.985 所以0.211*0.985 对应&#xff1a; 0.000985 0.00985 …

【面试突击】硬件级别可见性问题面试实战(下:synchronized和volatile底层对原子性、可见性、有序性的保证)

&#x1f308;&#x1f308;&#x1f308;&#x1f308;&#x1f308;&#x1f308;&#x1f308;&#x1f308; 欢迎关注公众号&#xff08;通过文章导读关注&#xff1a;【11来了】&#xff09;&#xff0c;及时收到 AI 前沿项目工具及新技术的推送&#xff01; 在我后台回复…

CHS_01.2.2.1+调度的概念、层次

CHS_01.2.2.1调度的概念、层次 调度的概念、层次知识总览调度的基本概念调度的三个层次——高级调度![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/6957fdec179841f69a0508914145da36.png)调度的三个层次——低级调度调度的三个层次——中级调度补充知识&#xff…

laravel8.*集成dingo

learnku中的dingo版本为2&#xff0c;不支持laravel8 实际上dingo已经出到了4&#xff0c;已经支持laravel9 社区活跃度已经不高了&#xff0c;本人特别讨厌重复造轮子&#xff0c;这里特此记录下 文档地址&#xff1a;https://learnku.com/docs/dingo-api/3.x github地址&…

9.1 Maven项目管理(❤❤❤❤)

9.1 Maven项目管理 1. Maven介绍2. 创建Maven项目2.1 创建2.2 结构分析3. Maven依赖管理3.1 简介3.2 设置下载镜像仓库4. 本地仓库与中央仓库5. Maven生命周期6. Maven插件技术1. Maven介绍

钡铼 楼宇暖通网关之 BACnet网关在空气源热泵智能控制系统中的应用介绍

前言 在刚刚过去的2023年&#xff0c;空气源热泵市场依然火爆&#xff0c;全线市场销量递增&#xff0c;各种新品层出不穷&#xff0c;市场认可度持续攀升&#xff0c;在整个采暖市场&#xff0c;空气源热泵已然成为当红明星。 热泵组管道比较复杂&#xff0c;传感器分布比较分…

路飞项目--02

补充&#xff1a;axios封装 # 普通使用&#xff1a;安装 &#xff0c;导入使用 const filmListreactive({result:[]}) axios.get().then() async function load(){let responseawait axios.get()filmList.resultresponse.data.results } # 封装示例&#xff1a;请求发出去之前…