vi/vim

Vimの正規表現アレコレ

任意の文字列を繰り返す (例) ○○.●●● という文字列に対して、 「.●●●」 だけ消す場合 :%s/\..*//gc ※*は「直前の文字を0回以上繰り返す」の意味 正規表現rをn回繰り返す 構文 r\{n\} (例)三桁の数字を表現 [0-9]\{3\} 具体的には… 「Vimで三桁の数字を消す」…

JinjaVimを入れた(Twig用のシンタックスハイライト)

https://github.com/uggedal/jinja-vim ~/.vim/ ↑このディレクトリに上記リンク中のsyntaxフォルダごと配置。その後「.vimrc」に以下を追記。 "jinja autocmd BufNewFile,BufRead *.twig set fenc=utf-8 autocmd BufNewFile,BufRead *.twig set filetype=htm…

^M(ハットエム)を改行コードに変換する

概要 改行コードが ^M(ハットM、ハットエム、はっとえむ)になってしまったファイルの改行コードを復活させる。 vi/Vimの閲覧モードで以下のコマンドを実行する。 :%s/^M/\r/gc ^Mの入力方法 [Ctrl]+[V]キーを押してから、[Ctrl]+[M]キー ハットMを…

CSVファイルを編集する

vimでcsvファイルを開いた後、 :e ++enc=sjis とすればSJISに変換されて編集可能になる。

一桁の数字を二桁にする

正規表現テク。「ホールドバッファ」 ¥(○○○¥) ↑○○○の中身は、\1〜9で呼び出すことが可能。 %s/\/ #FF0000;">\([1-9]\)\//\/0\1\//gc 1990/3/9 ↓ 1990/03/9 1990/03/91990/03/09 :%s/\/\([1-9]\)\n/\/0\1\r/gc その他の例 'skill1_exp', 'skill2_exp', 'ski…

正規表現を使って半角スペースを削除

1つ以上並んでいる半角スペースを全て削除 %s/ \+//gc n個以上並んでいる半角スペースを全て削除 %s/ \{n\}//gc

コミット時に使われる外部エディタの設定

「.zshrc」に以下を追記しても動かなかった。 export EDITOR=vim export SVN_EDITOR=vim この状態で「svn commit」すると、 svn: コミットに失敗しました (詳しい理由は以下のとおりです): svn: ログメッセージを取得するのに外部エディタを使えませんでした…

Vimで開くと文字化ける

「.vimrc」に以下を追記 set encoding=utf-8 set fileencodings=iso-2022-jp,euc-jp,sjis,utf8 2012-06-07 追記 MacBook AirでiTerm2でAWS上のファイルをVimで開いたら激しく文字化けしたので、上記に加えて set termencoding=utf-8 set encoding=utf-8 set …

Vimのシェルを利用してDiffを見やすくする

Vimをインストールしたときに含まれているシェルを活用するだけのお話。

python拡張を有効にする

「Vimの拡張をPythonで書くことができる」 という情報を目にしたので、自宅のMacBookAirで試してみた。 VimでPythonサポートされているかどうかを確かめるため、適当なファイルをVimで開いて、 :python print "ossu" と打ち込んでみたところ、コマンドが有効…

PHP用のオプション色々

メソッドの「折り畳み表示」を有効にする 既にVimにプラグインが入っていればvimrcに以下を追記するだけ(最近のVimなら大丈夫っぽい)。 "php_method_folding let php_folding = 1 使い方 あるメソッドを「開く」→zo あるメソッドを「閉じる」→zc ※oはOpenの…

PHPファイルを自動シンタックスチェック

編集コマンドで「:w」とするたびにシンタックスチェックが走るような設定。 ※文法エラーや構文エラーがある時だけエラーメッセージが表示される。 「.vimrc」に以下を追記する。 "------ Syntax Check ------ " PHP Lintautocmd BufWritePost *.php :call PH…

オムニ補完の設定

Vim7.0以上で可能。 ※Windowsマシンで操作。 以下を「.vimrc」に追記する。 "オムニ補完 autocmd FileType php set omnifunc=phpcomplete#CompletePHP PHPファイルをVimで開き、編集モード中に補完したくなったら、 Ctrl+x Ctrl+o と押せば、候補がズラリと…

複数行を一括コメントアウトする

コメントアウト(行頭に#をつける) Ctrl+v ビジュアル(矩形選択モード) 任意の範囲を選択 Shift+i(編集モード) #を入力 Escキーを押す コメントアウト解除(行頭から#を取り除く) Ctrl+v ビジュアル(矩形選択モード) 解除したい行の先頭を選択 dを押す→これ…

正規表現を用いたお手軽処理

行末の空白を取り除く :%s/\s\+$//gc

vi/Vimの閲覧モードで、大文字小文字を区別せずに検索する

構文 /検索したい文字列\c 例 /facebook\c Facebook、FACEBOOK、faceBook、…etc.