我的vim配置相关
谨以此文记录下之前的折腾。(后续可能还会折腾什么)
目标
我的目的很简单,就是希望能有一个启动快速的文本编辑器,可以简单的代码着色,vim键位,简单的文本修改,打开大点的文件不发愁,可以简单的format一些文件格式等等。所以,windows下我就是用gvim,mac下我用Mac Vim。没错,gui为主。不咋用tui。
Neovim
我已经不用这个了,因为并非重度vim用户,根本用不出区别来。什么job啊,什么luajit啊,什么完整的terminal内核啊,什么独立进程嵌入到其他应用中啊。雨我无瓜。
配置&插件
下面的配置基本上都是要在一个vim-plug插件的基础上进行的。没这个,我还真没法继续折腾。
安装vim-plug
Unix&Linux
curl -fLo ~/.vim/autoload/plug.vim --create-dirs \
https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
You can automate the process by putting the command in your Vim configuration file as suggested here.
Windows (PowerShell)
iwr -useb https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim |`
ni $HOME/vimfiles/autoload/plug.vim -Force
插件推荐
tpope/vim-sensible,大家都用的vim的默认配置。虽然我仍然又加了一些内容。。。不过还好还好。yianwillis/vimcdoc,vim的中文文档。我英文不好,看看中文的有助于提高(嘴硬octol/vim-cpp-enhanced-highlight,强化cpp的语法着色。挺不错的。rhysd/vim-clang-format,vim的indent怎么也不如clang-format好用,是不是?我设置成了F3(看别人都这么搞)preservim/tagbar,可以显示大纲视图之类的,挺好用的。需要自己安装一下ctag。brew或者scoop一下。我还设置了F8的快捷键(人家推荐的preservim/nerdtree,别人都装,我也象征性的安装了。我还设置了快捷键F10Yggdroot/indentLine,可以给编辑器加上缩进线显示(2021/12/16)tpope/vim-surround,最近发现还是很需要这个插件的,能省不少事(2022/09/28)easymotion/vim-easymotion,用了一下,跳转的还是很不错。idea也有,先安装AceJump再安装idea-easymotion(2022/09/28)
颜色主题one-half
我很喜欢这个颜色主题。无论是深色还是浅色。
网址:https://github.com/sonph/onehalf
不过我个人只用colorscheme,并不是很喜欢airline什么的。所以我只是把colors文件夹里面的东西拷贝出来。。。
配置流程
我就是记录一下我自己的配置。要不换个电脑就又忘了。以后换个设备,步骤就是这样子的:
- 安装
Mac Vim,或者gvim - 安装
vim-plug - 找到
one-half的主题,把vim/colors里面的两个主题偷走 - 直接覆盖掉下面的配置文件到
.vimrc - 确认自己是否安装了
clang-format以及ctag - 都安装完了?肯定还少个字体,去Google font里面找到
roboto mono安装上吧 - 这次都折腾好了吧。运行
PlugInstall吧。记得FQ头,稳一些。 - 重新设置了一下
leader键,映射到了空格键:let mapleader=" ",并且加了一些复制粘贴的快捷键。
(2021/12/16)Windows下,用gvim就可以。其实只要去掉工具栏(以及滚动条 我后来保留垂直滚动条了22/09/28),看上去也是可以很清爽的。稍微调整了一下文件配置。然而因为懒,所以没有合并起来。大体是差不多的。
(2021/12/16)我勤快了一下,合并了两个平台的.vimrc文件配置。
下面是.vimrc的内容:
" 到哪里都要用jj
inoremap jj <Esc>
" 简单的leader快捷映射,强化复制粘贴
let mapleader=" "
" copy and paste
noremap <leader>y "zy
noremap <leader>Y "zY
noremap <leader>p "zp
noremap <leader>P "zP
" windows下设置文件编码
set encoding=utf-8
let &termencoding=&encoding
set fileencodings=utf-8,gb18030,cp936,usc-bom,latin1
set cursorline
set guifont=Roboto\ Mono:h10
set guifontwide=YouYuan:h10
set guioptions=cm
set winaltkeys=yes
if has('gui_running')
colorscheme onehalflight
set go+='r' " 总是显示右边的滚动条
endif
set nu! " 显示行号
set rnu! " 显示相对行号
set autoindent
set smartindent
set smartcase " 智能大小写搜索
set smarttab " 根据文件自动判断tab大小
set expandtab " tab扩展为空格
set tabstop=4 " tab大小
set shiftwidth=4 " 每一级锁进大小
" Change cursor shape between insert and normal mode in iTerm2.app
"if $TERM_PROGRAM =~ "iTerm"
" let &t_SI = "\<Esc>]50;CursorShape=1\x7" " Vertical bar in insert mode
" let &t_EI = "\<Esc>]50;CursorShape=0\x7" " Block in normal mode
"endif
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
call plug#begin('~/.vim/plugged')
Plug 'yianwillis/vimcdoc'
Plug 'tpope/vim-sensible'
Plug 'tpope/vim-surround'
Plug 'easymotion/vim-easymotion'
Plug 'octol/vim-cpp-enhanced-highlight'
Plug 'rhysd/vim-clang-format', {'on': 'ClangFormat'}
Plug 'preservim/tagbar', {'on': 'TagbarToggle'}
Plug 'preservim/nerdtree', {'on': 'NERDTreeToggle'}
call plug#end()
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
if exists(':Tagbar')
map <F8> :TagbarToggle<CR>
endif
if exists(':NERDTree')
map <F10> :NERDTreeToggle<CR>
endif
if exists(':ClangFormat')
map <F3> :ClangFormat<CR>
endif
我的vim配置相关的更多相关文章
- VIM配置相关记录
把一直使用中的vim配置做个GIT入库管理,也把之前积累在机器上的文档,做个汇总. https://github.com/wujuguang/kyvim 1. 安装完整版vim vi和vim的区别?在 ...
- 快速学习C语言三: 开发环境, VIM配置, TCP基础,Linux开发基础,Socket开发基础
上次学了一些C开发相关的工具,这次再配置一下VIM,让开发过程更爽一些. 另外再学一些linux下网络开发的基础,好多人学C也是为了做网络开发. 开发环境 首先得有个Linux环境,有时候家里机器是W ...
- Env:VIM配置
注:文章来自于http://www.cnblogs.com/ma6174/archive/2011/12/10/2283393.html 花了很长时间整理的,感觉用起来很方便,共享一下. 我的vim配 ...
- Vim配置IDE开发环境
我的vim IDE界面: 1.安装Vim和Vim基本插件首先安装好Vim和Vim的基本插件.这些使用apt-get安装即可:lingd@ubuntu:~/arm$sudo apt-get instal ...
- VIM配置(转载)
注: 转载于http://www.cnblogs.com/ma6174/ 花了很长时间整理的,感觉用起来很方便,共享一下. 我的vim配置主要有以下优点: 1.按F5可以直接编译并执行C.C++.ja ...
- vim配置(vimplus)
vim配置(vimplus) vimplus vimplus是vim的超级配置安装程序 github地址:https://github.com/chxuan/vimplus.git,欢迎star和fo ...
- Vim配置及使用技巧
要说Linux下比较好用的文本编辑器,我推荐vim(当然很多人都用emacs,可我没用过),用vim也有一年左右,有些心得体会想与诸位分享.在我的学习过程中,借鉴了不少优秀的博客,其中有csdn大神n ...
- 我的vim配置脚本
自己的VIM 配置脚本,拥有自主独立知识产权(参考了一点别人的),只使用了一个插件ctags ,主要实现了一下功能: 自动补全括号,双引号,单引号,包括{},(),"" , ''只 ...
- CentOS 6.5 下Vim 配置图解
分享个CentOS 6.5 下Vim 配置图文详解,希望对大家有所帮助. 1. 登录并进入你常用的用户名下,查看其主目录 命令: # su xxx $ cd xxx $ ls -a 2.查看并建立目录 ...
- vim编码相关
与vim编码相关的四个配置: encoding:vim核心编码,所有vim交换区,信息提示区都用这个编码.打开文件的编码如果是其他编码,会自动转换为核心编码,保存时再转回文件编码. fileencod ...
随机推荐
- postgresql添加mysql_fdw测试过程
请先确认已经安装好mysql_fdw,如果没有配置好点这:https://www.cnblogs.com/ohsolong/p/13041989.html 1.切换至postgres用户,输入密码登录 ...
- java中锁的概念/介绍
前言 Java提供了种类丰富的锁,每种锁因其特性的不同,在适当的场景下能够展现出非常高的效率.本文旨在对锁相关源码(本文中的源码来自JDK 8和Netty 3.10.6).使用场景进行举例,为读者介绍 ...
- vue学习笔记(一)---- vue指令(在vue中使用样式的方式)
认真学习,认真记录,每天都要有进步呀!!! 加油叭!!! 一.在vue中使用样式的方式: 1. 直接传递一个数组,注意: 这里的 class 需要使用 v-bind 做数据绑定 <style&g ...
- 【LeetCode】三数之和+四数之和(双指针)
之所以放在一起是因为,"四数之和"的解题方法基本与"三数之和"一致 由此我们可以推出n数之和的解法 本质上,我们只是使用双指针的方法降低此类问题的时间复杂度 当 ...
- zookeeper04---ZAB协议
转https://www.jianshu.com/p/2bceacd60b8a 1.什么是Zab协议 1.1Zab协议简介 1.2 Zab 协议的特性(怎么保持数据一致性) 2.Zab 协议实现的作用 ...
- SQL笔试真题练习
一.现有以下两张表: 第一张表名为cust,其表结构如下: 字段名 字段说明 是否主键 Studentno 学号,数据类型为整型的 是 Name 学生名字,数据类型为字符串型的 否 Address 学 ...
- 【ASP.NET Core】标记帮助器——抽象层
标记帮助器,即 Tag Helpers.这个嘛,就直接翻译了,叫"标记帮助器",虽然不好听,但只能这样了.当然你翻译为"标记增强器"也行. 所谓标记帮助器,就是 ...
- 安卓逆向 创建自己一个SO库
要求 1.能调用java中的方法 2.有返回值 如何完成一个SO ? public native String getText(); //第一肯定是得创建一个方法 cmd指令自动生成对应接口 生成完后 ...
- CF1418D Trash Problem
题目传送门 思路 这题其实非常的简单,完全到不了 \(\mathcal *2100\). 发现这个题目描述有点诈骗,但是翻译的挺不错,实质上问题就是给你 \(n\) 个点,让你动态维护相邻两个点的差值 ...
- ENCOURAGE研究: 病情中度活动RA获得深度缓解后有望实现停药
标签: 类风湿关节炎; TNF拮抗剂; 维持期减停 病情中度活动的RA患者在获得深度缓解后有望实现停用生物制剂 电邮发布日期: 2016年2月3日 病情中度活动的类风湿关节炎(RA)患者通过传统DMA ...