昨天晚上+今天早上怒赶了一份关于Vim的自动化配置的Shell脚本,之前在github上见过一个这么一个类似的脚本项目,然后又见到同校的有一位师兄也写过这么一个类似的脚本文件,然后我也抽分跟着写一份属于自己的Vim的配置脚本文件,这一份文件的配置很大程度上参考了以上的两份配置文件,当然也加上了不少属于自己的配置,总的一句话来说综合了上述两份的优势,去掉不适合自己的一些配置,添加上适合自己配置的一个结合体。

配置文件如下:(名字保存为ourvim.sh)

#!/bin/bash
cd
echo "一起来愉快地使用Vim来敲打出我们的代码"
install_handle=""
if which apt-get >/dev/null; then
install_handle="apt-get"
elif which yum >/dev/null; then
install_handle="yum"
else
echo -n "Enter your installer:"
read install_name
install_handle=$install_name
fi
sudo $install_handle install -y gcc g++ vim ctags xclip astyle python-setuptools python-dev git python-pip python-twisted xsel Cmake sl cowsay > /dev/null
sudo pip install --upgrade autopep8 > /dev/null #python缩进 echo "------------把老vim备份移除--------------------------"
[ -d .vim ] && mv -v .vim .vim.$(stat -c%Y .vim)
[ -f .vimrc ] && mv -v .vimrc .vimrc.$(stat -c%Y .vimrc) echo "------------咱们来休闲一下---------------------------"
echo " duang !duang !duang !duang !duang !"
sl
cowsay "我不会使用Vim肿么办?"
cowsay "没关系,就让这个脚本带你装逼带你飞!!"
echo "------------从github上获取Vim的一些配置文件-----------"
[ ! -d "myvimrc" ] && git clone git@github.com:jusonalien/ourvim.git > /dev/null
cp -R ~/ourvim/vim ~/.vim
cp ~/ourvim/vimrc ~/.vimrc echo "------------插件的安装-------------------------------"
echo "安装vundle,一个管理插件的插件"
git clone https://github.com/gmarik/vundle.git ~/.vim/bundle/vundle > /dev/null
cd ~/.vim/bundle
echo "这个Vim的配置具体请到 https://github.com/jusonalien/ourvim 下查看" > jusonalien
echo "安装vim颜色" >> jusonalien
echo "安装h与cpp切换插件" >> jusonalien
echo "安装好看的状态条" >> jusonalien
echo "安装目录树插件,完成后使用时按F2即可" >> jusonalien
echo "安装处理括号神器" >> jusonalien
echo "安装错误提示插件" >> jusonalien
echo "安装OutLine插件" >> jusonalien
echo "安装Command-T,用于模糊搜索" >> jusonalien
echo "jusonalien 正在努力地为您安装各种好玩的插件" >> jusonalien
echo "请耐心等待。。。。。。。。。" >> jusonalien
echo "按F5,会执行程序" >> jusonalien
echo "按F4,会显示OutLine" >> jusonalien
echo "按F3,会显示目录" >> jusonalien
echo "程序员只有两种信仰" >> jusonalien
echo "第一种是信仰Vim的" >> jusonalien
echo "另一种是不信仰Vim的" >> jusonalien vim jusonalien -c "BundleInstall" -c "q" -c "q"
rm jusonalien
cd ~/.vim/bundle/YouCompleteMe
sudo ./install.sh --clang-completer ## 设置solarized 主题的颜色
mkdir ~/.fonts
cd ~/.fonts
git clone https://github.com/eugeneching/consolas-powerline-vim.git
echo "-----------开始配置颜色咯-------------------"
#配色开始
echo 'export TERM=xterm-256color' >> ~/.bashrc
cp ~/ourvim/dircolors.256dark ~/.dircolors
eval 'dircolors ~/.dircolors' > /dev/null
cd ~/ourvim
. set_dark.sh
rm -Rf ~/ourvim
echo "安装终于完成~\(≧▽≦)/~啦啦啦"

这份文件的使用流程:

1.先为shell脚本赋予可执行的权限:

chmod +x ourvim.sh

2.然后再执行文件:

./ourvim.sh

这个也算是个人的一个小小的开源项目吧~

配置好后的效果大致如下:

这个项目已经托管到个人的Github的主页了,详细请点击链接~欢迎各路Vim爱好者使用。

