Enjoy coding

iTerm配置

主题选择

  • Solarized Dark
  • LiquidCarbon

字体选择

  • Cousine for Powerline(需要安装Powerline字体库), 18pt, Regular

Powerline 字体安装

oh-my-zsh安装与配置

前提条件

  • oh-my-zsh依赖zsh, 如果计算机中没有则使用 brew install zsh 安装zsh

安装oh-my-zsh

配置oh-my-zsh

  • 安装bunnyruni主题(oh-my-zsh自带了很多主题但是没有这个主题)

    • 官方: bunnyruni: https://github.com/jopcode/oh-my-zsh-bunnyruni-theme
    • 这里也已经给出了安装步骤
      1. mkdir -p $ZSH_CUSTOM/themes && curl https://raw.githubusercontent.com/jopcode/oh-my-zsh-bunnyruni-theme/master/bunnyruni.zsh-theme -L -o $ZSH_CUSTOM/themes/bunnyruni.zsh-theme
      2. 修改.zshrc配置文件
        1. 打开配置文件.zshrc
        2. 修改ZSH_THEME为ZSH_THEME="bunnyruni", 大约是在第10行
      3. 执行exec $SHELL使配置生效

终端命令行高亮

终端命令提示

在终端打开github

  • 安装git-open
  • 官网: git-open: https://github.com/paulirish/git-open
  • 这里也给出了安装步骤
    1. git clone https://github.com/paulirish/git-open.git $ZSH_CUSTOM/plugins/git-open
    2. 在.zshrc配置文件中找到plugins所在的那一行, 该为plugins=(git zsh-autosuggestions git-open)

VIM 配置

安装VIM

配置文件(在这之前先安装并配置Vundle)

  • 已经给出了配置文件, 在配置文件中也给出了说明, 直接拷贝即可, 但是建议不要删除配置文件中的内容而是不断地在对应的位置(在配置文件中已经注释了哪种配置要写到哪里)追加

