weblog of key_amb

主にIT関連の技術メモ

Vi/m

Vim で CoffeeScript を編集しやすくする

Slim のときとほぼ一緒ですが、CoffeeScript を Vim で編集するための初期設定です。 自分の dotfiles は GitHub - progrhyme/dotfiles: my dotfiles に置いてます。 シンタックスハイライト GitHub - kchmck/vim-coffee-script: CoffeeScript support for v…

Vim で Slim を編集しやすくする

シンタックスハイライト 参考: Vim で slim のシンタックスハイライトを行う - C++でゲームプログラミング 下のプラグインを入れればよさそう。 slim-template/vim-slim · GitHub .vimrc に下を書いて、:NeoBundleInstall で。 NeoBundle "slim-template/vim…

メモ - ctags で Vim 開発を快適にしたい

やりたいこと: tag ジャンプ tag 一覧表示 tag の自動更新 tag 保存先カスタマイズ …とあるが、 ctagsをちゃんと使う に書いてあることを真似すればできそう。

Mac のキーボードで Vim の paste モードを素早く切り替える Tips

vimrc にこう書くことにしました。 " paste nnoremap ,i :<C-u>set paste<Return>i autocmd InsertLeave * set nopaste 通常モードで「,i」入力で set paste 付きの挿入モードに移行できます。 挿入モードを終えると、自動的に paste モードも抜けます。 ぐぐるとよく ima</return></c-u>…

Vim メモ - ホームディレクトリ以外の場所の.vimrcや.vimを使う

下の参考記事の通りです: ホームディレクトリ以外の場所の.vimrcや.vimを使う - だるろぐ 1) .vimrc の場所を指定する vim 実行時に -u オプションで指定します。 alias vi="vim -u /path/to/myhome/.vimrc" 2) vim の runtimepath をいじる .vimrc で runti…

Vim メモ - 行番号表示に関する設定

以下は .vimrc に記述する場合です。 " 行番号表示したい場合 set number " 行番号表示 set numberwidth=3 " 行番号の最小表示幅を3桁に設定 " 行番号表示したくない set nonumber " 行番号非表示 参考 options - vimdoc-ja

Vim でファイルの種類ごとにインデントを変える(メモ)

結論から言えばここに書いてある通りでした。 Vim documentation: usr_43 Unix 以外だと runtimepath を確認するように記述がありますが、Mac でも Linux でも ~/.vim 以下に ftplugin ディレクトリを作成すれば問題なさそうです。 例えば yaml のインデント…

Vim で日本語を扱うときに必要な設定

Vim で日本語ファイルを開くと文字化けしてしまうことがあります。 UTF-8 なサーバ or ターミナルで色んなエンコードの日本語ファイルを読むには、以下の様に .vimrc に設定が必要です。 " Handle Japanese Encodings set encoding=utf-8 set fileencodings=…

Vimの折りたたみ機能のショートカットキー

foldingのショートカットは使ってないと忘れてしまうが、覚えていると捗るので、まとめておく。 ショートカット 開閉 対象範囲 備考 zo, zO 開く カーソル下 oで一段階, O で全て開く zc, zC 閉じる カーソル下 cで一段階, Cで全て閉じる zr, zR 開く ファイ…

Vimでセッションの保存と読込み

Vimで次のコマンドを打つと、現在開いているバッファやウィンドウの状態を ~/Session.vim というファイルに保存してくれる。 :mksただし、既に ~/Session.vim があるときは上書きしてくれず保存に失敗する。常に上書きたい場合、 :mks!として、強制保存する…

Vimでテキストの折りたたみの設定

最近まで知らなかったのだが、VimではFoldingという機能があって、テキストを段落ごとに折りたたむことができる。 http://vimdoc.sourceforge.net/htmldoc/fold.html 例えば以下のように設定する。 || set foldmethod=indent set foldlevel=2 set foldcolumn…

unite-outlineで見出し・関数にジャンプする

