vim-jp / vimdoc-ja / sign

sign - Vim日本語ドキュメント

メインヘルプファイルに戻る English | 日本語
sign.txt      For Vim バージョン 8.0.  Last change: 2016 Aug 17


                VIMリファレンスマニュアル    by Gordon Prieur
                                             and Bram Moolenaar


目印機能                                        sign-support

1. 機能紹介                             sign-intro
2. コマンド                             sign-commands

{Vi にはこれらの機能はない}
{+signs 機能付きでコンパイルした場合にのみ利用可能}

==============================================================================
1. 機能紹介                                     sign-intro signs

デバッガやその他のIDE{訳注: 統合開発環境}ツールはエディタをコントロールする。
そのエディタはユーザーにファイルについての役立つ情報を素早く提供するために特別
なハイライトを表示できる必要がある。一例としては左のカラムにブレークポイントを
示すアイコンを持つデバッガを挙げることができる。別の例としてはプログラムカウン
タ(PC)を示す矢印が挙げられる。この目印機能により、ウィンドウの左端に目印やアイ
コン画像を置いたり、ある行に適用される強調を定義することができるようになる。画
像による目印はgvimでだけ利用で可能である(しかしSun Microsystemsのdttermはそれ
をサポートしている。これは著者が知り得る限りで唯一の端末エミュレータである)。
テキストによる目印と色による強調表示は、あらゆるカラーの端末エミュレータで利用
できる。

目印と強調はデバッガにとってだけ便利なわけではない。SunのVisual WorkShopはビル
ドエラーとSourceBrowserの検索一致箇所を示すのに目印と強調を使用する。加えて、
デバッガは8個から10個の異なる目印と強調色をサポートする。workshop参照。
Netbeansはnetbeansを参照。

目印を使うには2つの段階がある:

1. 目印を定義する。画像とテキストと強調色を指定する。例えば "break" の目印とし
   て道路の停止の画像を使用し、テキストとして "!!" を使用して定義することがで
   きる。

2. 目印を設置する。目印を設置したいファイルと行番号を指定する。定義された目印
   は異なるファイルと異なる位置に複数箇所に置くことができる。

ファイルに対して目印が定義されると、Vimは自動的に表示画面に2文字分のカラムを付
け加える。全てのサインが取り除かれるとそのカラムは再度消滅する。この動作は
'signcolumn' オプションにより変更可能できる。そのカラムは SignColumnの色を使
hl-SignColumnが設定される。色を設定するには次のようにする:

        :highlight SignColumn guibg=darkgrey

==============================================================================
2. コマンド                                     sign-commands :sig :sign

次の例ではカレントファイルの23行目に "piet" という目印を置いている。目印は ">>"
という文字をともなって表示される。
        :sign define piet text=>> texthl=Search
        :exe ":sign place 2 line=23 name=piet file=" . expand("%:p")

それをもう一度消すコマンドを追記しておく:
        :sign unplace 2

":sign" コマンドの後には他のコマンドを続けられないことに注意すること。そのよう
にするには:executeを使う。


目印を定義する                          :sign-define E255 E160 E612

:sign define {name} {argument}...
                新しい目印を定義するか既にある目印に属性を設定する。{name}は番
                号(全て数字)か非数字で始まる名前である。先導数字は無視されるの
                で、"0012" と "012" と "12" は同じ名前として解釈される。
                約120の異なる目印を定義することができる。

                利用可能な引数:

        icon={bitmap}
                目印に使用する画像ファイルを定義する。フルパス指定したほうが良
                い。画像は2文字の幅に納まるものでなければならない。これは
                チェックされない。大きすぎる画像を使用すると再描画の際に問題が
                生じることがある。GTK2では画像がちょうど納まるように調整され
                る。
                {訳注: Windowsでは自動的に調整される}
                        toolkit         サポートフォーマット
                        GTK 1           pixmap (.xpm)
                        GTK 2           many
                        Motif           pixmap (.xpm)
                        Win32           .bmp, .ico, .cur
                                        pixmap (.xpm) +xpm_w32

        linehl={group}
                目印が設置された行全体を強調表示するのに使われるハイライトグ
                ループを定義する。背景色を定義するのに良く利用される。

        text={text}                                             E239
                アイコンが無いかGUIではない時に表示されるテキストを定義する。
                表示可能な文字のみ指定できる。これは表示幅で1文字か2文字分の文
                字を指定できる。
                {訳注: アルファベットなら1or2文字。漢字なら1文字}

        texthl={group}
                テキスト部分に使用されるハイライトグループ。