" ************************** Basic Settings *************************
set nocompatible " required, so don't remove it.
filetype off " required, so don't remove it.
syntax on
set hlsearch
set ts=4 " set tab space
set expandtab
set sw=4
set ic " ignore case
set ai
set ci
set nu " show line number
set ruler
set wildmenu
set showcmd
hi Pmenu ctermbg=lightblue set nofoldenable
set encoding=utf8
" set foldmethod=indent
set clipboard=unnamed " let vim share the clipboard with system -> really useful. set completeopt-=preview
set completeopt=longest,menu
set relativenumber au BufWinLeave * silent mkview "
au BufRead * silent loadview " " ******************* Customized Keyboard Mapping ***********************
nnoremap <space> za " open/close code folding.
let mapleader = "@" " ******************* Keyboard Mapping For CompleteParameter.vim Plugin ***************
" ************* Github: https://github.com/tenfyzhong/CompleteParameter.vim **********
inoremap <silent><expr> ( complete_parameter#pre_complete("()")
smap <c-j> <Plug>(complete_parameter#goto_next_parameter)
imap <c-j> <Plug>(complete_parameter#goto_next_parameter)
smap <c-k> <Plug>(complete_parameter#goto_previous_parameter)
imap <c-k> <Plug>(complete_parameter#goto_previous_parameter) " *** Warning area(You'd better don't modify anything here) **
" It's necessary to set ycm_global_ycm_extra_conf variable here so that the YCM can work.
let g:ycm_global_ycm_extra_conf='~/.vim/bundle/YouCompleteMe/third_party/ycmd/.ycm_extra_conf.py'
let g:ycm_key_invoke_completion = '<c-k>' " code hint " auto complete when you input 2 characters
let g:ycm_semantic_triggers = {
\ 'c,cpp,python,java,go,erlang,perl': ['re!\w{2}'],
\ 'cs,lua,javascript': ['re!\w{2}'],
\ } " close code syntax checking
let g:ycm_show_diagnostics_ui = 0 let g:ycm_min_num_of_chars_for_completion=1 let g:indentLine_char = "┆"
let g:indentLine_enabled = 1
let g:autopep8_disable_show_diff=1 " ================ Setting for vim status line ===============
set rtp+=~/.vim/bundle/powerline/powerline/bindings/vim
set guifont=Sauce\ Code\ Powerline:h14.5
set laststatus=2
set encoding=utf-8
set t_Co=256
set number
set fillchars+=stl:\ ,stlnc:\
set term=xterm-256color
set termencoding=utf-8
set background=light
" ============================================================ set rtp+=~/.vim/bundle/Vundle.vim
set rtp+=~/.vim/bundle/CompleteParameter.vim
call vundle#begin() " different from other Plugins, this `Plugin 'gmarik/Vundle.vim'` statement should
" be written here.
Plugin 'gmarik/Vundle.vim' call vundle#end() " required, so don't remove it.
filetype plugin indent on " required, so don't remove it. " ********************** Plugin Area ************************
" Install Plugin
" autocmd vimenter * NERDTree Plugin 'tmhedberg/SimpylFold'
Plugin 'Valloric/YouCompleteMe'
Plugin 'scrooloose/nerdtree'
Plugin 'kien/ctrlp.vim' " use ctrl + p to search files
Plugin 'scrooloose/nerdcommenter' " commenter: \cc \cu -> use `\cc` to comment code, use `\cu` to uncomment code
Plugin 'Yggdroot/indentLine'
Plugin 'powerline/powerline'
  • 如果已经将上面的配置文件拷贝到了.vimrc中

    1. 执行vim
    2. 在normal模式下执行PluginInstall安装插件, 注意在安装YCM的时候非常地慢, 请耐心等待
    • 文件中的hi Pmenu ctermbg=lightblue语句是这是VIM弹出菜单的背景颜色, 通过normal模式下:hi查看, 颜色的值为0-255, 每一个字符表示的颜色都可以添加前缀light和dark
    • 使用ctrl + p键可以在当前目录下进行全局搜索
    • \cc注释一行, \cu取消注释
    • 在normal模式下, 使用:NERDTree打开目录
    • 在normal模式下, 使用za可以折叠和打开代码
  • 关于YCM的配置

效果图

  • 如果要更美观的VIM配置, 请看VIM配置篇

Enjoy coding的更多相关文章

  1. async & await 的前世今生(Updated)

    async 和 await 出现在C# 5.0之后,给并行编程带来了不少的方便,特别是当在MVC中的Action也变成async之后,有点开始什么都是async的味道了.但是这也给我们编程埋下了一些隐 ...

  2. async & await 的前世今生

    async 和 await 出现在C# 5.0之后,给并行编程带来了不少的方便,特别是当在MVC中的Action也变成async之后,有点开始什么都是async的味道了.但是这也给我们编程埋下了一些隐 ...

  3. 我的github代码库

    我的github代码库地址:https://github.com/gooree.Enjoy coding,enjoy sharing.

  4. 【转载】async & await 的前世今生(Updated)

    async 和 await 出现在C# 5.0之后,给并行编程带来了不少的方便,特别是当在MVC中的Action也变成async之后,有点开始什么都是async的味道了.但是这也给我们编程埋下了一些隐 ...

  5. JS模块化库seajs体验

    seajs http://seajs.org/docs/en.html#intro https://github.com/seajs/seajs/releases Extremely simple e ...

  6. A little tutorial on CodeFluent Entities with ASP.NET MVC4

    /* Author: Jiangong SUN */ CodeFluent Entities is a model-first development tool which creates non-s ...

  7. 译:在C#中使用LINQ To SQL

    译文出处:http://www.codeproject.com/Tips/871938/LINQ-To-SQL-Using-Csharp 今天在这个话题中,我给大家分享一个在c#编程中非常有趣和十分有 ...

  8. Sublime text2如何设置快捷键让编写的HTML文件在浏览器预览?

    著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处.作者:浪人链接:http://www.zhihu.com/question/27219231/answer/43608776来源:知 ...

  9. JAVASCRIPT的一些知识点梳理

    春节闲点,可以安心的梳理一下以前不是很清楚的东东.. 看的是以下几个URL: http://web.jobbole.com/82520/ http://blog.csdn.net/luoweifu/a ...

随机推荐

  1. C#时常需要调用C++DLL

    在合作开发时,C#时常需要调用C++DLL,当传递参数时时常遇到问题,尤其是传递和返回字符串是,现总结一下,分享给大家: VC++中主要字符串类型为:LPSTR,LPCSTR, LPCTSTR, st ...

  2. python3好用的requests库

    python3好用的requests库 requests是什么? requests是基于urllib编写的http库,支持python3,比urllib更好用,更简单.之前使用python写一些htt ...

  3. phpstudy 部署php项目

    网站根目录

  4. JS内置对象的原型不能重定义?只能动态添加属性或方法?

    昨天马上就快下班了,坐在我对面的同事突然问我一个问题,我说“爱过”,哈哈,开个玩笑.情况是这样的,他发现JS的内置对象的原型好像不能通过字面量对象的形式进行覆盖, 只能动态的为内置对象的原型添加属性或 ...

  5. 1. 时间复杂度(大O表示法)以及使用python实现栈

    1.时间复杂度(大O表示法): O(1) < O(logn) < O(n) < O(nlogn) < O(n2) < O(n3) < O(2n) < O(n! ...

  6. Flink学习笔记:Connectors之kafka

    本文为<Flink大数据项目实战>学习笔记,想通过视频系统学习Flink这个最火爆的大数据计算框架的同学,推荐学习课程: Flink大数据项目实战:http://t.cn/EJtKhaz ...

  7. 5、C++结构体的使用

    5.结构体定义 结构体是用户带定义的类型,而结构声明定义了这种类型的数据属性.定义了类型后,便可以创建这种类型的变量,因此创建结构包括两步.首先,定义结构描述——它描述并标记了能够存储在结构中的各种数 ...

  8. 23.3Sum(三数和为零)

    Level:   Medium 题目描述: Given an array nums of n integers, are there elements a, b, c in nums such tha ...

  9. 石头剪刀布(2019Wannafly winter camp day3 i) 带权并查集+按秩合并 好题

    题目传送门 思路: 按照题意描述,所有y挑战x的关系最后会形成一棵树的结构,n个人的总方案数是 3n 种,假设一个人被挑战(主场作战)a次,挑战别人(客场)b次,那么这个人存活到最后的方案数就是3n* ...

  10. 关闭PhpStorm拼写错误