タグジャンプといえばCTagsですが、わざわざタグ生成するの面倒ですよね。ファイル編集したらタグを再生成しないと、変な位置にジャンプしちゃうし。 そんな人のために打ってつけのプラグインがunite-outlineです。 ** NeoBundleの場合のインストール vimrc…

Vim - Alignプラグインで表整形

Alignというプラグインを使うとテキストを縦に整形できます。 使い方は参考記事がわかりやすいですが、一応本文にも書きます。 NeoBundleの場合のインストール vimrcに NeoBundle 'Align'を書いて、 :NeoBundleInstallを打つだけ。 使い方 こんなコードがあ…

Vimで:set expandtabしてるときにタブ文字を入力する

入力モードで<C-v><Tab>を入力する。 以上。 参考 :set expandtab(:set et)設定の時に、タブ文字を挿入する — 名無しのvim使い</tab></c-v>

Vimで縦分割時に狭くなりすぎないようにする

Vimをファイルブラウザ的に起動して、oやvでファイルを分割して開くことはよくあるのではないかと思います。(ここまで前記事のコピペ) ですが、vで開くとデフォルトだと画面が狭すぎて大変不便です。vimrcに次のように書いておくと、いい感じの広さになりま…

Vimで新しいウィンドウを右や下に開く

Vimをファイルブラウザ的に起動して、oやvでファイルを分割して開くことはよくあるのではないかと思います。 そのとき、デフォルトだと上か左に開いてしまうのですが、以下のようにvimrcに書いておけば、この挙動を変更できます。 " 新しいウィンドウを下に…

CentOS 5にVim7.3をインストール

CentOS 5の開発環境でNeoBundlerを使おうとしたら、動かなかった。 カッとなったので、参考記事を参考にVimをバージョンアップした。 ** 1. 事前準備 ビルドに必要なパッケージをインストールしておく。 || $ sudo yum install ncurses-devel ||< ** 2. ソー…

Vimプラグインの管理にNeoBundleを使う

※2015/6/12 .vimrc の書き方を最新に更新しました。 NeoBunlde は Vundle を元にして作られた改良版のようだ。 http://vim-users.jp/2011/10/hack238/ に作者の記事がある。 使い方は簡単。 || mkdir -p ~/.vim/bundle git clone https://github.com/Shougo/…

GTags for Vim

以前、ctagsというのを使っていたのだが、久しぶりに調べてみたら、GTagsというのがあるらしい。 どうも2つあるようで、別物のようだ。 どちらもctagsのようにタグを生成して、関数を検索したり定義箇所にジャンプできたりすると思う。 google-gtags http://…

Ctags with Vim

ctagsをviで使ってみた。でも結局秀丸の方が速いのは、自分がヘタレだからだろうか。 参考 taglist.vim : ソースコード上のメソッド宣言、変数宣言の一覧を表示 — 名無しのvim使い tips/59 - VimWiki Manpage of CTAGS日本語対応版

Vimでリモートのファイルを編集

Vimを立ちあげて、 :e scp://user@host/path で可能。 やってみるとわかるが、scpでとってきて、ローカルに一時ファイルを作ってる。で、保存するときにscpしてるっぽい。path部分がpathなので、/path/to/fileのファイルを編集するときは、 :e scp://user@ho…

svn diff で vimdiff を使う

以下のようなvimdiffのラッパーを書く $ cat /home/me/bin/mysvndiff #!/bin/sh DIFF="/usr/bin/vimdiff" $DIFF $6 $7 そしたら、svnのdiff-cmdに設定する $ vi ~/.subversion/config [helpers] diff-cmd = /home/me/bin/mysvndiff See How to use vimdiff a…

Vimによるレジスタの利用、etc.

レジスタ レジスタはクリップボードみたいなものだ。 # 単語の終わりまでレジスタ'f'に格納 "fye # レジスタ'f'の中身を出力 "fp Helpについて ':help'でヘルプが起動するが、各タグの内容にはでジャンプできる。 ファイルエクスプローラ ':e .'でカレントデ…