Quantcast
Channel: Vimタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 5608

vimセッティング(自分用メモ編集中)

$
0
0

.vimrcの設定

vi非互換モードに設定

if &compatible
set nocompatible
endif

文字エンコーディング=UTF8

if has("multi_byte_encoding")
set encoding=utf-8
endif

構文ハイライト機能を有効にする

syntax enable
このコマンドにより実際には次のコマンドが実行される.
source $VIMRUNTIME/syntax/syntax.vim
環境変数VIMが設定されていない場合は、Vimは別の方法(|$VIMRUNTIME|参照)でパスの
検索を試みる。通常はこれでうまくいく。うまく動作しない場合は、環境変数VIMにVim
の構成ファイルが置いてあるディレクトリの設定を試みる。例えば、構文ファイルがディ
レクトリ "/usr/vim/vim50/syntax" にあるならば、$VIMRUNTIMEに "/usr/vim/vim50"
を設定する。これはVimを起動する前に、シェルで設定しておかなければならない。

表示色の設定(256色)。参照:vim doc terminal-options

set t_Co=256

改行 (EOL) の種類を指定する。

set fileformats=unix,dos

行頭の余白内でTabを打ったとき'shiftwidth'の値だけ空白を挿入する。

行頭以外では 'tabstop' の数だけ白が挿入される。
set smarttab

挿入モードでTabを挿入するとき、代わりに適切な数の空白を使う。

set expandtab
また、コマンド '>' や '<' によるインデントや、オプション 'autoindent' がオンのときのインデントでも空白を使う。'expandtab' がオンのときに本当のタブを挿入するには、CTRL-V を使うこと。

矩形ビジュアルモードで仮想編集を有効にする。

set virtualedit=block
仮想編集とは、実際に文字がないところにもカーソルを置けるようにする。つまりタブ文字の内部や行末より後ろにカーソルを移動できる。ビジュアルモードで長方形を選択するときや、表を編集するときに便利である。

検索パターンにおいて大文字と小文字を区別しない。タグファイル内の検索にも適用

set ignorecase

検索パターンが大文字を含んでいたらオプション 'ignorecase' を上書きする。

set smartcase
検索パターンがキーボードから打ち込まれたときに 'ignorecase' がオンの場合にのみ使われる。適用されるコマンドは "/", "?", "n", "N", ":g", ":s"である。"*", "#", "gd" やタグ検索などには適用されない。

検索コマンドを打ち込んでいる間にも、打ち込んだところまでのパターンがマッチするテキストを、すぐに表示する。

set incsearch

検索がバッファの端に到達した時に、もう一方の端に移動して検索が継続されます。

set wrapscan

タブ、改行、スペースなどの表示をカスタマイズできる。

set list
set listchars=tab:>-,trail:~

行番号を表示する。

set number

最下ウィンドウにいつステータス行が表示されるかを設定する。2=常に表示

set laststatus=2

タブページのラベルを常に表示する

set showtabline=2

クリップボードを使えるようにする

set clipboard=unnamed

挿入モードでの BS,Del,CTRL-W,CTRL-Uの動作を設定する。

set backspace=eol,indent,start

コマンドライン補完を拡張モードで使用する。

set wildmenu
set wildmode=list:full
set wildignore=.o,.obj,.pyc,.so,*.dll

タグファイル関連

if has('path_extra')
set tags& tags +=.tags,tags
endif

・python固有の設定

let b:did_ftplugin_python = 1
setlocal smarttab
setlocal expandtab
setlocal tabstop=4
setlocal shiftwidth=4
setlocal foldmethod=indent
setlocal commentstring=#%s
xmap af (textobj-python-function-a)
omap af (textobj-python-function-a)
xmap if (textobj-python-function-i)
omap if (textobj-python-function-i)
xmap ac (textobj-python-class-a)
omap ac (textobj-python-class-a)
xmap ic (textobj-python-class-i)
omap ic (textobj-python-class-i)
setlocal omnifunc=jedi#completions

if version < 600
syntax clear
elseif exists('b:current_after_syntax')
finish
endif
let s:cpo_save = &cpo
set cpo&vim
syn match pythonOperator "(+|=|-|^|*)"
syn match pythonDelimiter "(,|.|:)"
syn keyword pythonSpecialWord self
hi link pythonSpecialWord Special
hi link pythonDelimiter Special
let b:current_after_syntax = 'python'
let &cpo = s:cpo_save
unlet s:cpo_save

参照:vim documentation

Neobundleのインストール

mkdir -p ~.vim/bundle
git clone https://github.com/Shougo/neobundle.vim ~/.vim/bundle/neobundle.vim

.vimrcに以下

set runtimepath+=~/.vim/bundle/neobundle.vim/
call neobundle#begin(expand('~/.vim/bundle/'))
NeoBundleFetch 'Shougo/neobundle.vim'
NeoBundle 'Shougo/unite.vim'
call neobundle#end()
NeoBundleCheck

taglist プラグインのインストール

$sudo apt-get install exuberant-ctags

.vimrcに
NeoBundle 'vim-scripts/taglist.vim'
NeoBundle 'szw/vim-tags'

" taglist
set tags = tags
let Tlist_Ctags_Cmd = "/usr/bin/ctags"
let Tlist_Show_One_File = 1
let Tlist_Use_Right_Window = 1
let Tlist_Exit_OnlyWindow = 1

ファイル形式の検出&ファイル形式別プラグインのロード、ファイル形式別インデント、の有効化(参照:vim documentation)

filetype plugin indent on


Viewing all articles
Browse latest Browse all 5608

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>