コロンコマンド


■ コロンコマンド

──────────────────────────────────────
    ::                                     選択範囲を自動入力
    :<line>                                指定行にジャンプ
    :!<command>                            シェルコマンド実行
    :[x,y]<                                指定行を左シフト
    :[x,y]>                                指定行を右シフト
    :cd                                    ホームディレクトリに移動
    :cd <dir>                              カレントディレクトリを変更
    :[x,y]co[py]<dstLine>                  行単位のコピー
    :[x,y]d[elete]                         行単位の削除
    :di[ff]                                前面の2つの文書の比較を行う
    :di[ff] <fileName>                     指定ファイルとの比較を行う
    :di[ff] <directory>                    指定ディレクトリの同名ファイルと比較を行う
    :e[dit]                                ファイルをオープン
    :e[dit]!                               編集結果を破棄し、ファイルを再読み込み
    :e[dit]!{e|s|m|j}                      指定文字コードでファイルを再読み込み
    :e[dit] <fileName>                     指定ファイルをオープン
    :ee <fileName>                         指定ファイルを別のViViでオープン
    :er <fileName>                         指定ファイルをリードオンリーモードでオープン
    :exi[t]                                :wq と等価
    :f[ile]                                ファイル名を表示
    :f[ile] <fileName>                     ファイル名を指定
    :g[lobal]/pat/<ex command>             パターンに一致する行に対しコマンドを実行
    :k <a-z>                               行をマーク
    :ls                                    カレントディレクトリの内容を表示
    :mar[k] <a-z>                          行をマーク
    :[x,y]m[ove]<dstLine>                  行単位の移動
    :n[ext]                                次のウィンドウに移動
    :np[ane]                               次のペインに移動
    :o[pen] <fileName>                     <fileName> をデフォルトにしてオープンダイアログを開く
    :[x,y]p[rint]                          指定行をアウトプットウィンドウに表示
    :pp[ane]                               前のペインに移動
    :pwd                                   カレントディレクトリを表示
    :py                                    ヤンクバッファの内容を表示
    :q[uit]                                ドキュメントをクローズ(保存確認あり)
    :q[uit]!                               ドキュメントを強制的にクローズ
    :Q                                     すべてのドキュメントをクローズ(保存確認あり)
    :r[ead] <fileName>                     ファイル挿入
    :rew                                   前のウィンドウに移動
    :[x,y]rs[ort] [column]                 指定範囲の行を降順にソート
    :run <fileName>                        ViViスクリプトの実行
    :[x,y]s[ubstitute]/<pat>/<rep>/[g][c]  文字列置換
    :[x,y]s[ubstitute][g][c]               以前のパターンで文字列置換
    :scr[ipt]<0-9> #<vi command>           Ctrl + <0-9> に vi コマンドを割り付ける
    :set all                               オプションの値をすべて表示
    :set <option>                          オプションをON(BOOL型の場合)
    :set no<option>                        オプションをOFF
    :set <option>=<value>                  値を持つオプションに値を設定
    :set <option>?                         値を持つオプションの値を表示
    :[x,y]so[rt] [column]                  指定範囲の行を昇順にソート
    :sp[lit] [<a-z>]                       画面分割を行う
    :ta[g] symbol[*]                       tags ファイルによるタグジャンプを行う
    :tagl[ist] symbol[*]                   シンボル定義個所の一覧を表示する
    :td[iff]                               vcmp の出力結果からタグジャンプを行う
    :ti[le]                                上位2つのファイルをMDIウィンドウ内で左右に並べて表示する
    :v[global]/pat/<ex command>            パターンに一致しない行に対しコマンドを実行
    :vt[ile]                               上位2つのファイルをMDIウィンドウ内で上下に並べて表示する
    :w[rite]                               ファイル保存
    :wq                                    ドキュメントをファイルに保存し、クローズ
    :W                                     すべてのドキュメントをファイルに保存
    :[x,y]w[rite] <fileName>               名前のファイルに保存
    :[x,y]w[rite] >> <fileName>            名前のファイルに追加保存
    :x[it]                                 :wq と等価
    :[x,y]y[ank] [<a-z>]                   ヤンクバッファにコピー
──────────────────────────────────────

【注意】 行番号には10進数、'.'(ピリオド;カレント行番号)、 '$'(EOF行)、'<a-zA-Z>、/pat/, ?pat? が使用でき、'+','-' 演算子が使用できる。 また、'%' は "1,$" と同意である。
 行番号の区切りは、カンマ(,)とセミコロン(;)が使用できる。 セミコロンは直前の行番号をカレント行番号に設定する。

【注意】 <fileName>の部分には以下の特殊文字が使用できます。

【注意】 置換文字列では、共通プロパティの検索タブの "置換文字列でエスケープ文字有効オプション" がONの場合 \n, & などの特殊文字が使用できる。 詳細は置換での特殊文字を参照。

【注意】 :src は :map と同様の機能です。 ただし、コマンドをアサイン可能なのは Ctrl + 0〜9 に限られます。
 '#' を省略した場合はスクリプトファイルをキーに割り付けます。

■ コロンコマンドの入力と編集

 コロン(:)を入力するとステータスバーにカーソルが表示され、文字列を入力することができます。 ここで、以下の機能を使用することができます。(この機能は / ? による検索文字列入力時にも有効です)

■ :set で有効なオプション

 カッコ内は省略形を表す。

──────────────────────────────────────
        autoindent (ai)                 オートインデント
        ignorecase (ic)                 大文字小文字を同一視
        layout (la)                     レイアウトモード
        linelen (ll)                    レイアウトモードの行長(半角文字数)
        logicalnumber (lnu, logicalnu)  論理行番号
        number (nu)                     行番号表示・非表示
        readonly (ro)                   書き込み禁止モード
        ruler (ru)                      ルーラ表示
        showmatch (sm)                  ), }, ] 入力時にカーソルを対応する
                                        カッコに一旦移動
        tabstop (ts)                    タブストップ(&シフト幅)
        verbosesubst (vs)               置換中に画面を更新
──────────────────────────────────────