From 208cebe0f67e68d54d983bdd22e70a9663352986 Mon Sep 17 00:00:00 2001 From: h-east Date: Sat, 7 Jun 2025 15:22:38 +0900 Subject: [PATCH 1/3] Update options.{txt,jax} --- doc/options.jax | 248 +++++++++++++++++++++++++++++------------------- en/options.txt | 239 ++++++++++++++++++++++++++++------------------ 2 files changed, 296 insertions(+), 191 deletions(-) diff --git a/doc/options.jax b/doc/options.jax index 5f5dafb57..8e5fd811e 100644 --- a/doc/options.jax +++ b/doc/options.jax @@ -1,4 +1,4 @@ -*options.txt* For Vim バージョン 9.1. Last change: 2025 Apr 30 +*options.txt* For Vim バージョン 9.1. Last change: 2025 Jun 05 VIMリファレンスマニュアル by Bram Moolenaar @@ -2127,7 +2127,7 @@ Note 1番目の形式では、行全体がオプション指定に使われる 前またはマクロを検索 |i_CTRL-X_CTRL-D| ] タグ補完 t "]" と同じ - f{func} 関数 {func} を呼び出す。複数の "f" フラグを指定できる。どう関 + F{func} 関数 {func} を呼び出す。複数の "F" フラグを指定できる。どう関 数が呼び出されるかと戻り値の詳細については、 |complete-functions| を参照。値は関数名または |Funcref| を指定 できる。|Funcref| 値の場合、スペースはバックスラッシュ('\')で、 @@ -2144,9 +2144,9 @@ Note 1番目の形式では、行全体がオプション指定に使われる マッチの生成が遅くなる可能性がある場合は、ブロックを避けてエ ディタの応答性を保つために、|complete_check()| を使用するべき である。 - f 'completefunc' オプションから取得した関数を使って "f{func}" を + F 'completefunc' オプションから取得した関数を使って "F{func}" を 使用するのと同じである。 - o 'omnifunc' オプションから取得した関数を使って "f{func}" を使用 + o 'omnifunc' オプションから取得した関数を使って "F{func}" を使用 するのと同じである。 読み込まれていないバッファでは、何しろ読み込まれていないのだから、 @@ -3393,6 +3393,10 @@ Note 1番目の形式では、行全体がオプション指定に使われる autocommand は実行されなくなる。 それ以外では、値はイベント名のコンマ区切りのリストである。例: > :set ei=WinEnter,WinLeave +< + 一部のイベントを除くすべてのイベントを無視するには、"-" プリフィックス + が使用できる: > + :set ei=all,-WinLeave < *'eventignorewin'* *'eiw'* 'eventignorewin' 'eiw' 文字列 (既定では "") @@ -3654,7 +3658,8 @@ Note 1番目の形式では、行全体がオプション指定に使われる 2個以上のドットが現れてもよい。 このオプションは 'cpoptions' のフラグ 's' や 'S' にかかわらず、別のバッ ファにはコピーされない。 - 英数字、'-'、'_' のみ使用できる。 + 英数字、'-'、'_' のみ使用できる (異なるファイルタイプを組み合わせる場 + 合は、区切り文字として '.' を使用できる)。 *'fillchars'* *'fcs'* 'fillchars' 'fcs' 文字列 (既定では "vert:|,fold:-,eob:~,lastline:@") @@ -3678,15 +3683,15 @@ Note 1番目の形式では、行全体がオプション指定に使われる trunc '>' |ins-completion-menu| 内の切り捨てられ たテキスト truncrl '<' 'rightleft' モードの "trunc" と同じ + tpl_vert '|' 'tabpanel' の垂直分割の区切り 指定されなかったキーワードについては、既定値が使われる。 例: > - :set fillchars=stl:\ ,stlnc:\ ,vert:\|,fold:-,diff:- + :set fillchars=stl:\ ,stlnc:\ ,vert:\|,fold:-,diff:-,tpl_vert:\| < - "stl", "stlnc", "foldopen", "foldclose", "foldsep" 項目に対しては1バイ - トおよびマルチバイトの文字をサポートしている。しかし全角文字幅の文字は - サポートしていない。|E1512| + すべての項目はシングルバイト文字とマルチバイト文字をサポートしている。 + ただし、全角文字幅の文字はサポートされていない。 |E1512| ハイライトが行われるものおよびその属するグループ: 項目名 ハイライトグループ ~ @@ -4089,7 +4094,7 @@ Note 1番目の形式では、行全体がオプション指定に使われる *'grepformat'* *'gfm'* 'grepformat' 'gfm' 文字列 (既定では "%f:%l:%m,%f:%l%m,%f %l%m") - グローバル + グローバル/バッファについてローカル |global-local| コマンド ":grep" の出力を認識するための書式。 オプション 'errorformat' と同じく、関数 scanf 風の書式指定を使う。 |errorformat| を参照。 @@ -4693,8 +4698,9 @@ Note 1番目の形式では、行全体がオプション指定に使われる *'ignorecase'* *'ic'* *'noignorecase'* *'noic'* 'ignorecase' 'ic' 切替 (既定ではオフ) グローバル - 検索パターン、|cmdline-completion|、タグファイルの検索、および、 - 非 |Vim9| の |expr-==| の大文字と小文字を区別しない。 + 検索パターン、|cmdline-completion|、タグファイルの検索、非 |Vim9| の + |expr-==| および、挿入モード補完 |ins-completion| の大文字と小文字を区 + 別しない。 オプション 'smartcase' と 'tagcase' も参照。 パターン内で "\c" や "\C" を使うことで、この設定を上書きできる。 |/ignorecase| を参照。 @@ -5762,7 +5768,9 @@ Note 1番目の形式では、行全体がオプション指定に使われる ある。最大値は6。 このオプションの値が2のときでも、それ以上の組み合わせのテキストを編集 することは可能である。ただしそれを表示することはできない。|g8| や|ga| - を使う。|mbyte-combining| を参照。 + を使う。 + 0 に設定すると、結合文字は表示されなくなる。 + |mbyte-combining| を参照。 *'maxfuncdepth'* *'mfd'* 'maxfuncdepth' 'mfd' 数値 (既定では 100) @@ -6103,28 +6111,28 @@ Note 1番目の形式では、行全体がオプション指定に使われる 指定可能なマウスカーソルの形は以下の通りである。 avail 名前 外見 ~ - w x arrow 普通のマウスカーソル - w x blank カーソルなし (注意して使うこと!) - w x beam I 状の縦棒 - w x updown 上下のサイズ変更矢印 - w x leftright 左右のサイズ変更矢印 - w x busy システムの「待ち」カーソル - w x no システムの「入力不可」カーソル - x udsizing 上下のサイズ変更を示す - x lrsizing 左右のサイズ変更を示す - x crosshair 大きくて細い + - x hand1 黒い手 - x hand2 白い手 - x pencil 文字を書くときの、あの鉛筆 - x question 大きな ? - x rightup-arrow 右上向き矢印 - w x up-arrow 上向き矢印 + w x g arrow 普通のマウスカーソル + w x blank カーソルなし (注意して使うこと!) + w x g beam I 状の縦棒 + w x g updown 上下のサイズ変更矢印 + w x g leftright 左右のサイズ変更矢印 + w x g busy システムの「待ち」カーソル + w x g no システムの「入力不可」カーソル + x g udsizing 上下のサイズ変更を示す + x g lrsizing 左右のサイズ変更を示す + x g crosshair 大きくて細い + + x g hand1 黒い手 + x g hand2 白い手 + x pencil 文字を書くときの、あの鉛筆 + x g question 大きな ? + x rightup-arrow 右上向き矢印 + w x up-arrow 上向き矢印 x 任意の X11 のカーソルナンバー (X11/cursorfont.h を参照) - 上の "avail" という項目は、'w' ならばそのマウスカーソルをWin32で利用で - き、'x' ならばX11で利用できることを表す。 - 指定されなかったモードや、利用不可能なカーソルを指定されたモードでは、 + "avail" 列には、シェイプが Win32 で使用できる場合は 'w'、X11 (GTK+ 2 + を含む) の場合は 'x'、GTK+ 3 の場合は 'g' が含まれる。 + 指定されなかったモードや、使用不可能なカーソルを指定されたモードでは、 通常のマウスカーソルを使う。 例: > @@ -7226,9 +7234,14 @@ Note 1番目の形式では、行全体がオプション指定に使われる 場合には、改行は依然として含まれない。 "exclusive" を使用すると、ビジュアルモードでのカーソルの位置が内包的な 動きに合わせて調整される |inclusive-motion-selection-exclusive|。 - Note "exclusive" が使用され後ろから逆方向に選択する場合で、ノーマルモー - ドで開始かつ 'virtualedit' が空のときは、行末の文字を含めることはでき - ないことに注意。 + + Note + - "exclusive" が使用され後ろから逆方向に選択する場合で、ノーマルモード + で開始かつ 'virtualedit' が空のときは、行末の文字を含めることはでき + ない。 + - 単一文字のビジュアル選択で "exclusive" を使用すると、Vim は + 'selection' が内包的であるかのように動作する (つまり、空の領域をビ + ジュアル選択することはできない)。 オプション 'selection' は、コマンド |:behave| によって設定される。 @@ -7515,10 +7528,10 @@ Note 1番目の形式では、行全体がオプション指定に使われる *'shiftwidth'* *'sw'* 'shiftwidth' 'sw' 数値 (既定では 8) バッファについてローカル - (自動)インデントの各段階に使われる空白の数。オプション 'cindent', コマ - ンド |>>|, |<<| 等に使われる。 - 0 の場合は、'tabstop' の値が使われる。実際に使われる値を取得するには - |shiftwidth()| 関数を使う。 + 1 レベルの (自動) インデントを構成する桁数。|'cindent'|、|<<|、|>>| な + どで使用される。 + 0 に設定すると、Vim は現在の 'tabstop' 値を使用する。スクリプト内で有 + 効な値を取得するには、|shiftwidth()| を使用する。 *'shortmess'* *'shm'* 'shortmess' 'shm' 文字列 (Vimの既定値: "filnxtToOS", Viの既定値: "S", @@ -7721,6 +7734,19 @@ Note 1番目の形式では、行全体がオプション指定に使われる これは GUI 版と非 GUI 版両方に適用される。 タブページについて詳しくは |tab-page| を参照。 + *'showtabpanel'* *'stpl'* +'showtabpanel' 'stpl' 数値 (既定では 0) + global + グローバル + {|+tabpanel| 機能付きでコンパイルされたときのみ有効} + このオプションの値は、タブページラベル付きの |tabpanel| がいつ表示され + るかを指定する: + 0: 表示しない + 1: タブページが 2 つ以上ある場合のみ表示 + 2: 常に表示 + これはタブパネルの非 GUI 実装専用である。 + タブページラベルの詳細については |tab-page| を参照。 + *'sidescroll'* *'ss'* 'sidescroll' 'ss' 数値 (既定では 0) グローバル @@ -7769,10 +7795,11 @@ Note 1番目の形式では、行全体がオプション指定に使われる グローバル 検索パターンが大文字を含んでいたらオプション 'ignorecase' を上書きする。 検索パターンがキーボードから打ち込まれたときに 'ignorecase' がオンの場 - 合にのみ使われる。適用されるコマンドは "/", "?", "n", "N", ":g", ":s" - である。"*", "#", "gd" やタグ検索などには適用されない。"*" や "#" の後 - で "/" を使い、検索パターンの履歴を呼び出して を打ち込むことで、 - 'smartcase' の効果を適用することができる。 + 合にのみ使われる。コマンド "/"、"?"、"n"、"N"、":g"、":s" および補完メ + ニュー |compl-states| のマッチをフィルタリングするときに使用される。 + "*"、"#"、"gd"、タグ検索などには使用されない。"*" と "#" の後には、"/" + コマンドを実行し、履歴から検索パターンを呼び出して を押すこと + で、'smartcase' を使用できる。 NOTE: このオプションは、'compatible' がオンになるとオフになるので注意。 *'smartindent'* *'si'* *'nosmartindent'* *'nosi'* @@ -7804,19 +7831,14 @@ Note 1番目の形式では、行全体がオプション指定に使われる *'smarttab'* *'sta'* *'nosmarttab'* *'nosta'* 'smarttab' 'sta' 切替 (既定ではオフ) グローバル - オンのときは、行頭の余白内で を打ち込むと、'shiftwidth' の数だけ - 空白が挿入される。他の場所では 'tabstop' または 'softtabstop' の数だけ - 空白が挿入される。 を使うと行頭の 'shiftwidth' 分のスペースを削除 - する。 - オフのときは、 を打ち込むと常に 'tabstop' または 'softtabstop' の - 数だけ空白が挿入される。'shiftwidth' はテキストを右左にずらすときのみ - 使われる|shift-left-right|。 - 挿入される文字 (タブ文字または空白) は 'expandtab' によって変わる。 - |ins-expandtab| も参照。'expandtab' がオフのときは、 を打ち込むと - 空白の数が最小になる {訳注: できる限り空白をタブ文字で置き換える}。 - このオプションは 'paste' オプションがオンになった時にはリセットされ、 - 'paste' オプションがリセットされた際には復元される。 - NOTE: このオプションは、'compatible' がオンになるとオフになるので注意。 + 有効にすると、カーソルが先頭の空白文字にある場合、 キーは + 'shiftwidth' だけインデントする。 キーは逆の効果を持つ。 + これは、'softtabstop' が 'shiftwidth' の値に設定されているのと同じ動作 + をおこなう。このオプションは 'compatible' が設定されるとリセットされ + る。'paste' が有効になっている場合は一時的に無効になり、'paste' が無効 + になっている場合は元に戻る。 + Vim におけるタブとスペースの扱い方に関する詳細な説明については、ユー + ザーガイドのセクション |30.5| を参照。 *'smoothscroll'* *'sms'* *'nosmoothscroll'* *'nosms'* 'smoothscroll' 'sms' 切替 (既定ではオフ) @@ -8441,51 +8463,79 @@ Note 1番目の形式では、行全体がオプション指定に使われる コマンドライン引数|-p|や ":tab all" で開かれるタブページの最大数。 |tabpage| + *'tabpanel'* *'tpl'* *g:actual_curtabpage* +'tabpanel' 'tpl' 文字列 (既定では空) + グローバル + 空でない場合、このオプションは |tabpanel| の内容を決定する。このオプ + ションは、printf 形式の '%' 項目と通常のテキストで構成され、これは + 'statusline' や 'tabline' に似ている。 + + 'tabpanel' で使用されている何かを変更しても更新がおこなわれない場合 + は、|:redrawtabpanel| を使用する。 + 'modelineexpr' がオフの場合、このオプションはモードラインでは設定でき + ない。 + + |g:actual_curtabpage| は、タブパネルに割り当てられた関数内で使用でき + る。|g:actual_curtabpage| はカレントタブのラベル番号を表す。このオプ + ションには改行を含めることができる: +> + set tabpanel=%!TabPanel() + function! TabPanel() abort + return printf("(%2d)\n %%f", g:actual_curtabpage) + endfunction +< + 結果は以下の通り: +> + +-----------+--------------------------------- + |(1) | + | ~/aaa.txt| + |(2) | + | ~/.vimrc | + | | + | | + | | +< + + *'tabpanelopt'* *'tplo'* +'tabpanelopt' 'tplo' 文字列 (既定では "") + グローバル + |tabpanel| のオプション設定である。以下の項目から構成される。項目はコ + ンマで区切る必要がある。 + + align:{text} タブパネルの位置を指定する。 + 現在サポートされているポジションは以下: + + left 左寄せ + right 右寄せ + + (デフォルト "left") + + columns:{n} タブパネルのサイズ (文字数) 。 + タブパネルのサイズが 0 かVim ウィンドウのサイ + ズがより小さい場合、タブパネルは表示されない。 + (デフォルト 20) + + vert タブパネルに垂直セパレーターを使用する。 + 使用される垂直区切り文字は、'fillchars' の + "tpl_vert" である。 + (デフォルト off) + + 例: > + :set tabpanelopt=columns:16,align:right + :set tabpanelopt= + :set tabpanelopt=vert,align:right + :set tabpanelopt=columns:16 +< + *'tabstop'* *'ts'* 'tabstop' 'ts' 数値 (既定では 8) バッファについてローカル - ファイル内の が対応する空白の数。コマンド |:retab| とオプション - 'softtabstop' も参照 {訳注: このオプション説明の最後も参照}。 - - Note: 'tabstop' を 8 以外の数に設定すると、多くの場合、例えば印刷時に - ユーザーのファイルが間違って表示されうるので注意。 - 値は0より大きく10000未満である必要がある。 - - Vimでは、タブの主な使い方には以下の5種類がある。 - 1. 'tabstop' を常に 8 に保ち、'softtabstop' と 'shiftwidth' を 4 (また - は 3 等の好きな値) に設定し、'expandtab' をオフにする。するとVimは - タブと空白の両方を使うが、 を打ち込むと、タブが 4 (ま - たは 3) 文字ごとに現れているかのように表示される。 - これは推奨される方法であり、ファイルは他のツールでも、ターミナルで - 一覧表示する場合も同じように見える。 - 2. 'softtabstop' と 'shiftwidth' を任意に設定し、'expandtab' を使用す - る。この方法では、常にスペースを挿入することになる。'tabstop' を変 - 更しても書式が崩れることはない (念のため 8 のままにしておく)。ファ - イルは少し大きくなる。 - ファイル内にタブが存在しないかどうかを確認する必要がある。最初に - 'expandtab' を設定し、`%retab!` を使用して、'tabstop' の値が正しく - 設定されていることを確認することで、これらを取り除くことができる。 - 3. 'tabstop' と 'shiftwidth' を好きなように設定し、'expandtab' をオン - にする。この方法では常に空白が挿入される。'tabstop' が変更されても、 - 整形されたテキストはめちゃめちゃにならない。 - 直前の項目と同様に、ファイル内にタブが存在しないかどうかを確認する - 必要がある。 - 4. 'tabstop' と 'shiftwidth' を好きなように設定し、再びファイルを編集 - するときにはモードライン |modeline| でこれらを設定する。Vim を使用 - してファイルを編集する場合にのみ機能し、他のツールは、タブストップ - が 8 スペースに相当すると仮定している。 - 5. 常に 'tabstop' と 'shiftwidth' を等しく設定し、'expandtab' をオフに - する。すると (1回目のインデントのみだが) どのタブ幅でもうまく働く。 - こうするにしても、余白より後の最初の文字より後にタブ文字を挿入する - ときは、空白文字として挿入されるようにするとよいだろう。そうしない - と、'tabstop' が変更されたときに、整形されたコメントの形がおかしく - なる。 - {訳注: 'shiftwidth' は自動インデントやコマンド "<<", ">>" でずれる幅。 - 'softtabstop' は を打ち込んだときにカーソルが動く幅。 - 'tabstop' は画面上でタブ文字が占める幅の設定} - - Vim が |+vartabs| 機能付きでコンパイルされている場合、|'vartabstop'| - が空文字列以外の何かに設定されていると 'tabstop' の値は無視される。 + 水平タブ文字 (ASCII 9) の表示に使用する桁数を定義する。水平タブは常に + 次のタブストップに進む。 + 値は 1 以上 9999 以下でなければならない。 + Vim が |+vartabs| 付きでコンパイルされ、'vartabstop' が設定されている + 場合、このオプションは無視される。 + 特別な理由がない限り、8 のままにしておくこと (usr |30.5| を参照)。 *'tagbsearch'* *'tbs'* *'notagbsearch'* *'notbs'* 'tagbsearch' 'tbs' 切替 (既定ではオン) @@ -9840,7 +9890,7 @@ Note 1番目の形式では、行全体がオプション指定に使われる Note: Vim のウィンドウの高さと混同しないこと。それには 'lines' を利用 する。 - *'winfixbuf'* + *'winfixbuf'* *'wfb'* 'winfixbuf' 'wfb' 切替 (既定ではオフ) ウィンドウについてローカル 有効にすると、ウィンドウとそれが表示しているバッファがペアになる。 diff --git a/en/options.txt b/en/options.txt index 6c60b5896..bb915580a 100644 --- a/en/options.txt +++ b/en/options.txt @@ -1,4 +1,4 @@ -*options.txt* For Vim version 9.1. Last change: 2025 Apr 30 +*options.txt* For Vim version 9.1. Last change: 2025 Jun 05 VIM REFERENCE MANUAL by Bram Moolenaar @@ -2085,7 +2085,7 @@ A jump table for the options with a short description can be found at |Q_op|. |i_CTRL-X_CTRL-D| ] tag completion t same as "]" - f{func} call the function {func}. Multiple "f" flags may be specified. + F{func} call the function {func}. Multiple "F" flags may be specified. Refer to |complete-functions| for details on how the function is invoked and what it should return. The value can be the name of a function or a |Funcref|. For |Funcref| values, @@ -2103,9 +2103,9 @@ A jump table for the options with a short description can be found at |Q_op|. If generating matches is potentially slow, |complete_check()| should be used to avoid blocking and preserve editor responsiveness. - f equivalent to using "f{func}", where the function is taken from + F equivalent to using "F{func}", where the function is taken from the 'completefunc' option. - o equivalent to using "f{func}", where the function is taken from + o equivalent to using "F{func}", where the function is taken from the 'omnifunc' option. Unloaded buffers are not loaded, thus their autocmds |:autocmd| are @@ -3376,6 +3376,9 @@ A jump table for the options with a short description can be found at |Q_op|. events are ignored, autocommands will not be executed. Otherwise this is a comma-separated list of event names. Example: > :set ei=WinEnter,WinLeave +< + To ignore all but some events, a "-" prefix can be used: > + :set ei=all,-WinLeave < *'eventignorewin'* *'eiw'* 'eventignorewin' 'eiw' string (default "") @@ -3633,7 +3636,8 @@ A jump table for the options with a short description can be found at |Q_op|. one dot may appear. This option is not copied to another buffer, independent of the 's' or 'S' flag in 'cpoptions'. - Only alphanumeric characters, '-' and '_' can be used. + Only alphanumeric characters, '-' and '_' can be used (and a '.' is + allowed as delimiter when combining different filetypes). *'fillchars'* *'fcs'* 'fillchars' 'fcs' string (default "vert:|,fold:-,eob:~,lastline:@") @@ -3657,15 +3661,15 @@ A jump table for the options with a short description can be found at |Q_op|. trunc '>' truncated text in the |ins-completion-menu|. truncrl '<' same as "trunc" in 'rightleft' mode + tpl_vert '|' vertical separators of 'tabpanel' Any one that is omitted will fall back to the default. Example: > - :set fillchars=stl:\ ,stlnc:\ ,vert:\|,fold:-,diff:- + :set fillchars=stl:\ ,stlnc:\ ,vert:\|,fold:-,diff:-,tpl_vert:\| < - For the "stl", "stlnc", "foldopen", "foldclose" and "foldsep" items - single-byte and multibyte characters are supported. But double-width - characters are not supported. |E1512| + All items support single-byte and multibyte characters. But + double-width characters are not supported. |E1512| The highlighting used for these items: item name highlight group ~ @@ -4062,7 +4066,7 @@ A jump table for the options with a short description can be found at |Q_op|. *'grepformat'* *'gfm'* 'grepformat' 'gfm' string (default "%f:%l:%m,%f:%l%m,%f %l%m") - global + global or local to buffer |global-local| Format to recognize for the ":grep" command output. This is a scanf-like string that uses the same format as the 'errorformat' option: see |errorformat|. @@ -4658,7 +4662,8 @@ A jump table for the options with a short description can be found at |Q_op|. 'ignorecase' 'ic' boolean (default off) global Ignore case in search patterns, |cmdline-completion|, when - searching in the tags file, and non-|Vim9| |expr-==|. + searching in the tags file, non-|Vim9| |expr-==| and for Insert-mode + completion |ins-completion|. Also see 'smartcase' and 'tagcase'. Can be overruled by using "\c" or "\C" in the pattern, see |/ignorecase|. @@ -5717,6 +5722,7 @@ A jump table for the options with a short description can be found at |Q_op|. Maximum value is 6. Even when this option is set to 2 you can still edit text with more combining characters, you just can't see them. Use |g8| or |ga|. + When set to 0, you will not be able to see any combining characters. See |mbyte-combining|. *'maxfuncdepth'* *'mfd'* @@ -6038,7 +6044,7 @@ A jump table for the options with a short description can be found at |Q_op|. feature} This option tells Vim what the mouse pointer should look like in different modes. The option is a comma-separated list of parts, much - like used for 'guicursor'. Each part consist of a mode/location-list + like used for 'guicursor'. Each part consists of a mode/location-list and an argument-list: mode-list:shape,mode-list:shape,.. The mode-list is a dash separated list of these modes/locations: @@ -6066,26 +6072,26 @@ A jump table for the options with a short description can be found at |Q_op|. The shape is one of the following: avail name looks like ~ - w x arrow Normal mouse pointer - w x blank no pointer at all (use with care!) - w x beam I-beam - w x updown up-down sizing arrows - w x leftright left-right sizing arrows - w x busy The system's usual busy pointer - w x no The system's usual 'no input' pointer - x udsizing indicates up-down resizing - x lrsizing indicates left-right resizing - x crosshair like a big thin + - x hand1 black hand - x hand2 white hand - x pencil what you write with - x question big ? - x rightup-arrow arrow pointing right-up - w x up-arrow arrow pointing up + w x g arrow Normal mouse pointer + w x blank no pointer at all (use with care!) + w x g beam I-beam + w x g updown up-down sizing arrows + w x g leftright left-right sizing arrows + w x g busy The system's usual busy pointer + w x g no The system's usual 'no input' pointer + x g udsizing indicates up-down resizing + x g lrsizing indicates left-right resizing + x g crosshair like a big thin + + x g hand1 black hand + x g hand2 white hand + x pencil what you write with + x g question big ? + x rightup-arrow arrow pointing right-up + w x up-arrow arrow pointing up x any X11 pointer number (see X11/cursorfont.h) The "avail" column contains a 'w' if the shape is available for Win32, - x for X11. + x for X11 (including GTK+ 2), g for GTK+ 3. Any modes not specified or shapes not available use the normal mouse pointer. @@ -7193,9 +7199,14 @@ A jump table for the options with a short description can be found at |Q_op|. the end of line the line break still isn't included. When "exclusive" is used, cursor position in visual mode will be adjusted for inclusive motions |inclusive-motion-selection-exclusive|. - Note that when "exclusive" is used and selecting from the end - backwards, you cannot include the last character of a line, when - starting in Normal mode and 'virtualedit' empty. + + Note: + - When "exclusive" is used and selecting from the end backwards, you + cannot include the last character of a line, when starting in Normal + mode and 'virtualedit' empty. + - when "exclusive" is used with a single character visual selection, + Vim will behave as if the 'selection' is inclusive (in other words, + you cannot visually select an empty region). The 'selection' option is set by the |:behave| command. @@ -7493,10 +7504,10 @@ A jump table for the options with a short description can be found at |Q_op|. *'shiftwidth'* *'sw'* 'shiftwidth' 'sw' number (default 8) local to buffer - Number of spaces to use for each step of (auto)indent. Used for - |'cindent'|, |>>|, |<<|, etc. - When zero the 'tabstop' value will be used. Use the |shiftwidth()| - function to get the effective shiftwidth value. + Number of columns that make up one level of (auto)indentation. Used + by |'cindent'|, |<<|, |>>|, etc. + If set to 0, Vim uses the current 'tabstop' value. Use |shiftwidth()| + to obtain the effective value in scripts. *'shortmess'* *'shm'* 'shortmess' 'shm' string (Vim default "filnxtToOS", Vi default: "S", @@ -7690,6 +7701,20 @@ A jump table for the options with a short description can be found at |Q_op|. line. See |tab-page| for more information about tab pages. + *'showtabpanel'* *'stpl'* +'showtabpanel' 'stpl' number (default 0) + global + {not in Vi} + {not available when compiled without the |+tabpanel| + feature} + The value of this option specifies when the |tabpanel| with tab page + labels will be displayed: + 0: never + 1: only if there are at least two tab pages + 2: always + This is for the non-GUI implementation of the tabpanel only. + See |tab-page| for more information about tab page labels. + *'sidescroll'* *'ss'* 'sidescroll' 'ss' number (default 0) global @@ -7742,9 +7767,11 @@ A jump table for the options with a short description can be found at |Q_op|. Override the 'ignorecase' option if the search pattern contains upper case characters. Only used when the search pattern is typed and 'ignorecase' option is on. Used for the commands "/", "?", "n", "N", - ":g" and ":s". Not used for "*", "#", "gd", tag search, etc. After - "*" and "#" you can make 'smartcase' used by doing a "/" command, - recalling the search pattern from history and hitting . + ":g" and ":s" and when filtering matches for the completion menu + |compl-states|. + Not used for "*", "#", "gd", tag search, etc. After "*" and "#" you + can make 'smartcase' used by doing a "/" command, recalling the search + pattern from history and hitting . NOTE: This option is reset when 'compatible' is set. *'smartindent'* *'si'* *'nosmartindent'* *'nosi'* @@ -7776,19 +7803,14 @@ A jump table for the options with a short description can be found at |Q_op|. *'smarttab'* *'sta'* *'nosmarttab'* *'nosta'* 'smarttab' 'sta' boolean (default off) global - When on, a in front of a line inserts blanks according to - 'shiftwidth'. 'tabstop' or 'softtabstop' is used in other places. A - will delete a 'shiftwidth' worth of space at the start of the - line. - When off, a always inserts blanks according to 'tabstop' or - 'softtabstop'. 'shiftwidth' is only used for shifting text left or - right |shift-left-right|. - What gets inserted (a or spaces) depends on the 'expandtab' - option. Also see |ins-expandtab|. When 'expandtab' is not set, the - number of spaces is minimized by using s. - This option is reset when 'paste' is set and restored when 'paste' is - reset. - NOTE: This option is reset when 'compatible' is set. + When enabled, the key will indent by 'shiftwidth' if the cursor + is in leading whitespace. The key has the opposite effect. + This behaves as if 'softtabstop' is set to the value of 'shiftwidth'. + This option is reset when 'compatible' is set; it is temporarily + disabled when 'paste' is enabled, and restored when 'paste' is turned + off. + Have a look at section |30.5| of the user guide for detailed + explanations on how Vim works with tabs and spaces. *'smoothscroll'* *'sms'* *'nosmoothscroll'* *'nosms'* 'smoothscroll' 'sms' boolean (default off) @@ -8407,49 +8429,82 @@ A jump table for the options with a short description can be found at |Q_op|. Maximum number of tab pages to be opened by the |-p| command line argument or the ":tab all" command. |tabpage| + *'tabpanel'* *'tpl'* *g:actual_curtabpage* +'tabpanel' 'tpl' string (default empty) + global + {not in Vi} + When non-empty, this option determines the content of the |tabpanel|. + The option consists of printf style '%' items interspersed with + normal text, similar to the 'statusline' or 'tabline'. + + When changing something that is used in 'tabpanel' that does not + trigger it to be updated, use |:redrawtabpanel|. + This option cannot be set in a modeline when 'modelineexpr' is off. + + You can use |g:actual_curtabpage| within a function assigned to + tabpanel. |g:actual_curtabpage| represents current tab's label number. + This option can contain line breaks: +> + set tabpanel=%!TabPanel() + function! TabPanel() abort + return printf("(%2d)\n %%f", g:actual_curtabpage) + endfunction +< + The result is: +> + +-----------+--------------------------------- + |(1) | + | ~/aaa.txt| + |(2) | + | ~/.vimrc | + | | + | | + | | +< + + *'tabpanelopt'* *'tplo'* +'tabpanelopt' 'tplo' string (default "") + global + {not in Vi} + Optional settings for the |tabpanel|, It can consist of the following + items. Items must be separated by a comma. + + align:{text} Specifies the position of the tabpanel. + Currently supported positions are: + + left left-aligned + right right-aligned + + (default "left") + + columns:{n} Use the size (in characters) of the tabpanel. + The tabpanel is never shown when using zero + or less than the size of Vim window. + (default 20) + + vert Use a vertical separator for tabpanel. + This vertical separator used is "tpl_vert" of + 'fillchars'. + (default off) + + Examples: > + :set tabpanelopt=columns:16,align:right + :set tabpanelopt= + :set tabpanelopt=vert,align:right + :set tabpanelopt=columns:16 +< + *'tabstop'* *'ts'* 'tabstop' 'ts' number (default 8) local to buffer - Number of spaces that a in the file counts for. Also see - the |:retab| command, and the 'softtabstop' option. - - Note: Setting 'tabstop' to any other value than 8 can make your file - appear wrong in many places, e.g., when printing it. - The value must be more than 0 and less than 10000. - - There are five main ways to use tabs in Vim: - 1. Always keep 'tabstop' at 8, set 'softtabstop' and 'shiftwidth' to 4 - (or 3 or whatever you prefer) and use 'noexpandtab'. Then Vim - will use a mix of tabs and spaces, but typing and will - behave like a tab appears every 4 (or 3) characters. - This is the recommended way, the file will look the same with other - tools and when listing it in a terminal. - 2. Set 'softtabstop' and 'shiftwidth' to whatever you prefer and use - 'expandtab'. This way you will always insert spaces. The - formatting will never be messed up when 'tabstop' is changed (leave - it at 8 just in case). The file will be a bit larger. - You do need to check if no Tabs exist in the file. You can get rid - of them by first setting 'expandtab' and using `%retab!`, making - sure the value of 'tabstop' is set correctly. - 3. Set 'tabstop' and 'shiftwidth' to whatever you prefer and use - 'expandtab'. This way you will always insert spaces. The - formatting will never be messed up when 'tabstop' is changed. - You do need to check if no Tabs exist in the file, just like in the - item just above. - 4. Set 'tabstop' and 'shiftwidth' to whatever you prefer and use a - |modeline| to set these values when editing the file again. Only - works when using Vim to edit the file, other tools assume a tabstop - is worth 8 spaces. - 5. Always set 'tabstop' and 'shiftwidth' to the same value, and - 'noexpandtab'. This should then work (for initial indents only) - for any tabstop setting that people use. It might be nice to have - tabs after the first non-blank inserted as spaces if you do this - though. Otherwise aligned comments will be wrong when 'tabstop' is - changed. + Defines the column multiple used to display the Horizontal Tab + character (ASCII 9); a Horizontal Tab always advances to the next + tab stop. + The value must be at least 1 and at most 9999. + If Vim was compiled with |+vartabs| and |'vartabstop'| is set, this option + is ignored. + Leave it at 8 unless you have a strong reason (see usr |30.5|). - If Vim is compiled with the |+vartabs| feature then the value of - 'tabstop' will be ignored if |'vartabstop'| is set to anything other - than an empty string. *'tagbsearch'* *'tbs'* *'notagbsearch'* *'notbs'* 'tagbsearch' 'tbs' boolean (default on) @@ -9815,7 +9870,7 @@ A jump table for the options with a short description can be found at |Q_op|. Note: Do not confuse this with the height of the Vim window, use 'lines' for that. - *'winfixbuf'* + *'winfixbuf'* *'wfb'* 'winfixbuf' 'wfb' boolean (default off) local to window If enabled, the window and the buffer it is displaying are paired. From 0779cf16b31640ca9dce9a57ddc70086b9bf7bb4 Mon Sep 17 00:00:00 2001 From: h-east Date: Sun, 8 Jun 2025 09:35:49 +0900 Subject: [PATCH 2/3] Update by original --- doc/options.jax | 34 +++++++++++++++------------------- en/options.txt | 46 ++++++++++++++++++++-------------------------- 2 files changed, 35 insertions(+), 45 deletions(-) diff --git a/doc/options.jax b/doc/options.jax index 8e5fd811e..b93fb1a58 100644 --- a/doc/options.jax +++ b/doc/options.jax @@ -1,4 +1,4 @@ -*options.txt* For Vim バージョン 9.1. Last change: 2025 Jun 05 +*options.txt* For Vim バージョン 9.1. Last change: 2025 Jun 07 VIMリファレンスマニュアル by Bram Moolenaar @@ -7736,7 +7736,6 @@ Note 1番目の形式では、行全体がオプション指定に使われる *'showtabpanel'* *'stpl'* 'showtabpanel' 'stpl' 数値 (既定では 0) - global グローバル {|+tabpanel| 機能付きでコンパイルされたときのみ有効} このオプションの値は、タブページラベル付きの |tabpanel| がいつ表示され @@ -7744,7 +7743,6 @@ Note 1番目の形式では、行全体がオプション指定に使われる 0: 表示しない 1: タブページが 2 つ以上ある場合のみ表示 2: 常に表示 - これはタブパネルの非 GUI 実装専用である。 タブページラベルの詳細については |tab-page| を参照。 *'sidescroll'* *'ss'* @@ -8477,12 +8475,12 @@ Note 1番目の形式では、行全体がオプション指定に使われる |g:actual_curtabpage| は、タブパネルに割り当てられた関数内で使用でき る。|g:actual_curtabpage| はカレントタブのラベル番号を表す。このオプ - ションには改行を含めることができる: -> - set tabpanel=%!TabPanel() - function! TabPanel() abort - return printf("(%2d)\n %%f", g:actual_curtabpage) - endfunction + ションの値には改行を含めることができる: > + + set tabpanel=%!TabPanel() + function! TabPanel() abort + return printf("(%2d)\n %%f", g:actual_curtabpage) + endfunction < 結果は以下の通り: > @@ -8495,7 +8493,6 @@ Note 1番目の形式では、行全体がオプション指定に使われる | | | | < - *'tabpanelopt'* *'tplo'* 'tabpanelopt' 'tplo' 文字列 (既定では "") グローバル @@ -8505,19 +8502,19 @@ Note 1番目の形式では、行全体がオプション指定に使われる align:{text} タブパネルの位置を指定する。 現在サポートされているポジションは以下: - left 左寄せ - right 右寄せ + left 左側 + right 右側 (デフォルト "left") - columns:{n} タブパネルのサイズ (文字数) 。 - タブパネルのサイズが 0 かVim ウィンドウのサイ - ズがより小さい場合、タブパネルは表示されない。 + columns:{n} タブパネルの桁数。 + この値が 0 または 'columns' より小さい場合、タ + ブ パネルは表示されない。 (デフォルト 20) - vert タブパネルに垂直セパレーターを使用する。 - 使用される垂直区切り文字は、'fillchars' の - "tpl_vert" である。 + vert タブパネルに垂直区切り文字を使用する。 + 垂直区切り文字は、'fillchars' の "tpl_vert" か + ら取得される。 (デフォルト off) 例: > @@ -8526,7 +8523,6 @@ Note 1番目の形式では、行全体がオプション指定に使われる :set tabpanelopt=vert,align:right :set tabpanelopt=columns:16 < - *'tabstop'* *'ts'* 'tabstop' 'ts' 数値 (既定では 8) バッファについてローカル diff --git a/en/options.txt b/en/options.txt index bb915580a..70fe4ca60 100644 --- a/en/options.txt +++ b/en/options.txt @@ -1,4 +1,4 @@ -*options.txt* For Vim version 9.1. Last change: 2025 Jun 05 +*options.txt* For Vim version 9.1. Last change: 2025 Jun 07 VIM REFERENCE MANUAL by Bram Moolenaar @@ -7704,7 +7704,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'showtabpanel'* *'stpl'* 'showtabpanel' 'stpl' number (default 0) global - {not in Vi} {not available when compiled without the |+tabpanel| feature} The value of this option specifies when the |tabpanel| with tab page @@ -7712,7 +7711,6 @@ A jump table for the options with a short description can be found at |Q_op|. 0: never 1: only if there are at least two tab pages 2: always - This is for the non-GUI implementation of the tabpanel only. See |tab-page| for more information about tab page labels. *'sidescroll'* *'ss'* @@ -8430,9 +8428,8 @@ A jump table for the options with a short description can be found at |Q_op|. argument or the ":tab all" command. |tabpage| *'tabpanel'* *'tpl'* *g:actual_curtabpage* -'tabpanel' 'tpl' string (default empty) +'tabpanel' 'tpl' string (default empty) global - {not in Vi} When non-empty, this option determines the content of the |tabpanel|. The option consists of printf style '%' items interspersed with normal text, similar to the 'statusline' or 'tabline'. @@ -8443,12 +8440,12 @@ A jump table for the options with a short description can be found at |Q_op|. You can use |g:actual_curtabpage| within a function assigned to tabpanel. |g:actual_curtabpage| represents current tab's label number. - This option can contain line breaks: -> - set tabpanel=%!TabPanel() - function! TabPanel() abort - return printf("(%2d)\n %%f", g:actual_curtabpage) - endfunction + The option value can contain line breaks: > + + set tabpanel=%!TabPanel() + function! TabPanel() abort + return printf("(%2d)\n %%f", g:actual_curtabpage) + endfunction < The result is: > @@ -8461,30 +8458,28 @@ A jump table for the options with a short description can be found at |Q_op|. | | | | < - *'tabpanelopt'* *'tplo'* -'tabpanelopt' 'tplo' string (default "") +'tabpanelopt' 'tplo' string (default "") global - {not in Vi} Optional settings for the |tabpanel|, It can consist of the following items. Items must be separated by a comma. align:{text} Specifies the position of the tabpanel. Currently supported positions are: - left left-aligned - right right-aligned + left left-side + right right-side (default "left") - columns:{n} Use the size (in characters) of the tabpanel. - The tabpanel is never shown when using zero - or less than the size of Vim window. + columns:{n} Number of columns of the tabpanel. + If this value is 0 or less than 'columns', the + tab panel will not be displayed. (default 20) vert Use a vertical separator for tabpanel. - This vertical separator used is "tpl_vert" of - 'fillchars'. + The vertical separator character is taken from + "tpl_vert" in 'fillchars'. (default off) Examples: > @@ -8493,16 +8488,15 @@ A jump table for the options with a short description can be found at |Q_op|. :set tabpanelopt=vert,align:right :set tabpanelopt=columns:16 < - *'tabstop'* *'ts'* 'tabstop' 'ts' number (default 8) local to buffer Defines the column multiple used to display the Horizontal Tab - character (ASCII 9); a Horizontal Tab always advances to the next - tab stop. + character (ASCII 9); a Horizontal Tab always advances to the next tab + stop. The value must be at least 1 and at most 9999. - If Vim was compiled with |+vartabs| and |'vartabstop'| is set, this option - is ignored. + If Vim was compiled with |+vartabs| and |'vartabstop'| is set, this + option is ignored. Leave it at 8 unless you have a strong reason (see usr |30.5|). From 42e8e82ef08c000305e9831f6d2c4cf81a2e0d85 Mon Sep 17 00:00:00 2001 From: h-east Date: Sun, 15 Jun 2025 12:58:39 +0900 Subject: [PATCH 3/3] Update by original --- doc/options.jax | 90 ++++++++++++++++++++++++++++++------------------- en/options.txt | 88 +++++++++++++++++++++++++++-------------------- 2 files changed, 107 insertions(+), 71 deletions(-) diff --git a/doc/options.jax b/doc/options.jax index b93fb1a58..a2d923dc8 100644 --- a/doc/options.jax +++ b/doc/options.jax @@ -1,4 +1,4 @@ -*options.txt* For Vim バージョン 9.1. Last change: 2025 Jun 07 +*options.txt* For Vim バージョン 9.1. Last change: 2025 Jun 12 VIMリファレンスマニュアル by Bram Moolenaar @@ -2086,6 +2086,7 @@ Note 1番目の形式では、行全体がオプション指定に使われる 'smartindent' + オフ 高度なインデントなし 'smarttab' + オフ 高度なタブ挿入なし 'softtabstop' + 0 タブは常に 'tabstop' を基準 + 'softtabstop' + 0 ソフトタブストップではない 'startofline' + オン いくつかのコマンドで行頭に移動する 'tagcase' & "followic" タグファイル検索時 'ignorecase' に従う 'tagrelative' & オフ タグファイル名は相対的でない @@ -2293,6 +2294,9 @@ Note 1番目の形式では、行全体がオプション指定に使われる ウィンドウに表示する。"menu" または "menuone" と組み合わせ たときのみ有効。 + このオプションは |cmdline-completion| には適用されない。詳細については + 'wildoptions' を参照。 + *'completepopup'* *'cpp'* 'completepopup' 'cpp' 文字列 (既定では空) グローバル @@ -7831,10 +7835,12 @@ Note 1番目の形式では、行全体がオプション指定に使われる グローバル 有効にすると、カーソルが先頭の空白文字にある場合、 キーは 'shiftwidth' だけインデントする。 キーは逆の効果を持つ。 - これは、'softtabstop' が 'shiftwidth' の値に設定されているのと同じ動作 - をおこなう。このオプションは 'compatible' が設定されるとリセットされ - る。'paste' が有効になっている場合は一時的に無効になり、'paste' が無効 - になっている場合は元に戻る。 + 先頭の空白では、これは 'softtabstop' を 'shiftwidth' の値に設定するの + と同じ効果がある。 + このオプションは 'compatible' が設定されるとリセットされる。'paste' が + 有効になっている場合は一時的に無効になり、'paste' が無効になっている場 + 合は元に戻る。 + NOTE: ほとんどの場合、'softtabstop' を使用する方がよい選択肢である。 Vim におけるタブとスペースの扱い方に関する詳細な説明については、ユー ザーガイドのセクション |30.5| を参照。 @@ -7852,21 +7858,25 @@ Note 1番目の形式では、行全体がオプション指定に使われる *'softtabstop'* *'sts'* 'softtabstop' 'sts' 数値 (既定では 0) バッファについてローカル - 編集で の幅として使用する空白の数。 を挿入したり を - 使ったときに適用される。普通に を挿入するような使用感でありなが - ら、実際にはスペース文字と 文字が混ぜて使用される。これは 'ts' - を標準値の 8 にしたままで、編集作業では 幅として他の値を使いたい - ときに便利である。その場合でも "x" 等のコマンドは実際の文字に対して動 - 作する。 - 'sts' がゼロならこの機能は無効になる。 - 'sts' がマイナスなら 'shiftwidth' の値が使われる。 - 'softtabstop' は、'paste' オプションがオンになった時には0に設定され、 - 'paste' オプションがリセットされた際には復元される。 - |ins-expandtab| も参照。'expandtab' がオフのときは、 を打ち込むと - 空白の数が最小になる {訳注: できる限り空白をタブ文字で置き換える}。 - 'cpoptions' にフラグ 'L' を含めると、'list' がオンのとき、タブの扱い方 - が変わる。 - NOTE: このオプションは、'compatible' がオンになると 0 になるので注意。 + ソフトタブストップを 'softtabstop' で指定したカラム数ごとに作成する。 + 挿入モードで キーを押すと、カーソルはリテラルのタブ文字を挿入す + る代わりに、次のソフトタブストップに移動する。 キーも同様に逆方向 + に動作する。Vim は、この視覚効果を生み出すために、タブ文字とスペース文 + 字を最小限に組み合わせて挿入する。 + + この設定は既存のタブ文字の表示には影響しない。 + + 値 0 を指定すると、この動作は無効になる。負の値を指定すると、Vim は + 'shiftwidth' を使用する。'sts' と 'shiftwidth' を異なる値で使用する場 + 合は、'smarttab' の設定を検討すること。 + + 'softtabstop' は、'paste' がオンのときに一時的に 0 に設定され、オフに + するとリセットされる。'compatible' が設定されている場合もリセットされ + る。 + + 'cpoptions' の 'L' フラグは、'list' が有効な場合のタブの動作を変更す + る。詳細な説明については、|ins-expandtab| およびユーザーマニュアルのセ + クション |30.5| も参照。 Vim が |+vartabs| 機能付きでコンパイルされている場合、|'varsofttabstop'| が空文字列以外の何かに設定されていると 'softtabstop' の値は無視される。 @@ -9322,32 +9332,38 @@ Note 1番目の形式では、行全体がオプション指定に使われる 'varsofttabstop' 'vsts' 文字列 (既定では "") バッファについてローカル {|+vartabs| 機能付きでコンパイルされている場合のみ有効} - の挿入や の使用などの編集における、1 つの に相当する - 空白の数のリスト。可変幅の が挿入されるように感じられる動作だが、 - 実際には空白と が混合して使用される。タブ幅はコンマで区切られ、 - 最後の値は後ろに続くすべてのタブに適用される。 + 可変幅のソフトタブストップを定義する。値は、カラム幅をコンマで区切った + リストである。各幅は、次のソフトタブストップまでのカラム数を定義する。 + 最後の値は無限に繰り返される。 例えば、9 列目からステートメントが、41 列目からコメントが始まるアセン ブリ言語のファイルを編集する際、以下のように使用すると便利だろう: > :set varsofttabstop=8,32,8 -< これは soft tabstop を、8 個および 8 + 32 個、そして以降すべての列に対 - して 8 個の空白に設定する。 +< これにより、ソフトタブストップがカラム 8 に設定され、次にカラム 40 (8 + + 32) に設定され、その後は 8 カラムごとに設定される。 - Note: 'varsofttabstop' が設定されている場合、|'softtabstop'| の値は無 - 視される。 + Note: この設定は 'softtabstop' を上書きする。 + Vim がタブとスペースをどのように扱うかの詳細については、ユーザーマニュ + アルのセクション |30.5| を参照。 *'vartabstop'* *'vts'* 'vartabstop' 'vts' 文字列 (既定では "") バッファについてローカル {|+vartabs| 機能付きでコンパイルされている場合のみ有効} - ファイルの中において、1 つの に相当する空白の数をコンマで区切っ - たリスト。それぞれの値は 1 つのタブに対応し、最後の値は後ろに続くすべ - てのタブに適用される。例: > - :set vartabstop=4,20,10,8 -< これは最初のタブを 4 個の空白、二つ目を 20 個の空白、三つ目を 10個の空 - 白、続くすべてのタブを 8 個の空白に変換する。 + 可変幅のタブストップを定義する。値は、カラム幅をコンマで区切ったリスト + である。各幅は次のタブストップまでのカラム数を定義する。最後の値は無限 + に繰り返される。 + + 例: > + :set vartabstop=4,8 +< これにより、最初のタブストップが行の先頭から 4 カラムに配置され、以降 + のタブストップは 8 カラム間隔で配置される。 - Note: 'vartabstop' が設定されている場合、|'tabstop'| の値は無視される。 + Note: この設定は 'tabstop' を上書きする。 + UNIXでは、デフォルトの tabstop 値である 8 を維持することを推奨する。代 + わりに 'varsofttabstop' の設定を検討すること。 + Vim がタブとスペースをどのように扱うかについての詳細な説明は、ユーザー + マニュアルのセクション |30.5| を参照。 *'verbose'* *'vbs'* 'verbose' 'vbs' 数値 (既定では 0) @@ -9828,6 +9844,7 @@ Note 1番目の形式では、行全体がオプション指定に使われる 'wildoptions' 'wop' 文字列 (既定では "") グローバル コマンドライン補完 |cmdline-completion| の挙動を変える単語のリスト。 + 以下の値をサポートする: fuzzy 補完のマッチ検索にファジーマッチ |fuzzy-matching| を使 用する。この値が設定された場合、補完でワイルドカード展 @@ -9846,6 +9863,9 @@ Note 1番目の形式では、行全体がオプション指定に使われる d #define マクロ f 関数 + このオプションは |ins-completion| には適用されない。詳細は + 'completeopt' を参照。 + *'winaltkeys'* *'wak'* 'winaltkeys' 'wak' 文字列 (既定では "menu") グローバル diff --git a/en/options.txt b/en/options.txt index 70fe4ca60..9ff76c225 100644 --- a/en/options.txt +++ b/en/options.txt @@ -1,4 +1,4 @@ -*options.txt* For Vim version 9.1. Last change: 2025 Jun 07 +*options.txt* For Vim version 9.1. Last change: 2025 Jun 12 VIM REFERENCE MANUAL by Bram Moolenaar @@ -2043,7 +2043,7 @@ A jump table for the options with a short description can be found at |Q_op|. 'smartcase' + off no automatic ignore case switch 'smartindent' + off no smart indentation 'smarttab' + off no smart tab size - 'softtabstop' + 0 tabs are always 'tabstop' positions + 'softtabstop' + 0 no soft tab stops 'startofline' + on goto startofline with some commands 'tagcase' & "followic" 'ignorecase' when searching tags file 'tagrelative' & off tag file names are not relative @@ -2249,6 +2249,9 @@ A jump table for the options with a short description can be found at |Q_op|. completion in the preview window. Only works in combination with "menu" or "menuone". + This option does not apply to |cmdline-completion|. See 'wildoptions' + for that. + *'completepopup'* *'cpp'* 'completepopup' 'cpp' string (default empty) global @@ -7803,11 +7806,13 @@ A jump table for the options with a short description can be found at |Q_op|. global When enabled, the key will indent by 'shiftwidth' if the cursor is in leading whitespace. The key has the opposite effect. - This behaves as if 'softtabstop' is set to the value of 'shiftwidth'. + In leading whitespace, this has the same effect as setting + 'softtabstop' to the value of 'shiftwidth'. This option is reset when 'compatible' is set; it is temporarily disabled when 'paste' is enabled, and restored when 'paste' is turned off. - Have a look at section |30.5| of the user guide for detailed + NOTE: in most cases, using 'softtabstop' is a better option. Have a + look at section |30.5| of the user guide for detailed explanations on how Vim works with tabs and spaces. *'smoothscroll'* *'sms'* *'nosmoothscroll'* *'nosms'* @@ -7824,21 +7829,24 @@ A jump table for the options with a short description can be found at |Q_op|. *'softtabstop'* *'sts'* 'softtabstop' 'sts' number (default 0) local to buffer - Number of spaces that a counts for while performing editing - operations, like inserting a or using . It "feels" like - s are being inserted, while in fact a mix of spaces and s is - used. This is useful to keep the 'ts' setting at its standard value - of 8, while being able to edit like it is set to 'sts'. However, - commands like "x" still work on the actual characters. - When 'sts' is zero, this feature is off. - When 'sts' is negative, the value of 'shiftwidth' is used. - 'softtabstop' is set to 0 when the 'paste' option is set and restored - when 'paste' is reset. - See also |ins-expandtab|. When 'expandtab' is not set, the number of - spaces is minimized by using s. - The 'L' flag in 'cpoptions' changes how tabs are used when 'list' is - set. - NOTE: This option is set to 0 when 'compatible' is set. + Create soft tab stops, separated by 'softtabstop' number of columns. + In Insert mode, pressing the key will move the cursor to the + next soft tab stop, instead of inserting a literal tab. behaves + similarly in reverse. Vim inserts a minimal mix of tab and space + characters to produce the visual effect. + + This setting does not affect the display of existing tab characters. + + A value of 0 disables this behaviour. A negative value makes Vim use + 'shiftwidth'. If you plan to use 'sts' and 'shiftwidth' with + different values, you might consider setting 'smarttab'. + + 'softtabstop' is temporarily set to 0 when 'paste' is on and reset + when it is turned off. It is also reset when 'compatible' is set. + + The 'L' flag in 'cpoptions' alters tab behavior when 'list' is + enabled. See also |ins-expandtab| ans user manual section |30.5| for + in-depth explanations. If Vim is compiled with the |+vartabs| feature then the value of 'softtabstop' will be ignored if |'varsofttabstop'| is set to @@ -9282,36 +9290,40 @@ A jump table for the options with a short description can be found at |Q_op|. local to buffer {only available when compiled with the |+vartabs| feature} - A list of the number of spaces that a counts for while editing, - such as inserting a or using . It "feels" like variable- - width s are being inserted, while in fact a mixture of spaces - and s is used. Tab widths are separated with commas, with the - final value applying to all subsequent tabs. + Defines variable-width soft tab stops. The value is a comma-separated + list of widths in columns. Each width defines the number of columns + before the next soft tab stop. The last value repeats indefinitely. For example, when editing assembly language files where statements start in the 9th column and comments in the 41st, it may be useful to use the following: > :set varsofttabstop=8,32,8 -< This will set soft tabstops with 8 and 8 + 32 spaces, and 8 more - for every column thereafter. +< This sets soft tab stops at column 8, then at column 40 (8 + 32), and + every 8 columns thereafter. - Note that the value of |'softtabstop'| will be ignored while - 'varsofttabstop' is set. + Note: this setting overrides 'softtabstop'. + See section |30.5| of the user manual for detailed explanations on how + Vim works with tabs and spaces. *'vartabstop'* *'vts'* 'vartabstop' 'vts' string (default "") local to buffer {only available when compiled with the |+vartabs| feature} - A list of the number of spaces that a in the file counts for, - separated by commas. Each value corresponds to one tab, with the - final value applying to all subsequent tabs. For example: > - :set vartabstop=4,20,10,8 -< This will make the first tab 4 spaces wide, the second 20 spaces, - the third 10 spaces, and all following tabs 8 spaces. + Defines variable-width tab stops. The value is a comma-separated list + of widths in columns. Each width defines the number of columns + before the next tab stop; the last value repeats indefinitely. + + For example: > + :set vartabstop=4,8 +< This places the first tab stop 4 columns from the start of the line + and each subsequent tab stop 8 columns apart. - Note that the value of |'tabstop'| will be ignored while 'vartabstop' - is set. + Note: this setting overrides 'tabstop'. + On UNIX, it is recommended to keep the default tabstop value of 8. + Consider setting 'varsofttabstop' instead. + See section |30.5| of the user manual for detailed explanations on how + Vim works with tabs and spaces. *'verbose'* *'vbs'* 'verbose' 'vbs' number (default 0) @@ -9807,6 +9819,7 @@ A jump table for the options with a short description can be found at |Q_op|. 'wildoptions' 'wop' string (default "") global A list of words that change how |cmdline-completion| is done. + The following values are supported: fuzzy Use |fuzzy-matching| to find completion matches. When this value is specified, wildcard expansion will not @@ -9824,6 +9837,9 @@ A jump table for the options with a short description can be found at |Q_op|. d #define f function + This option does not apply to |ins-completion|. See 'completeopt' for + that. + *'winaltkeys'* *'wak'* 'winaltkeys' 'wak' string (default "menu") global