还记得在线有个维护博客园的学长说过,这网站的前端做的贼丑,今日一看果真如此。其实我想说毕竟干货多,没有那么多花花肠子。下面开始进入正题。

在入坑了sublime、vscode、atom、notepad++之后,决定进入vim这个大坑,毕竟搞运维的,与终端打交道的时间多,还有一定vi基础。

本文及以后更新的关于vim学习的笔记均以windows下gvim8.0为例。

先放一张gvim的丑照(来自网络)

我的gvim最开始使用的时候遇到的问题就是菜单栏和内容乱码问题,可以在_vimrc中写入以下代码:

 "解决菜单和内容中文乱码问题
if has("multi_byte")
set encoding=utf-
set termencoding=utf-
set formatoptions+=mM
set fencs=utf-,gbk
if v:lang =~? '^/(zh/)/|/(ja/)/|/(ko/)'
set ambiwidth=double
endif
if has("win32")
source $VIMRUNTIME/delmenu.vim
source $VIMRUNTIME/menu.vim
language messages zh_CN.utf-
endif
else
echoerr "Sorry, this version of (g)vim was not compiled with +multi_byte"
endif

接下来换一款口碑还不错的主题:solarized

gvim自带的颜色主题没有这个可以在https://github.com/altercation/vim-colors-solarized上下载

下载解压后把colors目录下的solarized.vim拷贝到gvim安装目录下的vim80下的colors中,然后在_vimrc中写入:

 "设置行号和语法高亮
syntax enable
syntax on
set nu
"修改主题为solarized
set t_Co=
set background=dark "light和dark两个版本
colorscheme solarized
hi Normal ctermfg= ctermbg=none

每次编辑文件后,就出现以.un~结尾的文件自动生成,这是vim的undofile和备份文件,可以这样避免:

 "禁止vim生成 un~
set noundofile
set nobackup
set noswapfile

windows下的gvim的菜单栏和工具栏在我看来有点多余,很多功能可以用快捷键实现,而且不美观,可以这样隐藏:

 "隐藏菜单栏和工具栏,用F2切换
set guioptions-=m
set guioptions-=T
map <silent> <F2> :if &guioptions =~# 'T' <Bar>
\set guioptions-=T <Bar>
\set guioptions-=m <bar>
\else <Bar>
\set guioptions+=T <Bar>
\set guioptions+=m <Bar>
\endif<CR>

接下来安装一个文件浏览器插件NERDTree,使得gvim可以在左侧完美的显示文件目录

插件下载地址:http://www.vim.org/scripts/script.php?script_id=1658

下载之后直接解压到gvim的安装目录下的vimfiles目录中,这时会有同名的文件夹,选择全部替换。然后在_vimrc中写入:

 "设置文件浏览器快捷键为F3
map <F3> :NERDTreeMirror<CR>
map <F3> :NERDTreeToggle<CR>

保存后再打开gvim按F3就可以调出文件目录了

然后gvim就成这样了:

当然,以上gvim插件的安装方式略显复杂,接下来的时间我会用git for windows来解决这个问题,

vim学习之改头换面(基础配置)的更多相关文章

  1. vim学习、各类插件配置与安装

    vim学习.各类插件配置与安装 vim 插件 配置 1. vim学习 vim基础学习:根据网上流行基础文章<简明Vim练级攻略>,进阶书籍<vim实用技巧>.注:进阶书籍可以在 ...

  2. Emacs学习心得之 基础配置

    作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Emacs学习心得之 基础配置 1.前言2.基础配置 一.前言 本篇博文记录了Emacs的一 ...

  3. vim学习、各类插件配置与安装【转】

    转自:https://www.cnblogs.com/forest-wow/p/6916531.html 1. vim学习 vim基础学习:根据网上流行基础文章<简明Vim练级攻略>,进阶 ...

  4. Java开发学习(三)----Bean基础配置及其作用范围

    一.bean基础配置 对于bean的基础配置如下 <bean id="" class=""/> 其中,bean标签的功能.使用方式以及id和clas ...

  5. vim学习心得(一)——Cygwin下vim配置

    关于Vi有很多传说.其中最为著名的是: “Vi是编辑器之神,Emacs是神的编辑器” Emacs没有用过,但是Vi在Linux经常使用,所以,掌握好vi非常重要!!! Vim(Vi Improved) ...

  6. VIM学习二: VIM配置代码及效果图

    vim学习及插件 参见:http://www.cnblogs.com/caixu/p/6337926.html .vimrc配置 "***************************** ...

  7. Hibernate学习笔记2.1(Hibernate基础配置)

    Hibernate基础配置 1.<property name="hbm2ddl.auto">update</property> 在SessionFactor ...

  8. hibernate学习笔记(1)基础配置与jar包

    下载hibernate基础jar包,并解压hibernate-core-4.2.4.final 在myeclipse中添加hibernate的dtd支持: location为D:\学习\imooc-h ...

  9. Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户基础配置

    缺点,ftp密码是和系统密码是一致的,并不安全 先设置两个测试用户 test1      123123 test2      123123 基本用户基础配置 1.本地用户基本配置 local_enab ...

随机推荐

  1. 《Hands-On Machine Learning with Scikit-Learn&TensorFlow》mnist数据集错误及解决方案

    最近在看这本书看到Chapter 3.Classification,是关于mnist数据集的分类,里面有个代码是 from sklearn.datasets import fetch_mldata m ...

  2. 【转】分享两个基于MDK IDE的调试输出技巧

    我们在STM32开发调试过程中,常常需要做些直观的输出,如果手头没有相关的设备或仪器,我们可以使用 IDE自带的工具.这里分享两个基于MDK  IDE的调试输出技巧. 一.使用其自带的逻辑分析仪查看波 ...

  3. 移动端利用-webkit-box水平垂直居中(旧弹性盒)

    新弹性盒水平垂直居中参考:http://www.cnblogs.com/ooo0/p/7562884.html 新旧弹性盒样式参考:http://www.cnblogs.com/ooo0/p/7562 ...

  4. UOJ#422 小Z的礼物

    非常神奇的一个套路......首先min-max容斥一波,变成枚举子集然后求所有子集min的期望. 一个子集的期望怎么求?我们可以求出所有的r个选法中能够选到这个子集的方案数k,那么概率就是k / r ...

  5. Echarts关于仪表盘

    https://blog.csdn.net/zc763375777/article/details/53837391 来无事,制作不一样的图标一发,领导让把仪表盘做成百分条,我TM也是醉了,大体样式如 ...

  6. 从 date 中取出 小时和分钟进行比较

    public class T1 { public static void main(String[] args) throws ParseException { SimpleDateFormat df ...

  7. 2. github创建 git仓库,克隆,拉取和推送操作(所有的git命令前提是一定在当前项目目录下)

    步骤: 1.点击小猫,回到初始页面 2.点击start a project,首先会出现一个验证email地址(我们注册的时候,有一个email输入,进去邮箱验证一下) 3.重新点击start a pr ...

  8. appium-基础搭建,适配,问题,优化,提速

    搭建开发环境,导入testng/log4j/maven 1.配置jdk环境 2.安装appium,下载eclipse-adt,配置appium环境 github.com/getlantern/foru ...

  9. c#委托中的匿名方法和lambda表达式

    一.一般委托方式 Func<int, int, int> AddMethodHander; public unName() { AddMethodHander += AddMethod; ...

  10. Python加载声音

    对于音频的操作可以使用pygame包中的sound 和 music对象进行音乐播放. Sound对象适合处理较短的音乐,如OGG和WAV格式的音频文件. Music对象出来可以播放OGG.WAV音频外 ...