Skip to content

Instantly share code, notes, and snippets.

@tamakiii
Last active December 15, 2015 14:39
Show Gist options
  • Save tamakiii/5275866 to your computer and use it in GitHub Desktop.
Save tamakiii/5275866 to your computer and use it in GitHub Desktop.
" 基本設定(表示)
syntax on
filetype on
filetype indent on
filetype plugin on
" 基本設定(編集)
set nowrap
" ベル
set noerrorbells
" 文字セット
set encoding=utf-8
set fileencodings=ucs-bom,utf-8,default,sjis,euc-jp,latin1
" 情報表示
" auto BufEnter * let &titlestring = hostname() . '/' . expand("%:p")
set laststatus=2 " 情報を表示する
set noshowmode
" set statusline=%<%f\ %m%r%h%w%{'['.(&fenc!=''?&fenc:&enc).']['.&ff.']'}%=%l,%c%V%8P
" ファイル名、文字エンコード、改行形式をステータスラインに表示(http://d.hatena.ne.jp/ruicc/20080615)
" ディレクトリ設定
set backupdir=~/.vim/backup
set directory=~/.vim/swapfile
" IME
set nowrap
set iminsert=0
set imsearch=0
" クリップボード
set clipboard+=unnamed
" Explore
set browsedir=current " :Explore時にカレントディレクトリを開く
" ショートカット
nnoremap ; :
nnoremap <ESC><ESC> :noh<CR><ESC> " <ESC>二度押しで検索ハイライト解除
" 検索
set ignorecase " ファイル検索時に大文字小文字の違いを無視する
if v:version > 730
set wildignorecase " ignorecaseの補完的な機能(v.7.3.072以降)
endif
set wildmenu " 補完候補を表示する
set wildmode=list:longest,full " 補完候補を全て表示する
set hlsearch " 検索文字列をハイライトする
set complete+=k " 'dictionary' で指定されたファイルから検索する
set complete+=i " カレントファイルとインクルードされるファイルから検索する
set complete+=w " 別のウィンドウ内のバッファから検索する
set complete+=w " カレントファイルとインクルードされるファイルから、定義された名前またはマクロを検索する
set complete+=t " タグ補完する
set incsearch " インクリメンタルサーチ
" エディタ設定
set tabstop=4 " \tに対応する空白の文字数
set softtabstop=0 " tabstopを変えずに空白を含めて見た目のtabstopを変える
set shiftwidth=4 " 自動インデントの各段階に使われる空白の数
set expandtab " \tを挿入するのに適切な数の空白
set autoindent " 次の行を開始したときに次の行のインデント量を現在行と同じにする
set smartindent " 次の行を開始したときに高度な自動インデントを行う
set backspace=indent,eol,start " <BS>でインデントを,行の先頭で前の行の改行を削除できるように,
" また,Ctrl+Wで入力した単語以外を削除できるようにする
set number " 行番号を表示する
set ruler " ルーラーを表示する
set cmdheight=1 " コマンドラインの高さ
set showmatch " 括弧の入力時にカーソルを対応する括弧の上に一定時間表示させる
set title " タイトルを表示する
set matchtime=3 " マッチした括弧を強調表示する時間(1/10秒)
" ファイルタイプ毎の設定
autocmd FileType php set ai
" GVim
if has('gui_macvim')
set transparency=0
set guifont=Menlo:h16
set lines=90 columns=201
set guioptions-=T
endif
" neobundle (https://github.com/Shougo/neobundle.vim)
" {:NeoBundleList, :NeoBundleInstall, :NeoBundleClean}
" - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
set nocompatible " be improved
if has('vim_starting')
set runtimepath+=~/.vim/bundle/neobundle.vim/
call neobundle#rc(expand('~/.vim/bundle/'))
NeoBundleFetch 'Shougo/neobundle.vim'
filetype off " (required)
filetype plugin indent off " (required)
endif
" <3 <3 <3 <3 <3 <3 <3 <3 <3 <3 <3 <3 <3 <3 <3 <3 <3 <3 <3 <3 <3 <3
NeoBundle 'altercation/vim-colors-solarized'
NeoBundle 'https://github.com/tyru/caw.vim.git'
NeoBundle 'https://github.com/Lokaltog/powerline'
NeoBundle 'https://github.com/Lokaltog/powerline-fonts.git'
NeoBundle 'https://github.com/Shougo/unite.vim.git'
NeoBundle 'https://github.com/StanAngeloff/php.vim.git'
" NeoBundle 'https://github.com/kien/ctrlp.vim.git'
" NeoBundle 'https://github.com/scrooloose/nerdcommenter.git'
" NeoBundle 'https://github.com/Shougo/neocomplcache.git'
" NeoBundle 'https://github.com/Shougo/vimfiler.git'
" NeoBundle 'https://github.com/Shougo/vimshell.git'
" NeoBundle 'https://github.com/Shougo/vimproc.git' " cd ~/.vim/bundle/vimproc/ & make -f make_mac.mak
" NeoBundle 'https://github.com/taka84u9/unite-git.git'
" NeoBundle 'https://github.com/thinca/vim-ref.git'
" NeoBundle 'https://github.com/thinca/vim-quickrun.git'
" NeoBundle 'https://github.com/tpope/vim-surround.git'
" NeoBundle 'https://github.com/tsaleh/vim-matchit.git'
" NeoBundle 'https://github.com/h1mesuke/unite-outline'
" NeoBundle 'https://github.com/hallison/vim-markdown.git'
" NeoBundle 'https://github.com/nvie/vim-rst-tables.git'
" NeoBundle 'https://github.com/rosstimson/scala-vim-support.git'
" NeoBundle 'https://github.com/scrooloose/nerdtree.git'
" NeoBundle 'https://github.com/altercation/vim-colors-solarized'
" NeoBundle 'https://github.com/kgust/sql.vim.git'
" NeoBundle 'https://github.com/jcfaria/Vim-R-plugin.git'
" NeoBundle 'https://github.com/StanAngeloff/php.vim.git'
" Colorscheme
" - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
set t_Co=256
colorscheme solarized
" caw.vim
" - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
" gci 文の頭からコメントアウト
" gcI 行頭からコメントアウト
" gca 行末にコメントアウト
" gco カーソル行の下にコメントアウト
" gcO カーソル行の上にコメントアウト
" - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
nmap ,c<space> <Plug>(caw:i:toggle)
nmap ,o<space> gCi
nmap ,y<space> yypgcIk
vmap ,c<space> <Plug>(caw:i:toggle)
vmap ,o<space> gCi
vmap ,y<space> yypgcIk
" Powerline
" - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
" $ mkdir ~/.config/powerline
" $ cp -R ~/.vim/bundle/powerline/powerline/config_files/* ~/.config/powerline
" - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
set rtp+=~/.vim/bundle/powerline/powerline/bindings/vim
let g:Powerline_symbols = 'fancy'
set fillchars+=stl:\ ,stlnc:\
if ! has('gui_running')
set ttimeoutlen=10
augroup FastEscape
autocmd!
au InsertEnter * set timeoutlen=0
au InsertLeave * set timeoutlen=1000
augroup END
endif
" Unite.vim (https://github.com/Shougo/unite.vim.git)
" - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
let g:unite_enable_start_insert=1 " https://github.com/Shougo/unite.vim.git
let g:unite_source_file_mru_filename_format = '' " 空にすると表示が高速化する
nnoremap <silent> '<space> :<C-u>Unite file_rec file/new<CR>
" ファイルを開く.新規ファイルが開けるように file/new
nnoremap <silent> 'f<space> :<C-u>Unite -buffer-name=files file_rec file/new<CR>
" バッファを開く
nnoremap <silent> 'b<space> :<C-u>Unite -buffer-name=files buffer<CR>
" てんこ盛り
nnoremap <silent> 'a<space> :<C-u>Unite -buffer-name=files buffer file file_mru file/new<CR>
" gitでmodifiedなファイルを開く
nnoremap <silent> 'g<space> :<C-u>Unite -buffer-name=files git_modified<CR>
" unite-outlineを呼び出す
nnoremap <silent> 'o<space> :<C-u>Unite outline<CR>
" unite-outlineを縦分割でかつ閉じないように表示する
nnoremap <silent> 'ov<space> :<C-u>Unite -vertical -winwidth=30 -no-quit outline<CR>
" unite.vimのfile_recでプロジェクトのファイルを一望する
" (http://d.hatena.ne.jp/h1mesuke/20110918/p1)
function! s:unite_project(...)
let opts = (a:0 ? join(a:000, ' ') : '')
let dir = unite#util#path2project_directory(expand('%'))
execute 'Unite' opts 'file_rec:' . dir
endfunction
" uniteを開いている間のキーマッピング
" (http://www.karakaram.com/vim/vimfiler/)
augroup vimrc
autocmd FileType unite call s:unite_my_settings()
augroup END
function! s:unite_my_settings()
" ESCでuniteを終了する
nmap <buffer> <ESC> <Plug>(unite_exit)
" 入力モードのときctrl+wでバックスラッシュも削除
imap <buffer> <C-w> <Plug>(unite_delete_backward_path)
endfunction
" ウィンドウを分割して開く
au FileType unite nnoremap <silent> <buffer> <expr> 's unite#do_action('split')
au FileType unite inoremap <silent> <buffer> <expr> 's unite#do_action('split')
" ウィンドウを縦に分割して開く
au FileType unite nnoremap <silent> <buffer> <expr> 'v unite#do_action('vsplit')
au FileType unite inoremap <silent> <buffer> <expr> 'v unite#do_action('vsplit')
" 新しいタブで開く
au FileType unite nnoremap <silent> <buffer> <expr> 't unite#do_action('tabopen')
au FileType unite inoremap <silent> <buffer> <expr> 't unite#do_action('tabopen')
" Neocomplcache
" - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
" source ~/.vim/include/neocomplcache.vim
syntax on
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment