Skip to content

Update misc files #853

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 13 commits into from
Oct 7, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 11 additions & 8 deletions doc/cmdline.jax
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
*cmdline.txt* For Vim バージョン 8.2. Last change: 2020 Apr 23
*cmdline.txt* For Vim バージョン 8.2. Last change: 2020 Aug 09


VIMリファレンスマニュアル by Bram Moolenaar
Expand Down Expand Up @@ -838,7 +838,7 @@ Note: "#<n" 以外は、ユーザーに打ち込まれた通りのファイル
*:<cword>* *<cword>* *:<cWORD>* *<cWORD>*
*:<cexpr>* *<cexpr>* *:<cfile>* *<cfile>*
*:<afile>* *<afile>* *:<abuf>* *<abuf>*
*:<amatch>* *<amatch>*
*:<amatch>* *<amatch>* *:<stack>* *<stack>*
*:<sfile>* *<sfile>* *:<slnum>* *<slnum>*
*:<sflnum>* *<sflnum>* *E499* *E500*
Note: これらは文字通りに打ち込まれる、これらは特別なキーではない!
Expand All @@ -863,12 +863,14 @@ Note: これらは文字通りに打ち込まれる、これらは特別なキ
SpellFileMissing 用)。
<sfile> コマンド ":source" の実行時、取り込まれたファイルのファイル
名に置き換えられる。 *E498*
関数の実行時はこのように置き換えられる:
"function {関数名}[{行番号}]"
関数呼び出しのネスト (入れ子状態) はこのように表される:
関数の実行時は、<stack> と同様にコールスタックに置き換えら
れる(これは後方互換性のためであり、<stack> を使うのが望しい)
Note: スクリプト内で <sfile> が使われていない場合、ファイル
名修飾子は無効になることに注意。
<stack> コールスタックに置き換えられ、"function {関数名}[{行番号}]"
が関数行としてまた "script {ファイル名}[{行番号}]" がスクリ
プト行として、そして要素間は ".." が使われる。例:
"function {関数名1}[{行番号}]..{関数名2}[{行番号}]"
Note 関数内で <sfile> が使われている場合、ファイル名修飾子
は無効になることに注意。
<slnum> コマンド ":source" の実行時、行番号に置き換えられる。 *E842*
関数の中では、関数の先頭からの相対的な行番号になる。
<sflnum> スクリプトを実行すると、行番号に置き換えられる。<slnum> と
Expand Down Expand Up @@ -1079,7 +1081,8 @@ CTRL-C コマンドラインモードとして継続する。カーソル下の
が引き継がれる。挿入モードとノーマルモードの両方で有効である。
再描画は行われないので、ウィンドウは可視状態のままになる。
:quit コマンドラインを破棄してノーマルモードに戻る。
":close", ":exit", ":xit" や CTRL-\ CTRL-N も有効である。
":close", CTRL-W c, ":exit", ":xit" や CTRL-\ CTRL-N も有効で
ある。
:qall Vimを終了する (他のバッファに変更がない限り)。
:qall! Vimを終了し、どのバッファの変更も破棄する。

Expand Down
20 changes: 11 additions & 9 deletions doc/helphelp.jax
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
*helphelp.txt* For Vim バージョン 8.2. Last change: 2020 Mar 01
*helphelp.txt* For Vim バージョン 8.2. Last change: 2020 Jul 27


VIMリファレンスマニュアル by Bram Moolenaar
Expand Down Expand Up @@ -366,14 +366,16 @@ Vim ヘルプファイルでは以下のものがそれぞれハイライトさ
詳細は $VIMRUNTIME/syntax/help.vim を見てください。

*inclusion*
一部の人々は、ユーザーに言及するときに "his" を使うことに大騒ぎし、我々がユー
ザーを男性であると仮定しているかのように考えています。もちろんそういう意図では
ありません、ヘルプテキストを書く際の習慣になっているだけで、多くの場合、何年も
昔からそう書かれてます。また、多くの文章は、英語が第一言語{訳注: 母語のこと}
ではない貢献者によって書かれています。私たちはテキストの言い回しなどに関係な
く、ユーザーのジェンダーがどうなのか仮定することはありません。そのような相談に
時間を無駄にしたくありません。目標は、読者が Vim がどのように動くかの仕組みを
理解することで、正しい言葉遣いは二の次です。
Vim はみんなのもので、人種、性別、その他何も関係しません。一部の人々は、ユー
ザーに言及するときに "he" や "his" を使うことに大騒ぎし、我々がユーザーを男性
であると仮定しているかのように考えています。もちろんそういう意図ではありませ
ん、ヘルプテキストを書く際の習慣になっているだけで、多くの場合、何年も昔からそ
う書かれてます。また、多くの文章は、英語が第一言語{訳注: 母語のこと} ではない
貢献者によって書かれています。私たちはテキストの言い回しなどに関係なく、ユー
ザーのジェンダーがどうなのか仮定することはありません。そのような相談をする人達
は "they" を使うようにと提案しますが、しかしそれは通常の英語ではありません。そ
のような相談に多くの時間を費やしたくありません。目標は、読者が Vim がどのよう
に動くかの仕組みを理解することで、正しい言葉遣いは二の次です。