(定義した)目印を削除する                                :sign-undefine E155

:sign undefine {name}
                既に定義された目印を削除する。{name}という名前の目印がまだ設置
                されたままの場合はトラブルを引き起こす。


(定義した)目印を一覧表示する                            :sign-list E156

:sign list      全部の定義済み目印とその属性を一覧表示する。

:sign list {name}
                {name}という名で定義された目印とその属性を表示する。


目印を設置する                                          :sign-place E158

:sign place {id} line={lnum} name={name} file={fname}
                {name}として定義された目印をファイル{fname}{lnum}行目に設置
                する。
                                                        :sign-fname
                ファイル名{fname}は既に読込済みのバッファでなければなら
                ない。正確なファイル名でなければならず、ワイルドカードや環境変
                数そして "~" は展開されない。空白はエスケープされない。末尾の
                空白は無視される。

                目印は{id}という識別子で記憶され、後の操作に使用される。{id}
                番号でなければならない。
                ユーザーは自分で、1つの{id}が各々のファイルに1つしか無いように
                気をつけなければならない(同じ{id}を複数回設置したときには解除
                も同じ回数だけ行う必要がある。同じ{id}を使うことで目印の位置を
                変更しようという試みはうまく行かない)。

:sign place {id} line={lnum} name={name} buffer={nr}
                上に同じ。バッファ番号を使用していることが異なる。

:sign place {id} name={name} file={fname}
                ファイル{fname}{id}で設置された目印を、{name}で定義されてい
                る目印に変更する。{fname}については上述の:sign-fnameを参照す
                ること。
                これは既に設置された目印を動かすことなく変更するのに使われる。
                (例: デバッガがブレークポイントで停止した時)

                                                        E885
:sign place {id} name={name} buffer={nr}
                上に同じ。バッファ番号を使用していることが異なる。


(設置した)目印を解除する                                :sign-unplace E159

:sign unplace {id} file={fname}
                ファイル{fname}{id}で設置された目印を解除する。
                {fname}については上述の:sign-fnameを参照すること。

:sign unplace * file={fname}
                ファイル{fname}に設置された目印をすべて解除する。

:sign unplace {id} buffer={nr}
                バッファ{nr}{id}で設置された目印を解除する。

:sign unplace * buffer={nr}
                バッファ{nr}に設置された目印をすべて解除する。

:sign unplace {id}
                {id}で設置された目印を、全てのファイルから削除する。

:sign unplace *
                設置された全ての目印を解除する。

:sign unplace
                カーソル位置に設置されている目印を解除する。


(設置した)目印を一覧表示する                            :sign-place-list

:sign place file={fname}
                ファイル{fname}に設置されている目印を一覧表示する。
                {fname}については上述の:sign-fnameを参照すること。

:sign place buffer={nr}
                バッファ{nr}に設置されている目印を一覧表示する。

:sign place     全てのファイルに設置されている全ての目印を一覧表示する。


(設置した)目印へ移動する                                :sign-jump E157

:sign jump {id} file={fname}
                ファイル{fname}を開くか、{fname}を編集中のウィンドウへ移動し、
                目印{id}の位置へカーソルを移動させる。
                {fname}については上述の:sign-fnameを参照すること。
                ファイルがウィンドウに表示されておらず、現在のファイルを放棄で
                きない時には、これは失敗する。

:sign jump {id} buffer={nr}                             E934
                上に同じ。バッファ {nr} が名前を持っていない場合には失敗する。

 vim:tw=78:ts=8:ft=help:norl: