Skip to content

Commit 6e83f0d

Browse files
authored
Merge pull request #1285 from vim-jp/hh-update-vim9
Update vim9.{txt,jax}
2 parents 8844e09 + 0c5ff7e commit 6e83f0d

File tree

2 files changed

+16
-10
lines changed

2 files changed

+16
-10
lines changed

doc/vim9.jax

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
*vim9.txt* For Vim バージョン 9.0. Last change: 2023 Mar 07
1+
*vim9.txt* For Vim バージョン 9.0. Last change: 2023 Jun 10
22

33
VIMリファレンスマニュアル by Bram Moolenaar
44

@@ -118,6 +118,9 @@ Vim9 script と `:def` で定義する関数を使用する際に最もよく遭
118118
- 特に指定しない限り、最新の |scriptversion| が使われます。
119119
- 式による指定のマッピングを定義する際は、その式はそのマッピングが定義されたス
120120
クリプトのコンテキストで評価されます。
121+
- 文字列にインデックスを付ける場合、インデックスはバイト数ではなく文字数でカウ
122+
ントされます: |vim9-string-index|
123+
- 予想外の違いがいくつかあるかもしれません: |vim9-gotchas|.
121124

122125
# から始まるコメント ~
123126

@@ -195,8 +198,8 @@ Vim9 関数 ~
195198
囲」も受け取らず、"dict" 属性を持つ関数になることもできません。そして常にク
196199
ロージャとなれます。
197200
*vim9-no-dict-function*
198-
いずれ、「辞書関数」機構を置き換えるクラスが追加されるでしょう。当面は明示的に
199-
辞書を渡す必要があります。: >
201+
「辞書関数」の代わりに Vim9 クラス (|Vim9-class|) を使用できます。辞書を明示的
202+
に渡すこともできます: >
200203
def DictFunc(self: dict<any>, arg: string)
201204
echo self[arg]
202205
enddef
@@ -1064,12 +1067,12 @@ Vim9 script では以下の定義済みの値が使えます: >
10641067
しかし、`null` と数値、浮動小数点数、真偽値との比較は常に `false` になります。
10651068
これは `null` と 0 あるいは `false` を比較した時に `true` になる旧来の Vim
10661069
script とは異なる点です。
1067-
1070+
*vim9-false-true*
10681071
真偽値を文字列に変換するときは、旧来の Vim script のように `v:false`
10691072
`v:true` が使われるのではなく、`false``true` が使われます。`v:none` につい
10701073
ては、他の言語に同等のものが存在しないので、`v:none``none` に変換されるよ
10711074
うになることはありません。
1072-
1075+
*vim9-string-index*
10731076
文字列に対してインデックス [idx] や [idx : idx] を使用すると、バイト単位ではな
10741077
く文字単位のインデックスとして扱われます。結合文字が含まれています。例: >
10751078
echo 'bár'[1]

en/vim9.txt

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
*vim9.txt* For Vim version 9.0. Last change: 2023 Mar 07
1+
*vim9.txt* For Vim version 9.0. Last change: 2023 Jun 10
22

33

44
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -117,6 +117,9 @@ script and `:def` functions; details are below:
117117
- Unless mentioned specifically, the highest |scriptversion| is used.
118118
- When defining an expression mapping, the expression will be evaluated in the
119119
context of the script where it was defined.
120+
- When indexing a string the index is counted in characters, not bytes:
121+
|vim9-string-index|
122+
- Some possibly unexpected differences: |vim9-gotchas|.
120123

121124

122125
Comments starting with # ~
@@ -190,8 +193,8 @@ created yet. In this case you can call `execute()` to invoke it at runtime. >
190193
used for the command or the error was caught a `:try` block), does not get a
191194
range passed, cannot be a "dict" function, and can always be a closure.
192195
*vim9-no-dict-function*
193-
Later classes will be added, which replaces the "dict function" mechanism.
194-
For now you will need to pass the dictionary explicitly: >
196+
You can use a Vim9 Class (|Vim9-class|) instead of a "dict function".
197+
You can also pass the dictionary explicitly: >
195198
def DictFunc(self: dict<any>, arg: string)
196199
echo self[arg]
197200
enddef
@@ -1056,11 +1059,11 @@ It is possible to compare `null` with any value, this will not give a type
10561059
error. However, comparing `null` with a number, float or bool will always
10571060
result in `false`. This is different from legacy script, where comparing
10581061
`null` with zero or `false` would return `true`.
1059-
1062+
*vim9-false-true*
10601063
When converting a boolean to a string `false` and `true` are used, not
10611064
`v:false` and `v:true` like in legacy script. `v:none` has no `none`
10621065
replacement, it has no equivalent in other languages.
1063-
1066+
*vim9-string-index*
10641067
Indexing a string with [idx] or taking a slice with [idx : idx] uses character
10651068
indexes instead of byte indexes. Composing characters are included.
10661069
Example: >

0 commit comments

Comments
 (0)