viで文字列を置換するコマンド
現在の行の最初の文字列を置換
:s/old/new
現在の行の全ての文字列を置換
:s/old/new/g
全ての行の全ての文字列を置換
:%s/old/new/g
10行目から20行目までの文字列を置換
:10,20s/old/new/g
10行目から最終行までの文字列を置換
:10,$s/old/new/g
関連記事
viで文字コードを指定して読み書きする方法
文字コードを指定してファイルを保存する
viで文字コードを指定してファイルを保存するには
:set fenc=utf-8
のようにします。
文字コードを指定してファイルを開く
逆に、文字コードを指定してファイルを開くには
:e ++enc=euc-jp
のようにします。
...
viで改行コードを指定して保存する方法
viで改行コードはfileformatもしくはffを使って指定することができます。
Windows(DOS)向けのCRLFにして保存する場合は
:set fileformat=dos
もしくは
:set ff=dos
とします。
同様に、Linux(Unix)向けのLFにして保存する場合は
:set fileformat=unix
とします。
...
EmacsとVimでテキストの幅を設定
EmacsやVimでテキストを入力する際、1行の文字数が一定値を超えると自動で改行される機能がデフォルトで設定されています。改行までの文字数を設定したい場合や無効に設定したい場合は次のように設定すると良いそうです。
Emacs
M-x set-variableと入力した後
fill-column
に設定したいテキストの幅を入力します。
.emacsで設定する場合は
...
viで文字列を検索する方法
検索コマンド
viで文字列を検索したい場合は
:/パターン
もしくは
:?パターン
というコマンドで検索できます。
/と?の違いはカーソル位置から下方向に検索するか上方向に検索するかです。次の候補までジャンプしたい場合はn、1つ前の候補に戻りたい場合はNで移動できます。
正規表現で検索
正規表現での検索もできます。
:/や:?に続けて検索した...