关于Vim的一个配置文件的更多相关文章

  1. 【OpenWRT之旅】如何自定义一个配置文件的设置界面

    作者:gnuhpc 出处:http://www.cnblogs.com/gnuhpc/ 1. 引言 OpenWRT中采用LuCI作为它的Web interface界面框架,采用Lua语言.在本文中将以 ...

  2. vue+webpack项目实际工作中需要生成一个配置文件供生产环境使用

    大家都知道webpack打包十分方便,但是在工作中,前端写好的项目需要后端进行部署,就需要有一个配置文件. 使用插件 :  GenerateAssetPlugin , 使用方法 : 1  在项目中安装 ...

  3. vue打包之后生成一个配置文件修改接口

    前言: 我们的vue代码打包上传到服务器之后, 要是数据接口 以后换了域名什么的,是不是需要重新去vue文件里修改接口. 能不能生成一个配置文件,里面可以配置域名或其它什么字段之类的,这样以后换了域名 ...

  4. Mac、Linux下两个Emacs共享一个配置文件

    Mac.Linux下两个Emacs共享一个配置文件 有些嵌入式的实验需要在Linux进行,就安装了RHEL6.4的虚拟机,下载并编译了Emacs. 在Linux的.emacs文件中加入以下语句,即可引 ...

  5. linux常用终端指令+如何用vim写一个c程序并运行

    在装好ubuntu之后今天学习了一些linux的一些基础知识: windows里面打开命令窗口是win+r,在linux系统里面,ctrl+alt+t打开终端,今天的一些指令都是围绕终端来说的 首先s ...

  6. vim note(6)--vim的一个较全的介绍(转)

    vim的配置文件 ~/.vimrc       用户的默认配置文件 ~/.vim/plugin/   用户的默认脚本文件的存放文件夹 ~/.vim/ftplugin/ 用户的默认文件类型相关脚本文件的 ...

  7. Linux系统的vim编辑器的配置文件的初步说明

    vim 编辑器的基本说明 vi编辑器的功能类似于Windows下的记事本,只能编辑普通文本,而vim编辑器则相当于Windows下的notepad++等高级编辑器,提升了代码开发效率. 将vi命令默认 ...

  8. Vim的强大配置文件

    我的vim配置主要有以下优点: 1.按F5可以直接编译并执行C.C++.java代码以及执行shell脚本,按“F8”可进行C.C++代码的调试 2.自动插入文件头 ,新建C.C++源文件时自动插入表 ...

  9. Vim的强大配置文件(一键配置)

    转:https://blog.csdn.net/u010871058/article/details/54253774/ 花了很长时间整理的,感觉用起来很方便,共享一下. 我的vim配置主要有以下优点 ...

随机推荐

  1. Ubuntu 配置Apache虚拟目录

    http://blog.csdn.net/spring21st/article/details/6589300 Ubuntu 配置Apache虚拟目录 http://blog.csdn.net/spr ...

  2. Selenium学习系列---- FirePath的安装和使用

    在用Selenium编写测试用例的时候,需要对对网页元素上定位,而现在很多的浏览器是可以看到网页上相关的元素信息,可以查看某一个网页的元素信息,通过定位的方式查找元素.另外安装好Selenium ID ...

  3. Python 单向队列Queue模块详解

    Python 单向队列Queue模块详解 单向队列Queue,先进先出 '''A multi-producer, multi-consumer queue.''' try: import thread ...

  4. Leetcode 297.二叉树的序列化和反序列化

    二叉树地序列化和反序列化 序列化是将一个数据结构或者对象转换为连续的比特位的操作,进而可以将转换后的数据存储在一个文件或者内存中,同时也可以通过网络传输到另一个计算机环境,采取相反方式重构得到原数据. ...

  5. 旅行(bzoj 3531)

    Description S国有N个城市,编号从1到N.城市间用N-1条双向道路连接,满足从一个城市出发可以到达其它所有城市.每个城市信仰不同的宗教,如飞天面条神教.隐形独角兽教.绝地教都是常见的信仰. ...

  6. 《effective C++》:条款36——绝不重新定义继承而来的非虚函数

    (1)当派生类中重写了基类的非虚函数时,这个时候这个函数发生的是静态绑定 下面中的代码中: 定义一个基类B,基类定义了函数fcm,fcm是非虚的函数. 定义一个派生类D,派生类重新定义了fcm. 当用 ...

  7. 建设DevOps统一运维监控平台,先从日志监控说起

    https://blog.csdn.net/jessise_zhan/article/details/80129915 https://blog.csdn.net/JThink_/article/de ...

  8. Codeforces Round #533 (Div. 2) E 最大独立集

    知识点 最大独立集(set) = 补图的最大团(clique ) 最小顶点覆盖 + 最大独立集 = V E. Helping Hiasat time limit per test 2 seconds ...

  9. HDU 2255 二分图最佳匹配

    奔小康赚大钱 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Subm ...

  10. 三、fs文件操作模块

    fs模块用于文件的读写等操作. 该模块有如下这些方法: 1.fs.stat() : 检测是文件还是目录 const fs = require('fs'); fs.stat('test.html',fu ...