mac编辑器vim美化

contents

环境

mac10.13.6,vim7(该版本mac自带的vim是7),git

mac下vim的配置文件有两处

一处是所有用户通配的位置,位于/usr/share/vim下,名称为vimrc,无后缀

另一处位于~/.vim下,是当前用户的配置切换到这个用户时,这个配置会顶替上一种配置

为了不让自己的配置影响到别的使用者(假使他们没有配置自己的vimrc配置),建议修改当前用户下,也就是~/.vim/vimrc的配置

效果呈现

一般的vim界面

进行配置之后

界面效果由两个vim插件完成

配色由插件gruvbox完成,gruvbox有两种颜色模式,light和dark模式,可以设置

vim-airline插件完成页面最下方的当前页面进度百分比等信息

安装

为了更好地管理插件的安装,管理插件的插件有

很久以前的vundle和比较轻量级而且迅速的vim-plugin

以前使用的是vundle,并不知道vim-plugin,后经评论区大佬推荐后尝试了一下,的确比vundle优秀很多

(推荐)使用vim-plugin管理我们的插件

打开终端并运行以下命令:

curl -fLo ~/.vim/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim

这里需要注意,下载下来的地址必须是~/.vim/autoload/plug.vim

否则接下来配置了vim之后会报错

Error detected while processing /Users/selton/.vim/vimrc:

E117: Unknown function: plug#begin

注意: 请在vim配置文件的开头第一句写明set nocompatible

set nocompatible,关闭兼容模式

也就是set nocompatible开启了vim相对于vi的很多新的功能,报错异步加载的功能

所以如果没有set nocompatible,接下来的plugin安装会下载成功,但是:PlugStatus查看状态就一直是失败

由于这个选项是最最基础的选项,会连带很多其它选项发生变动(称作副作用)

在配置文件中声明插件时,列表应该以 call plug#begin(PLUGIN_DIRECTORY) 开始,并以 plug#end() 结束

call plug#begin('~/.vim/plugged')
Plug 'kien/ctrlp.vim'
Plug 'vim-airline/vim-airline'
Plug 'morhetz/gruvbox'
call plug#end()

注意: ~/.vim/plugged路径是否正确,前后有无空格

之后输入

:PlugStatus

出现

x ctrlp.vim:

Not found. Try PlugInstall.

x vim-airline:

Not found. Try PlugInstall.

x gruvbox:

Not found. Try PlugInstall.

在这个竖分界面下输入

:PlugInstall

出现

Finishing ... Done!

ctrlp.vim: Resolving deltas: 100% (115/115), done.

vim-airline: Resolving deltas: 100% (396/396), done.

