基本的な編集作業完結編

やっと落ち着きが訪れたのでvim読書を復活。
危うく体調を崩す所でした。


vim完全バイブルP220まで読みました。

バックアップ

vimrcでOFFにしている機能です。

デフォルトだと「~」でバックアップされるがbackupextオプションで任意の拡張子に変更する事ができる。バックアップディレクトリの指定をbackupdirオプションで指定できる。

ただし、名前の重複で旧バックアップファイルを消してしまう可能性があるから危険らしい。

カンマで区切る事でディレクトリを複数指定できる。

まとめ:
きっとこれからも使わないと思う。

スワップファイル

swapファイルは上書きされない為に、swp,swo,swnと別名で作成されていく仕組みになっている。

swapファイルから復旧させる場合

vim -r hogehoge.txt.swp

swapファイルが更新されるタイミングは下記のいずれか

  • updatetimeオプション値
    • ミリセカンドで指定
  • updatecountオプション値
    • タイプされた文字カウント

この値は他のコマンドで使用されている可能性もあるので、安易に変えちゃうとまずいかも?

readonlyとmodifiedオプション

modified

バッファの変更があった場合にフラグが変わる。
undoで変更がなかった状態に戻った場合もフラグが変わる。
通常は自分で変更する値ではない。*1

helpを見ていたら、すぐ下にmoreってオプションがあった。
あれも切替えできるんだ。へぇ。

readonly

読取専用フラグを立てる。
でも、w!で書き込みできる。

set noreadonly

でOFFにも出来るし、強制力はそれほど強くないみたい。

さまざまな機能

主にマーカーを引いた所をメモ

カーソル下の文字をコマンドラインに出力
:ascii

または
ga

カーソル移動

nomalモードでgoかgotoコマンドでバイト数の位置にカーソルを移動。使う頻度は少ないと思う。

再描画

ctrl-L
合わせてみたい。

:h redraw
:h 'lazyredraw' 
|<
*** スリープ

vimscriptで使えそう。
>|txt|
:sleep 1

またはnomal モードで1gs

マクロの実行中断に便利に使用できるらしい。

サスペンド機能
:suspend

vimを一時休止に出来る。ターミナルでfgを実行するとvimに戻る事が出来る。

:shell

と違い、exitとしてはいけない。
vimに戻れなくなってしまう。

紹介画面を表示する
:intro

よく表示したくなりますよねー。
ってないなぁw

まとめ

章の区切りの関係でこのあたりでまとめる。

  • かなりなぐり書き
  • swapの挙動は覚えておくとよさそう
  • 取り組みは間を空けるとあまり良くない
  • マーカーは引いておくべき

次の章は、次エントリーで。

*1:マクロなどで変更する事はありえる