vim:tw=78:ts=8:noet:ft=help:norl:
76 changes: 45 additions & 31 deletions doc/map.jax
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
*map.txt* For Vim バージョン 8.2. Last change: 2020 Apr 23
*map.txt* For Vim バージョン 8.2. Last change: 2020 Sep 06


VIMリファレンスマニュアル by Bram Moolenaar
Expand Down Expand Up @@ -188,6 +188,12 @@
引数に <nowait> を追加します。そしてそのマップは一致する場合に使用され、Vimは
それ以上入力される文字を待ちません。しかし、既に文字が入力されていた場合はそれ
が使われます。
Note: これが動作するのは <nowait> なマッピングが完全にマッチし、なんらかの部分
マッチの前に見付かるときです。これが動作するのは:
- バッファローカルなマッピングで唯一のマッチがあるとき。なぜなら常にグローバル
なマッピングより先に見付かるからです。
- これとは別のバッファローカルなマッピングが部分マッチするが、より早く定義され
ているとき (最後に定義したマッピングが最初に見付かる)。

*:map-<silent>* *:map-silent*
実行するコマンドがコマンドラインに表示されないようにするには、マップコマンドの
Expand Down Expand Up @@ -275,16 +281,8 @@ getchar() によって取得され、返されます。
CTRL-L で次の番号を挿入し、CTRL-R で番号をリセットします。CTRL-R は空文字列を
返すので、何も挿入されません。

Note: 特殊キーが機能するようにしたり、テキスト中の CSI バイトをエスケープした
りするために、特別な処理が行われています。|:map| コマンドも同様の処理を行うの
で、それが二重に実行されるのを防ぐ必要があります。次のものは機能しません: >
:imap <expr> <F3> "<Char-0x611B>"
なぜなら、<Char- で表記した文字 (あるいは本物の文字) のバイト列は |:imap| コマ
ンドが解釈されるときにエスケープされ、<expr> で使われるときにもう一度エスケー
プされるからです。次のものは機能します: >
:imap <expr> <F3> "\u611B"
テキストの末尾以外で 0x80 をシングルバイトとして使った場合、それは機能しませ
ん。特殊キーとして認識されます。
Note: テキストの末尾以外で 0x80 をシングルバイトとして使った場合、それは機能し
ません。特殊キーとして認識されます。


1.3 マップとモード *:map-modes*
Expand Down Expand Up @@ -864,34 +862,46 @@ g@{motion} 'operatorfunc' に設定された関数を実行します。

例を示します。これは <F4> を使ってスペースの数を数えます: >

nmap <silent> <F4> :set opfunc=CountSpaces<CR>g@
vmap <silent> <F4> :<C-U>call CountSpaces(visualmode(), 1)<CR>
nnoremap <expr> <F4> CountSpaces()
xnoremap <expr> <F4> CountSpaces()
" <F4> 2回で行に作用
nnoremap <expr> <F4><F4> CountSpaces() .. '_'

function! CountSpaces(type, ...)
let sel_save = &selection
let &selection = "inclusive"
let reg_save = @@

if a:0 " ビジュアルモードから呼び出すのに、gv コマンドを使用します。
silent exe "normal! gvy"
elseif a:type == 'line'
silent exe "normal! '[V']y"
else
silent exe "normal! `[v`]y"
function CountSpaces(type = '') abort
if a:type == ''
set opfunc=CountSpaces
return 'g@'
endif

echomsg strlen(substitute(@@, '[^ ]', '', 'g'))

let &selection = sel_save
let @@ = reg_save
let sel_save = &selection
let reg_save = getreginfo('"')
let cb_save = &clipboard
let visual_marks_save = [getpos("'<"), getpos("'>")]

