Vim

vimでバイナリ

Binary mode " binaryモードでファイルを開く vim -b datafile " binaryモードで開きなおす :e ++bin " binaryモードをリセットして開きなおす :e ++nobin " 不可視文字をHexフォーマットで表示 :set display=uhex " カーソルのバイトとかの情報 g C-g " 文…

選択されたテキストを検索するマッピング

単語だったら*で検索開始になるけど、選択した部分は何か無かったっけ? と思ってヘルプみたら、 *visual-search* Here is an idea for a mapping that makes it possible to do a search for the selected text: :vmap X y/" というのが載ってた。登録した。

less.sh

lessでシンタックスハイライト!なless.shが、自分でインストールしたMacVimじゃなくて元から入っていたvim 6を使うようになっていて、このプラグインは7用です!!!!みたいな警告を毎回されるのがうっとおしかったので、less.shの'vim'を絶対パスにした。 # /A…

HTML.vimを試す。

Vim

htmlを書く時用のvimプラグインを入れた。 HTML/XHTML Editing in Vim 例えば、;imとタイプしただけで、 <IMG SRC="" ALT="">のように挿入される。 ほとんどのタグはそのまま;タグ名すれば変換されるので、覚える必要無し。 ブラウザ起動機能*1とかカラーパレットとかついてる…

zipされたvimのプラグインをインストールするとき

例えばnewplugin.zipの中に -doc/newplugin.txt -plugin/newplugin.vimという感じで入っていたら、 unzip newplugin.zip -d ~/.vimとすれば一発。 でも一回zipの中のディレクトリ構成を確認した方が良さそう。確認しないとだめですね。.vimだけ入ってる場合…

""内をカーソルを動かさなくても簡単に選択

""が含まれるラインの上で vi"すると""内を選択してくれる "も含みたい場合はva" '(シングルクオート)と`(バッククオート)でも可能 カーソルを"文字列"の上に動かさなくてもいいのがラクチンだな

検索時に大文字小文字無視

大文字小文字無視したいときは :set ic でignorecaseをONに(デフォルトはOFF) 無視したくないときは :set noic noic は noignorecaseのこと

fileencodingとencodingの違いがよくわからない。

Vim

encodingはvim自体が使用する文字エンコーディングで、fileencodingはファイルに保存される文字エンコーディング……ってこと? 試しにeuc-jpのファイルを開いて確認するとencはutf-8、fencはeuc-jpになってた。 例えばエンコードをshift jisに変えて保存した…

gvimから.gvimrcを開く

Vim

:e ~/.gvimrc 新しいタブで開きたい時は :tabe ~/.gvimrc ついでに:rの意味をやっと覚えた :r ファイル は現在のカーソル位置にファイルのテキストを挿入する

CTRL_L

CTRL_Lは、 Vim 画面の再描画 emacs カーソルがある行を画面の中心にする emacs風キーバインドを選択したeclipseでも動いた。Vimのカラースキーマをdesertにして背景がダークグレーになったんだけど、下のステータスバー(コマンドラインバー?)付近にゴミ…

開いているファイル内でパターンが使われている行をリストアップ

Vim

:grep パターン % grepの使い方がまだよくわからない。 行番号を左に出すには :set nu これは:set numberの略。 オフにするには、 :set nonu これは:set nonumberの。

Vimのスペルチェックをオン/オフ

Vim

スペルチェックの波線がうざったいときは :set nospell でオフに。 オンにする時は :set spell ところで『波線』ってナミセンじゃなかったんですね。 変換しようとして気付いたんだけど……。 ハセンだと破線と紛らわしいような。

gvimのウィンドウサイズを変える

Vim

" 縦幅 デフォルトは24 set lines=40 " 横幅 デフォルトは80 set columns=120 .gvimrcに書いてデフォルトにした。 .vimrcに書きたい場合は、 if has("gui_running") set lines=99999 columns=99999 endif と書けばいいらしい(未確認) 参考 http://www.nabb…

viのjoinはEmacsでM_^

ちょっと動作が違うけど。 vi emacs 行の連結 Shift_j M_^ carbon Emacsで確認。 ターミナルのemacsはなんかメタキーを使うコマンドの動きが変で使えない。

時間で変更前に戻れるg-【Vimコマンド】

u(アンドゥ)してから書くと、uする前の状態にはCTRL-R(リドゥ)では戻れないが、g-は時間で戻れる。例えば、vimを開いて、 i 1 【esc】 r 2 r 3 2u r 4 r 5 のようにアウドゥを交えて1→5を置き換えていく。次に、5の状態からu連打で1に戻りCTRL-R連打で5に戻…