gruvbox: remote: Total 61 (delta 12), reused 40 (delta

输入

:PlugStatus

显示三个插件都是ok

在配置call plug#end()之后加入配置

" gruvbox setting
colorscheme gruvbox
set background=dark

保存退出之后,再次打开,发现配色和图片展示一致

(不推荐)使用vundle管理我们的插件

另一个插件vundle管理插件

安装vundle插件

git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim

件如果没有的话,在~/.vim下新建文件vimrc

在vimrc中写入

set nocompatible

​filetype off

set rtp+=~/.vim/bundle/Vundle.vim

​call vundle#begin()

​call vundle#end()

​filetype plugin indent on

在call vundle#begin()和call vundle#end()之间写入需要加入的插件

为了管理vundle自己这个插件,加入了这一行,可以不加入

​ Plugin 'VundleVim/Vundle.vim'

加入皮肤

​ Plugin 'morhetz/gruvbox'

加入页面信息

​ Plugin 'vim-airline/vim-airline'

之后:wq保存一下

:PluginInstall就开始自动下载和安装相应插件

发现虽然有了页面信息,也就是vim-airline插件起了作用

但是gruvbox依然没有起作用

在Plugin 'morhetz/gruvbox'下加入这两行

colorscheme gruvbox

set background=dark

dark就是展示的配色,还有light

保存退出后再次打开vim,发现报错

大意是找不到名为gruvbox的color主题

如果发生这种情况,接下来需要手动完成主题的安装

平常vim自带的颜色主题在/usr/share/vim/vim80/colors下

我们需要将gruvbox的主题文件拷贝到这个目录下

为什么vundle安装失败?原因可能就是普通用户下vundle帮助你下载好了gruvbox之后没有权利将文件移动到/usr/share/vim/vim80/colors下

可以看到gruvbox插件是下载下来的

在/Users/zyfselton/.vim/bundle/gruvbox/colors下的gruvbox.vim

切换到root将gruvbox.vim复制到/usr/share/vim/vim80/colors下

报错权限拒绝,这是mac的保护机制csrutil在搞鬼,需要重启mac,重启刚关闭的时候按住Command+R不放,直到出现苹果加载的logo,松开就可以,成功进入此时logo下的读条会变得很慢,读条结束就进入了mac的恢复模式(缺少很多东西),找到导航栏工具其中的终端,打开,输入csrutil disable关闭csrutil(最好事先记下这个命令),然后重启重复执行上述复制操作即可,完成后想要恢复开启这个csrutil功能,可以继续重启Command+R进入恢复模式后打开终端输入csrutil enable即可.

保存退出vim,再次打开,发现配色和图片展示一致

卸载vundle

vim中执行

:BundleClean

保存退出后删除vimrc中的 vundle配置

快速使用

  1. 打开终端并运行以下命令:

    curl -fLo ~/.vim/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim

  2. (如果没有)在~/.vim下新建文件vimrc

set nocompatible

" vim-plugin
"call plug#begin(PLUGIN_DIRECTORY)和plug#end()之间写插件名称 "这个目录将来会存放vim-plugin自动安装的下载的插件
call plug#begin('~/.vim/plugged') Plug 'kien/ctrlp.vim'
Plug 'vim-airline/vim-airline'
Plug 'morhetz/gruvbox' call plug#end() " gruvbox setting
colorscheme gruvbox
set background=dark
  1. vim一般模式输入:PlugInstall

mac编辑器vim美化的更多相关文章

  1. Mac之vim普通命令使用

    Mac之vim普通命令使用 标签: vim命令 高级一些的编辑器,都会包含宏功能,vim当然不能缺少了,在vim中使用宏是非常方便的: :qx 开始记录宏,并将结果存入寄存器x q 退出记录模式 @x ...

  2. Mac 下VIM配置

    Mac下VIM配置 首先,我们去这里下载MacVim,也可用这个网址:(http://code.google.com/p/macvim/),进入后的界面如下: ____________________ ...

  3. Mac 配置 vim

    Mac 配置 vim 安装 vim 7.4 cd ~ hg clone https://code.google.com/p/vim/ cd vim ./configure --with-feature ...

  4. 程序员的编辑器——VIM

    from:http://blog.chinaunix.net/uid-11278770-id-148579.html Chinaunix首页 | 论坛 | 认证专区 | 博客 登录 | 注册      ...

  5. Linux系列教程(十)——Linux文本编辑器vim

    通过前面几篇博客我们终于结束了Linux常用命令的介绍,Linux常用命令主要包括以下: ①.Linux文件和目录处理命令 ②.Linux链接命令和权限管理命令 ③.Linux文件搜索命令 ④.Lin ...

  6. Kali Linux的vi编辑器/vim编辑器使用方法

    转载声明:本文为转载文章 原文地址:https://www.52host.cn/blog/kali-linux-vi-editor/ Kali Linux系统的vi编辑器/vim编辑器的使用和Cent ...

  7. Linux常用命令——文本编辑器Vim

    Linux常用命令--文本编辑器Vim Linux  Vim常用操作 插入命令 a 在光标所在字符后插入 A 在光标所在行尾插入 i 在光标所在字符前插入 I 在光标所在行首插入 o 在光标下插入新行 ...

  8. Linux文本编辑器vim

    目录 1.vim 的工作模式 2.插入命令 3.定位命令 4.删除命令 5.复制和剪切命令 6.替换和取消命令 7.搜索和搜索替换命令 8.保存和退出命令 9.vim 高级操作 10.总结 通过前面几 ...

  9. LINUX文件内容处理及文本编辑器vim

    Linux基本操作命令 echo命令 echo命令: 把echo后面的内容显示到屏幕. -n 显示内容的时候不显示每行结尾的回车 echo 内容 >> 文件名 表示把内容加到一个文件的末尾 ...

随机推荐

  1. java并发特性:原子性、可见性、有序性

    要想并发程序正确地执行,必须要保证原子性.可见性以及有序性.只要有一个没有被保证,就有可能会导致程序运行不正确. 1.原子性(Atomicity) 原子性是指在一个操作中就是cpu不可以在中途暂停然后 ...

  2. 多线程中,ResultSet为空,报错空指针

    最近在数据库查询数据时,由于数据量太大,使用了多线程,通过线程池建了好几个线程,然后调用了一个封装好的jdbc查询语句. 结果在多线程中,ResultSet报错空指针. 仔细查阅后,才发现多个线程访问 ...

  3. 插件 uploadify

    一.属性 属性名称 默认值 说明 auto true 设置为true当选择文件后就直接上传了,为false需要点击上传按钮才上传 . buttonClass ” 按钮样式 buttonCursor ‘ ...

  4. select_shape_proto算子的几种特征模式含义解析

    select_shape_proto是一个非常有用的region筛选算子,但是由于难以理解,因此一般人使用得不是太多. 算子签名如下: select_shape_proto(Regions, Patt ...

  5. qt QTcpServer与QTcpSocket通讯

    分类: C/C++ TCP        TCP是一个基于流的协议.对于应用程序,数据表现为一个长长的流,而不是一个大大的平面文件.基于TCP的高层协议通常是基于行的或者基于块的.          ...

  6. 在 macOS 中激活 Astash Professional

    Astah Professional v7.2.0-1ff236版安装完毕后,直接用压缩包内的 astah-pro.jar 替换原安装目录内的同名文件(/Applications/astah prof ...

  7. [Selenium]Grid模式下运行时打印出当前Case在哪台node机器上运行

    当Case在本地运行成功,在Grid模式下运行失败时,我们需要在Grid模式下进行调试,同时登录远程的node去查看运行的情况. Hub是随机将case分配到某台node上运行的,怎样知道当前的cas ...

  8. Android的/system/lib里加入自己的so库

    执行下命令: 1 重新挂载/system目录,使之能读写:mount -o remount,rw /dev/null /system 2 修改这个文件的权限:chmod 777 /system 3 利 ...

  9. SCI EI期刊

    coming soon 关键字:Computer Vision, Computing, Image, Intelligence, IEEE, Compution <Journal of Expe ...

  10. B-spline Curves 学习之B样条曲线性质(5)

    B-spline Curves: Important Properties 本博客转自前人的博客的翻译版本,前几章节是原来博主的翻译内容,但是后续章节博主不在提供翻译,后续章节我在完成相关的翻译学习. ...