try
set clipboard= selection=inclusive
let commands = #{line: "'[V']y", char: "`[v`]y", block: "`[\<c-v>`]y"}
silent exe 'noautocmd keepjumps normal! ' .. get(commands, a:type, '')
echom getreg('"')->count(' ')
finally
call setreg('"', reg_save)
call setpos("'<", visual_marks_save[0])
call setpos("'>", visual_marks_save[1])
let &clipboard = cb_save
let &selection = sel_save
endtry
endfunction

<expr> のマッピングを使うことでなんらかのカウントかレジスタの接頭詞を取ること
が可能になります。それにより、CmdlineEnter と CmdlineLeave の自動コマンドをト
リガーするコマンドラインの使用も回避します。

Note: 一時的に 'selection' を "inclusive" に設定し、'[ から '] まで選択した範
囲を正しくヤンクできるようにしています。

Note: ビジュアルモードのために別のマップを定義しています。ビジュアルモードで
":" を押した場合に挿入される "'<,'>" を削除し、関数に visualmode() の値と追加
の引数を渡しています
Note: 'clipboard' オプションの値に `unnamed` か `unnamedplus` が含まれている場
合、レジスタの `"*` や `"+` が上書きされることを防ぐため、一時的に空に設定され
ます

==============================================================================
2. 短縮入力 (Abbreviations) *abbreviations* *Abbreviations*
Expand Down Expand Up @@ -1152,6 +1162,10 @@ non-id マッチした場所の前がスペース、タブ、行頭、挿入
行されます。そのコマンドからローカル関数を呼び出したり、ローカルマップを使用す
ることができます。

<SID> が正しく展開されないコンテキストで値が使われる場合は、expand() 関数を使
います: >
let &includexpr = expand('<SID>') .. 'My_includeexpr()'

スクリプト以外の場所で "<SID>" を使うとエラーになります。

複雑な処理をするスクリプトで、スクリプト番号が必要な場合は、次の関数で番号を得
Expand Down
15 changes: 11 additions & 4 deletions doc/mlang.jax
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
*mlang.txt* For Vim バージョン 8.2. Last change: 2019 May 05
*mlang.txt* For Vim バージョン 8.2. Last change: 2020 Aug 15


VIMリファレンスマニュアル by Bram Moolenaar
Expand Down Expand Up @@ -38,22 +38,26 @@ Vimはシステム環境からロケール(地域情報)を判定する。ほと
:lan[guage] mes[sages]
:lan[guage] cty[pe]
:lan[guage] tim[e]
:lan[guage] col[late]
現在の言語(言い換えればロケール)を表示する。
引数 "message" を使用するとメッセージに利用されている
言語が表示される。専門的には: LC_MESSAGES
引数 "ctype" を使用すると文字エンコードに利用されてい
る言語が表示される。専門的には: LC_CTYPE
引数 "time" を使用するとstrftime()が表示に利用する言語
が表示される。専門的には: LC_TIME
引数 "collate" を使用すると照合に利用する言語が表示さ
れる。専門的には: LC_COLLATE
無引数ならばロケールの全体が表示される(どのように表示
されるかはシステムに依存する)。
現在の言語は|v:lang|, |v:ctype| そして |v:lc_time|の各
変数で取得することもできる
現在の言語は|v:lang|, |v:ctype|, |v:collate| そして
|v:lc_time| の各変数で取得することもできる

:lan[guage] {name}
:lan[guage] mes[sages] {name}
:lan[guage] cty[pe] {name}
:lan[guage] tim[e] {name}
:lan[guage] col[late] {name}
現在の言語(言い換えればロケール)を{name}に設定する。
{name}というロケールがシステムに存在していなければなら
ない。あるシステムでは "en" とか "en_US" と言った別称
Expand All @@ -72,7 +76,10 @@ Vimはシステム環境からロケール(地域情報)を判定する。ほと
引数 "time" を使用すると時刻と日付のメッセージに利用さ
れる言語を設定する。strftime()に影響を与える。これは
$LC_TIME を設定する。
無引数ならば両方が設定され、加えて $LANG が設定される。
引数 "collate" を使用すると照合に利用される言語を設定
する。照合順に影響を与える。これは $LC_COLLATE を設定
する。
無引数ならば全てが設定され、加えて $LANG が設定される。
|+float| 機能付きでコンパイルされている場合は、常に
LC_NUMERIC が "C" にセットされ、浮動小数点数が小数点と
して '.' を使うようになる。
Expand Down
Loading