コードを書くときに便利なp二つ【Vimコマンド】

]p インデントを合わせて貼付け :pu 新しい行をあけて貼付け コードを書くときに便利。 その他ペースト関連 insert mode時のショートカット - YKMbPP クリップボードからvimにコピペ - YKMbPP

:e .でvimのファイルエクスプローラ

Vimのファイルエクスプローラ使い方メモ(これは便利!) ファイルエクスプローラを開く :E開いているファイルのあるディレクトリを開く:Explore :S開いているファイルのあるディレクトリを上下画面分割で開く。:Sexplore :Ve開いているファイルのあるディレ…

insert mode時のショートカット

上下カーソル移動 CTRL-G CTRL-J次の行へカーソル移動 CTRL-G CTRL-K前の行へカーソル移動 慣れれば一旦esc押してjiするより早い……かも。 削除 CTRL-Hdeleteと同じ CTRL-W単語頭まで消し CTRL-U行頭まで消し 挿入 コマンド挿入内容 CTRL_R "ヤンクしたテキス…

gvim.appから.vimrcにアクセスして編集

:e $MYVIMRC.vimrcの編集 :e $MYGVIMRC.gvimrcの編集 といった感じで出来るが、:e .でvimのファイルエクスプローラを使った方が早い。

ブックマークレット用に書いたコードを一行にしてコピーするコマンド

コードを一行にしてコピーしてまたフォーマットを戻して〜 というのがめんどくさかったのでqで以下の一連のコマンドをjに登録 :j! 選択されている範囲を一行にする(改行抜き)(ただし{}を省略したelseやdo等があるときは注意)*1 V 一行選択 "*y クリップ…

gvimをOsaka等幅フォントにした

set guifont=Osaka-Mono:h16Osaka等幅フォント16pt. 凄く見易くなった。 .gvimrcに書いた。

コメントアウトするキーを作成してvmapで登録してみた

:vmap 【キー】動作 ビジュアルモード(v)のキーを割り当てるコマンド。 割り当てた後は、vモード時にそのキーを押すだけ。(//だったら/を二回) 何が割り当てられているのか確認する時は、 :vmap 割当を解除したい時は、 :vunmap【解除したいキー】 試し…

vmapでコメントアウトを簡単に

:vmap:ビジュアルモード(v)のキーを割り当てるコマンド

クリップボードからvimにコピペ

"*pクリップボードからペースト vで範囲を選択して"*y選択範囲をクリップボードにコピー 普通にiモードに入ってからコマンドvしてました。 "も*も自分のMacのJISキーボードだと押しにくいので使わないかな。

いつの間にかコードが勝手に小文字になってたりする理由が分かった

書いてたプログラムが突然動かなくなる。 よく見るとmyClassがmyclassみたいな風になってたり。 何でだろう、と思ってたら、どうやらshift-v(VISUAL LINEモード)を間違って押してしまい、vモードを解除しようと焦ってまた間違ってuを押す、その結果、選択…

カーソルの移動

`はシングルバッククオート %()や{}の上で押すと、もう片方にジャンプ `[ヤンクした文字列の最初の文字にカーソル移動 `.最後に変更を加えた場所にカーソル移動 m【a-zの文字】マークを付ける `【a-z】マークにカーソルジャンプ ctrl-oジャンプ取り消し [//*…

()や{}、文やパラグラフを消したりヤンクしたり選択したり

Vim

※dをyに変えたりvに変えたり dib()の中身を消すdelete inner '(' ')' block dab()ごと消す diB{}の中身を消す daB{}ごと消す di<<>の中身を消す(di&qt;も同じ) da<<>ごと消す dis空行の後や . ! ? から次の空行や . ! ? の手前まで消すdelete inner senten…

バックアップ関連

:set backupバックアップファイル【ファイル名~】を作成 :set backupdir=DIRバックアップファイルの保存先を指定(デファルトは編集中のファイルと同じディレクトリ)

タブ操作関連

:tabe(dit) ファイル名新しいタブでファイルを編集(作成) :tabc(lose)タブを閉じる :tabo(nly)他のタブを全て閉じる gtタブ切り替え :tabs開いているタブのリスト表示 :tabmリスト上のタブの位置を動かす (追記:タブはguiだけの機能かと思ってたらコマン…

検索・置換に便利なヤンク(レジスタ)【Vimコマンド】にさん追加7/3

:regレジスタの中身一覧の表示 yiwカーソルの上の単語をヤンク。(レジスタ【"】に格納されている) viwとyviwで一単語選択、選択範囲を調節してからヤンク。 "【aからzのキー】y選択範囲をレジスタ【a-z】に記録。ペーストは"【a-z】P Ctrl-r押して【a-z】…