mirror of
https://github.com/macvim-dev/macvim.git
synced 2026-06-11 15:37:29 +02:00
Merge remote-tracking branch 'vim/master'
This commit is contained in:
+9
-15
@@ -9121,22 +9121,16 @@ There are four types of features:
|
||||
Example: >
|
||||
:if has("gui_running")
|
||||
< *has-patch*
|
||||
3. Included patches. The "patch123" feature means that patch 123 has been
|
||||
included. Note that this form does not check the version of Vim, you need
|
||||
to inspect |v:version| for that.
|
||||
Example (checking version 6.2.148 or later): >
|
||||
:if v:version > 602 || v:version == 602 && has("patch148")
|
||||
< Note that it's possible for patch 147 to be omitted even though 148 is
|
||||
included.
|
||||
|
||||
4. Beyond a certain version or at a certain version and including a specific
|
||||
patch. The "patch-7.4.237" feature means that the Vim version is 7.5 or
|
||||
later, or it is version 7.4 and patch 237 was included.
|
||||
Note that this only works for patch 7.4.237 and later, before that you
|
||||
need to use the example above that checks v:version. Example: >
|
||||
3. Beyond a certain version or at a certain version and including a specific
|
||||
patch. The "patch-7.4.248" feature means that the Vim version is 7.5 or
|
||||
later, or it is version 7.4 and patch 248 was included. Example: >
|
||||
:if has("patch-7.4.248")
|
||||
< Note that it's possible for patch 147 to be omitted even though 148 is
|
||||
included.
|
||||
< Note that it's possible for patch 248 to be omitted even though 249 is
|
||||
included. Only happens when cherry-picking patches.
|
||||
Note that this form only works for patch 7.4.237 and later, before that
|
||||
you need to check for the patch and the v:version. Example (checking
|
||||
version 6.2.148 or later): >
|
||||
:if v:version > 602 || (v:version == 602 && has("patch148"))
|
||||
|
||||
Hint: To find out if Vim supports backslashes in a file name (MS-Windows),
|
||||
use: `if exists('+shellslash')`
|
||||
|
||||
@@ -39,9 +39,10 @@ browser use: https://github.com/vim/vim/issues/1234
|
||||
-------------------- Known bugs and current work -----------------------
|
||||
|
||||
Terminal emulator window:
|
||||
- Win32: Termdebug doesn't work, because gdb does not support mi2. This
|
||||
plugin: https://github.com/cpiger/NeoDebug runs gdb as a job, redirecting
|
||||
input and output. Command I/O is in gdb window.
|
||||
- Win32: Termdebug doesn't work, because gdb does not support mi2.
|
||||
This plugin: https://github.com/cpiger/NeoDebug runs gdb as a job,
|
||||
redirecting input and output.
|
||||
Open new console for for program with: "set new-console on"
|
||||
- Win32: Redirecting input does not work, half of Test_terminal_redir_file()
|
||||
is disabled.
|
||||
- Win32: Redirecting output works but includes escape sequences.
|
||||
@@ -65,6 +66,8 @@ Patch to refactor efm_to_regpat(). (Yegappan Lakshmanan, 2018 May 16, #2924)
|
||||
Crash when mixing matchadd and substitute()? (Max Christian Pohle, 2018 May
|
||||
13, #2910) Can't reproduce?
|
||||
|
||||
Deprecate using has("patch213") always include the version number.
|
||||
|
||||
On Win32 when not in the console and t_Co >= 256, allow using 'tgc'.
|
||||
(Nobuhiro Takasaki, #2833) Also check t_Co.
|
||||
|
||||
|
||||
@@ -22104,7 +22104,7 @@ Files: src/Makefile, src/option.c, src/testdir/test_alot.vim,
|
||||
Patch 8.0.1238
|
||||
Problem: Incremental search only shows one match.
|
||||
Solution: When 'incsearch' and 'hlsearch' are both set highlight all
|
||||
matches. (haya14busa, itchyny closes #2198)
|
||||
matches. (haya14busa, itchyny, closes #2198)
|
||||
Files: runtime/doc/options.txt, src/ex_getln.c, src/proto/search.pro,
|
||||
src/search.c, src/testdir/test_search.vim
|
||||
|
||||
@@ -22595,7 +22595,7 @@ Solution: Remove bogus typedef.
|
||||
Files: src/os_macosx.m
|
||||
|
||||
Patch 8.0.1316 (after 8.0.1312)
|
||||
Problem: Build still fails on Mac. (chdiza)
|
||||
Problem: Build still still fails on Mac. (chdiza)
|
||||
Solution: Remove another bogus typedef.
|
||||
Files: src/os_mac_conv.c
|
||||
|
||||
|
||||
@@ -280,7 +280,7 @@ N を省略した場合は、引数のファイルを個別のタブページで
|
||||
ぐことができます。
|
||||
ファイルを保存したい場合は、":w!" のように、Ex コマンドに感嘆符を付けてくだ
|
||||
さい。
|
||||
\-R オプションは \-n オプションの効果も含んでいます (下記参照)。
|
||||
\-R オプションは \-n オプションの効果も含んでいます (上記参照)。
|
||||
オプション 'readonly' は ":set noro" でオフにできます。
|
||||
詳しくは ":help 'readonly'" を参照してください。
|
||||
.TP
|
||||
|
||||
@@ -76,6 +76,9 @@
|
||||
.RI < cols >
|
||||
オクテットで出力する。標準設定は 16 (\-i: 12, \-ps: 30, \-b: 6)。最大 256。
|
||||
.TP
|
||||
.IR \-C " | " \-capitalize
|
||||
\-i を使用した際に、C インクルードファイル形式の変数名を大文字にする。
|
||||
.TP
|
||||
.IR \-E " | " \-EBCDIC
|
||||
右端に出力される文字のエンコーディングを ASCII から EBCDIC に変更する。
|
||||
16 進ダンプの出力形式は変更されません。
|
||||
|
||||
@@ -5,5 +5,5 @@
|
||||
" Copyright (C) 2004,12 MURAOKA Taro <koron.kaoriya@gmail.com>
|
||||
" THIS FILE IS DISTRIBUTED UNDER THE VIM LICENSE.
|
||||
|
||||
" eucjp is the same as euc-jp. Source the other one from here.
|
||||
" ja is the same as ja_jp. Source the other one from here.
|
||||
source <sfile>:p:h/menu_ja_jp.euc-jp.vim
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
" Menu Translations: Japanese
|
||||
|
||||
" eucjp is the same as euc-jp. Source the other one from here.
|
||||
" ja is the same as ja_jp. Source the other one from here.
|
||||
source <sfile>:p:h/menu_ja_jp.utf-8.vim
|
||||
|
||||
@@ -73,9 +73,9 @@ menutrans Startup\ &Settings
|
||||
menutrans &Global\ Settings 全体設定(&G)
|
||||
menutrans Toggle\ Pattern\ &Highlight<Tab>:set\ hls!
|
||||
\ パターン強調切替(&H)<Tab>:set\ hls!
|
||||
menutrans Toggle\ &Ignore-case<Tab>:set\ ic!
|
||||
menutrans Toggle\ &Ignoring\ Case<Tab>:set\ ic!
|
||||
\ 大小文字区別切替(&I)<Tab>:set\ ic!
|
||||
menutrans Toggle\ &Showmatch<Tab>:set\ sm!
|
||||
menutrans Toggle\ &Showing\ Matched\ Pairs<Tab>:set\ sm!
|
||||
\ マッチ表示切替(&S)<Tab>:set\ sm!
|
||||
menutrans &Context\ lines カーソル周辺行数(&C)
|
||||
menutrans &Virtual\ Edit 仮想編集(&V)
|
||||
@@ -86,7 +86,7 @@ menutrans Block\ and\ Insert
|
||||
menutrans Always 常時
|
||||
menutrans Toggle\ Insert\ &Mode<Tab>:set\ im!
|
||||
\ 挿入(初心者)モード切替(&M)<Tab>:set\ im!
|
||||
menutrans Toggle\ Vi\ C&ompatible<Tab>:set\ cp!
|
||||
menutrans Toggle\ Vi\ C&ompatibility<Tab>:set\ cp!
|
||||
\ Vi互換モード切替(&O)<Tab>:set\ cp!
|
||||
menutrans Search\ &Path\.\.\. 検索パス(&P)\.\.\.
|
||||
menutrans Ta&g\ Files\.\.\. タグファイル(&G)\.\.\.
|
||||
@@ -106,19 +106,19 @@ let g:menutrans_tags_dialog = "
|
||||
menutrans F&ile\ Settings ファイル設定(&I)
|
||||
menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu!
|
||||
\ 行番号表示切替(&N)<Tab>:set\ nu!
|
||||
menutrans Toggle\ relati&ve\ Line\ Numbering<Tab>:set\ rnu!
|
||||
menutrans Toggle\ Relati&ve\ Line\ Numbering<Tab>:set\ rnu!
|
||||
\ 相対行番号表示切替(&V)<Tab>:set\ rnu!
|
||||
menutrans Toggle\ &List\ Mode<Tab>:set\ list!
|
||||
\ リストモード切替(&L)<Tab>:set\ list!
|
||||
menutrans Toggle\ Line\ &Wrap<Tab>:set\ wrap!
|
||||
menutrans Toggle\ Line\ &Wrapping<Tab>:set\ wrap!
|
||||
\ 行折返し切替(&W)<Tab>:set\ wrap!
|
||||
menutrans Toggle\ W&rap\ at\ word<Tab>:set\ lbr!
|
||||
menutrans Toggle\ W&rapping\ at\ word<Tab>:set\ lbr!
|
||||
\ 単語折返し切替(&R)<Tab>:set\ lbr!
|
||||
menutrans Toggle\ &expand-tab<Tab>:set\ et!
|
||||
menutrans Toggle\ Tab\ &Expanding<Tab>:set\ et!
|
||||
\ タブ展開切替(&E)<Tab>:set\ et!
|
||||
menutrans Toggle\ &auto-indent<Tab>:set\ ai!
|
||||
menutrans Toggle\ &Auto\ Indenting<Tab>:set\ ai!
|
||||
\ 自動字下げ切替(&A)<Tab>:set\ ai!
|
||||
menutrans Toggle\ &C-indenting<Tab>:set\ cin!
|
||||
menutrans Toggle\ &C-Style\ Indenting<Tab>:set\ cin!
|
||||
\ C言語字下げ切替(&C)<Tab>:set\ cin!
|
||||
|
||||
" other options
|
||||
@@ -131,7 +131,9 @@ let g:menutrans_textwidth_dialog = "
|
||||
let g:menutrans_fileformat_dialog = "ファイル出力の際の改行記号の形式を選んでください."
|
||||
let g:menutrans_fileformat_choices = "&Unix\n&Dos\n&Mac\nキャンセル(&C)"
|
||||
|
||||
menutrans Show\ C&olor\ Schemes\ in\ Menu 色テーマをメニューに表示(&O)
|
||||
menutrans C&olor\ Scheme 色テーマ選択(&O)
|
||||
menutrans Show\ &Keymaps\ in\ Menu キーマップをメニューに表示(&K)
|
||||
menutrans &Keymap キーマップ(&K)
|
||||
menutrans None なし
|
||||
|
||||
@@ -153,7 +155,8 @@ menutrans &Open<Tab>:copen
|
||||
menutrans &Close<Tab>:cclose 閉じる(&C)<Tab>:cclose
|
||||
menutrans &Convert\ to\ HEX<Tab>:%!xxd HEXへ変換(&C)<Tab>:%!xxd
|
||||
menutrans Conve&rt\ back<Tab>:%!xxd\ -r HEXから逆変換(&R)<Tab>%!xxd\ -r
|
||||
menutrans Se&T\ Compiler コンパイラ設定(&T)
|
||||
menutrans Show\ Compiler\ Se&ttings\ in\ Menu コンパイラ設定をメニューに表示(&T)
|
||||
menutrans Se&t\ Compiler コンパイラ設定(&T)
|
||||
|
||||
" Tools.Spelling Menu
|
||||
menutrans &Spelling スペリング(&S)
|
||||
@@ -289,7 +292,7 @@ endif
|
||||
|
||||
" Syntax menu
|
||||
menutrans &Syntax シンタックス(&S)
|
||||
menutrans &Show\ filetypes\ in\ menu 対応形式をメニューに表示(&S)
|
||||
menutrans &Show\ File\ Types\ in\ Menu 対応形式をメニューに表示(&S)
|
||||
menutrans Set\ '&syntax'\ only 'syntax'だけ設定(&S)
|
||||
menutrans Set\ '&filetype'\ too 'filetype'も設定(&F)
|
||||
menutrans &Off 無効化(&O)
|
||||
|
||||
@@ -73,9 +73,9 @@ menutrans Startup\ &Settings 起動時の設定(&S)
|
||||
menutrans &Global\ Settings 全体設定(&G)
|
||||
menutrans Toggle\ Pattern\ &Highlight<Tab>:set\ hls!
|
||||
\ パターン強調切替(&H)<Tab>:set\ hls!
|
||||
menutrans Toggle\ &Ignore-case<Tab>:set\ ic!
|
||||
menutrans Toggle\ &Ignoring\ Case<Tab>:set\ ic!
|
||||
\ 大小文字区別切替(&I)<Tab>:set\ ic!
|
||||
menutrans Toggle\ &Showmatch<Tab>:set\ sm!
|
||||
menutrans Toggle\ &Showing\ Matched\ Pairs<Tab>:set\ sm!
|
||||
\ マッチ表示切替(&S)<Tab>:set\ sm!
|
||||
menutrans &Context\ lines カーソル周辺行数(&C)
|
||||
menutrans &Virtual\ Edit 仮想編集(&V)
|
||||
@@ -86,7 +86,7 @@ menutrans Block\ and\ Insert ブロック/挿入モード時
|
||||
menutrans Always 常時
|
||||
menutrans Toggle\ Insert\ &Mode<Tab>:set\ im!
|
||||
\ 挿入(初心者)モード切替(&M)<Tab>:set\ im!
|
||||
menutrans Toggle\ Vi\ C&ompatible<Tab>:set\ cp!
|
||||
menutrans Toggle\ Vi\ C&ompatibility<Tab>:set\ cp!
|
||||
\ Vi互換モード切替(&O)<Tab>:set\ cp!
|
||||
menutrans Search\ &Path\.\.\. 検索パス(&P)\.\.\.
|
||||
menutrans Ta&g\ Files\.\.\. タグファイル(&G)\.\.\.
|
||||
@@ -106,19 +106,19 @@ let g:menutrans_tags_dialog = "タグファイルの名前を入力してくだ
|
||||
menutrans F&ile\ Settings ファイル設定(&I)
|
||||
menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu!
|
||||
\ 行番号表示切替(&N)<Tab>:set\ nu!
|
||||
menutrans Toggle\ relati&ve\ Line\ Numbering<Tab>:set\ rnu!
|
||||
menutrans Toggle\ Relati&ve\ Line\ Numbering<Tab>:set\ rnu!
|
||||
\ 相対行番号表示切替(&V)<Tab>:set\ rnu!
|
||||
menutrans Toggle\ &List\ Mode<Tab>:set\ list!
|
||||
\ リストモード切替(&L)<Tab>:set\ list!
|
||||
menutrans Toggle\ Line\ &Wrap<Tab>:set\ wrap!
|
||||
menutrans Toggle\ Line\ &Wrapping<Tab>:set\ wrap!
|
||||
\ 行折返し切替(&W)<Tab>:set\ wrap!
|
||||
menutrans Toggle\ W&rap\ at\ word<Tab>:set\ lbr!
|
||||
menutrans Toggle\ W&rapping\ at\ word<Tab>:set\ lbr!
|
||||
\ 単語折返し切替(&R)<Tab>:set\ lbr!
|
||||
menutrans Toggle\ &expand-tab<Tab>:set\ et!
|
||||
menutrans Toggle\ Tab\ &Expanding<Tab>:set\ et!
|
||||
\ タブ展開切替(&E)<Tab>:set\ et!
|
||||
menutrans Toggle\ &auto-indent<Tab>:set\ ai!
|
||||
menutrans Toggle\ &Auto\ Indenting<Tab>:set\ ai!
|
||||
\ 自動字下げ切替(&A)<Tab>:set\ ai!
|
||||
menutrans Toggle\ &C-indenting<Tab>:set\ cin!
|
||||
menutrans Toggle\ &C-Style\ Indenting<Tab>:set\ cin!
|
||||
\ C言語字下げ切替(&C)<Tab>:set\ cin!
|
||||
|
||||
" other options
|
||||
@@ -131,7 +131,9 @@ let g:menutrans_textwidth_dialog = "テキストの幅('textwidth')を設定し
|
||||
let g:menutrans_fileformat_dialog = "ファイル出力の際の改行記号の形式を選んでください."
|
||||
let g:menutrans_fileformat_choices = "&Unix\n&Dos\n&Mac\nキャンセル(&C)"
|
||||
|
||||
menutrans Show\ C&olor\ Schemes\ in\ Menu 色テーマをメニューに表示(&O)
|
||||
menutrans C&olor\ Scheme 色テーマ選択(&O)
|
||||
menutrans Show\ &Keymaps\ in\ Menu キーマップをメニューに表示(&K)
|
||||
menutrans &Keymap キーマップ(&K)
|
||||
menutrans None なし
|
||||
|
||||
@@ -153,7 +155,8 @@ menutrans &Open<Tab>:copen 開く(&O)<Tab>:copen
|
||||
menutrans &Close<Tab>:cclose 閉じる(&C)<Tab>:cclose
|
||||
menutrans &Convert\ to\ HEX<Tab>:%!xxd HEXへ変換(&C)<Tab>:%!xxd
|
||||
menutrans Conve&rt\ back<Tab>:%!xxd\ -r HEXから逆変換(&R)<Tab>%!xxd\ -r
|
||||
menutrans Se&T\ Compiler コンパイラ設定(&T)
|
||||
menutrans Show\ Compiler\ Se&ttings\ in\ Menu コンパイラ設定をメニューに表示(&T)
|
||||
menutrans Se&t\ Compiler コンパイラ設定(&T)
|
||||
|
||||
" Tools.Spelling Menu
|
||||
menutrans &Spelling スペリング(&S)
|
||||
@@ -289,7 +292,7 @@ endif
|
||||
|
||||
" Syntax menu
|
||||
menutrans &Syntax シンタックス(&S)
|
||||
menutrans &Show\ filetypes\ in\ menu 対応形式をメニューに表示(&S)
|
||||
menutrans &Show\ File\ Types\ in\ Menu 対応形式をメニューに表示(&S)
|
||||
menutrans Set\ '&syntax'\ only 'syntax'だけ設定(&S)
|
||||
menutrans Set\ '&filetype'\ too 'filetype'も設定(&F)
|
||||
menutrans &Off 無効化(&O)
|
||||
|
||||
@@ -73,9 +73,9 @@ menutrans Startup\ &Settings
|
||||
menutrans &Global\ Settings 全体設定(&G)
|
||||
menutrans Toggle\ Pattern\ &Highlight<Tab>:set\ hls!
|
||||
\ パターン強調切替(&H)<Tab>:set\ hls!
|
||||
menutrans Toggle\ &Ignore-case<Tab>:set\ ic!
|
||||
menutrans Toggle\ &Ignoring\ Case<Tab>:set\ ic!
|
||||
\ 大小文字区別切替(&I)<Tab>:set\ ic!
|
||||
menutrans Toggle\ &Showmatch<Tab>:set\ sm!
|
||||
menutrans Toggle\ &Showing\ Matched\ Pairs<Tab>:set\ sm!
|
||||
\ マッチ表示切替(&S)<Tab>:set\ sm!
|
||||
menutrans &Context\ lines カーソル周辺行数(&C)
|
||||
menutrans &Virtual\ Edit 仮想編集(&V)
|
||||
@@ -86,7 +86,7 @@ menutrans Block\ and\ Insert
|
||||
menutrans Always 常時
|
||||
menutrans Toggle\ Insert\ &Mode<Tab>:set\ im!
|
||||
\ 挿入(初心者)モード切替(&M)<Tab>:set\ im!
|
||||
menutrans Toggle\ Vi\ C&ompatible<Tab>:set\ cp!
|
||||
menutrans Toggle\ Vi\ C&ompatibility<Tab>:set\ cp!
|
||||
\ Vi互換モード切替(&O)<Tab>:set\ cp!
|
||||
menutrans Search\ &Path\.\.\. 検索パス(&P)\.\.\.
|
||||
menutrans Ta&g\ Files\.\.\. タグファイル(&G)\.\.\.
|
||||
@@ -106,19 +106,19 @@ let g:menutrans_tags_dialog = "
|
||||
menutrans F&ile\ Settings ファイル設定(&I)
|
||||
menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu!
|
||||
\ 行番号表示切替(&N)<Tab>:set\ nu!
|
||||
menutrans Toggle\ relati&ve\ Line\ Numbering<Tab>:set\ rnu!
|
||||
menutrans Toggle\ Relati&ve\ Line\ Numbering<Tab>:set\ rnu!
|
||||
\ 相対行番号表示切替(&V)<Tab>:set\ rnu!
|
||||
menutrans Toggle\ &List\ Mode<Tab>:set\ list!
|
||||
\ リストモード切替(&L)<Tab>:set\ list!
|
||||
menutrans Toggle\ Line\ &Wrap<Tab>:set\ wrap!
|
||||
menutrans Toggle\ Line\ &Wrapping<Tab>:set\ wrap!
|
||||
\ 行折返し切替(&W)<Tab>:set\ wrap!
|
||||
menutrans Toggle\ W&rap\ at\ word<Tab>:set\ lbr!
|
||||
menutrans Toggle\ W&rapping\ at\ word<Tab>:set\ lbr!
|
||||
\ 単語折返し切替(&R)<Tab>:set\ lbr!
|
||||
menutrans Toggle\ &expand-tab<Tab>:set\ et!
|
||||
menutrans Toggle\ Tab\ &Expanding<Tab>:set\ et!
|
||||
\ タブ展開切替(&E)<Tab>:set\ et!
|
||||
menutrans Toggle\ &auto-indent<Tab>:set\ ai!
|
||||
menutrans Toggle\ &Auto\ Indenting<Tab>:set\ ai!
|
||||
\ 自動字下げ切替(&A)<Tab>:set\ ai!
|
||||
menutrans Toggle\ &C-indenting<Tab>:set\ cin!
|
||||
menutrans Toggle\ &C-Style\ Indenting<Tab>:set\ cin!
|
||||
\ C言語字下げ切替(&C)<Tab>:set\ cin!
|
||||
|
||||
" other options
|
||||
@@ -131,7 +131,9 @@ let g:menutrans_textwidth_dialog = "
|
||||
let g:menutrans_fileformat_dialog = "ファイル出力の際の改行記号の形式を選んでください."
|
||||
let g:menutrans_fileformat_choices = "&Unix\n&Dos\n&Mac\nキャンセル(&C)"
|
||||
|
||||
menutrans Show\ C&olor\ Schemes\ in\ Menu 色テーマをメニューに表示(&O)
|
||||
menutrans C&olor\ Scheme 色テーマ選択(&O)
|
||||
menutrans Show\ &Keymaps\ in\ Menu キーマップをメニューに表示(&K)
|
||||
menutrans &Keymap キーマップ(&K)
|
||||
menutrans None なし
|
||||
|
||||
@@ -153,7 +155,8 @@ menutrans &Open<Tab>:copen
|
||||
menutrans &Close<Tab>:cclose 閉じる(&C)<Tab>:cclose
|
||||
menutrans &Convert\ to\ HEX<Tab>:%!xxd HEXへ変換(&C)<Tab>:%!xxd
|
||||
menutrans Conve&rt\ back<Tab>:%!xxd\ -r HEXから逆変換(&R)<Tab>%!xxd\ -r
|
||||
menutrans Se&T\ Compiler コンパイラ設定(&T)
|
||||
menutrans Show\ Compiler\ Se&ttings\ in\ Menu コンパイラ設定をメニューに表示(&T)
|
||||
menutrans Se&t\ Compiler コンパイラ設定(&T)
|
||||
|
||||
" Tools.Spelling Menu
|
||||
menutrans &Spelling スペリング(&S)
|
||||
@@ -289,7 +292,7 @@ endif
|
||||
|
||||
" Syntax menu
|
||||
menutrans &Syntax シンタックス(&S)
|
||||
menutrans &Show\ filetypes\ in\ menu 対応形式をメニューに表示(&S)
|
||||
menutrans &Show\ File\ Types\ in\ Menu 対応形式をメニューに表示(&S)
|
||||
menutrans Set\ '&syntax'\ only 'syntax'だけ設定(&S)
|
||||
menutrans Set\ '&filetype'\ too 'filetype'も設定(&F)
|
||||
menutrans &Off 無効化(&O)
|
||||
|
||||
@@ -18,9 +18,8 @@
|
||||
ておかなければなりません。正しく学習するにはコマンドを実際に試さなければ
|
||||
ならないのです。文章を読んだだけならば、きっと忘れてしまいます!
|
||||
|
||||
さぁ、Capsロック(Shift-Lock)キーが押されていないことを確認した後、画面に
|
||||
レッスン1.1 が全部表示されるところまで、j キーを押してカーソルを移動しま
|
||||
しょう。
|
||||
さぁ、Capsロックキーが押されていないことを確認した後、画面にレッスン1.1
|
||||
が全部表示されるところまで、j キーを押してカーソルを移動しましょう。
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
レッスン 1.1: カーソルの移動
|
||||
|
||||
@@ -155,7 +154,7 @@ NOTE:
|
||||
|
||||
4. 変更をファイルに保存します: :wq <ENTER>
|
||||
|
||||
5. ステップ 1 で vimtutuor を終了した場合は vimtutor を再度起動し、以下の
|
||||
5. ステップ 1 で vimtutor を終了した場合は vimtutor を再度起動し、以下の
|
||||
要約へ進みましょう。
|
||||
|
||||
6. 以上のステップを読んで理解した上でこれを実行しましょう。
|
||||
|
||||
@@ -18,9 +18,8 @@
|
||||
ておかなければなりません。正しく学習するにはコマンドを実際に試さなければ
|
||||
ならないのです。文章を読んだだけならば、きっと忘れてしまいます!
|
||||
|
||||
さぁ、Capsロック(Shift-Lock)キーが押されていないことを確認した後、画面に
|
||||
レッスン1.1 が全部表示されるところまで、j キーを押してカーソルを移動しま
|
||||
しょう。
|
||||
さぁ、Capsロックキーが押されていないことを確認した後、画面にレッスン1.1
|
||||
が全部表示されるところまで、j キーを押してカーソルを移動しましょう。
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
レッスン 1.1: カーソルの移動
|
||||
|
||||
@@ -155,7 +154,7 @@ NOTE:
|
||||
|
||||
4. 変更をファイルに保存します: :wq <ENTER>
|
||||
|
||||
5. ステップ 1 で vimtutuor を終了した場合は vimtutor を再度起動し、以下の
|
||||
5. ステップ 1 で vimtutor を終了した場合は vimtutor を再度起動し、以下の
|
||||
要約へ進みましょう。
|
||||
|
||||
6. 以上のステップを読んで理解した上でこれを実行しましょう。
|
||||
|
||||
@@ -18,9 +18,8 @@
|
||||
ておかなければなりません。正しく学習するにはコマンドを実際に試さなければ
|
||||
ならないのです。文章を読んだだけならば、きっと忘れてしまいます!
|
||||
|
||||
さぁ、Capsロック(Shift-Lock)キーが押されていないことを確認した後、画面に
|
||||
レッスン1.1 が全部表示されるところまで、j キーを押してカーソルを移動しま
|
||||
しょう。
|
||||
さぁ、Capsロックキーが押されていないことを確認した後、画面にレッスン1.1
|
||||
が全部表示されるところまで、j キーを押してカーソルを移動しましょう。
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
レッスン 1.1: カーソルの移動
|
||||
|
||||
@@ -155,7 +154,7 @@ NOTE: 全てのレッスンを通じて、覚えようとするのではなく
|
||||
|
||||
4. 変更をファイルに保存します: :wq <ENTER>
|
||||
|
||||
5. ステップ 1 で vimtutuor を終了した場合は vimtutor を再度起動し、以下の
|
||||
5. ステップ 1 で vimtutor を終了した場合は vimtutor を再度起動し、以下の
|
||||
要約へ進みましょう。
|
||||
|
||||
6. 以上のステップを読んで理解した上でこれを実行しましょう。
|
||||
|
||||
@@ -2167,6 +2167,7 @@ test_arglist \
|
||||
test_cmdline \
|
||||
test_command_count \
|
||||
test_comparators \
|
||||
test_compiler \
|
||||
test_crypt \
|
||||
test_cscope \
|
||||
test_cursor_func \
|
||||
|
||||
+259
-214
File diff suppressed because it is too large
Load Diff
+259
-214
File diff suppressed because it is too large
Load Diff
+259
-214
File diff suppressed because it is too large
Load Diff
+162
-103
@@ -227,20 +227,173 @@ static struct fmtpattern
|
||||
{'o', ".\\+"}
|
||||
};
|
||||
|
||||
/*
|
||||
* Convert an errorformat pattern to a regular expression pattern.
|
||||
* See fmt_pat definition above for the list of supported patterns.
|
||||
*/
|
||||
static char_u *
|
||||
fmtpat_to_regpat(
|
||||
char_u *efmp,
|
||||
efm_T *fmt_ptr,
|
||||
int idx,
|
||||
int round,
|
||||
char_u *ptr,
|
||||
char_u *errmsg)
|
||||
{
|
||||
char_u *srcptr;
|
||||
|
||||
if (fmt_ptr->addr[idx])
|
||||
{
|
||||
/* Each errorformat pattern can occur only once */
|
||||
sprintf((char *)errmsg,
|
||||
_("E372: Too many %%%c in format string"), *efmp);
|
||||
EMSG(errmsg);
|
||||
return NULL;
|
||||
}
|
||||
if ((idx && idx < 6
|
||||
&& vim_strchr((char_u *)"DXOPQ", fmt_ptr->prefix) != NULL)
|
||||
|| (idx == 6
|
||||
&& vim_strchr((char_u *)"OPQ", fmt_ptr->prefix) == NULL))
|
||||
{
|
||||
sprintf((char *)errmsg,
|
||||
_("E373: Unexpected %%%c in format string"), *efmp);
|
||||
EMSG(errmsg);
|
||||
return NULL;
|
||||
}
|
||||
fmt_ptr->addr[idx] = (char_u)++round;
|
||||
*ptr++ = '\\';
|
||||
*ptr++ = '(';
|
||||
#ifdef BACKSLASH_IN_FILENAME
|
||||
if (*efmp == 'f')
|
||||
{
|
||||
/* Also match "c:" in the file name, even when
|
||||
* checking for a colon next: "%f:".
|
||||
* "\%(\a:\)\=" */
|
||||
STRCPY(ptr, "\\%(\\a:\\)\\=");
|
||||
ptr += 10;
|
||||
}
|
||||
#endif
|
||||
if (*efmp == 'f' && efmp[1] != NUL)
|
||||
{
|
||||
if (efmp[1] != '\\' && efmp[1] != '%')
|
||||
{
|
||||
/* A file name may contain spaces, but this isn't
|
||||
* in "\f". For "%f:%l:%m" there may be a ":" in
|
||||
* the file name. Use ".\{-1,}x" instead (x is
|
||||
* the next character), the requirement that :999:
|
||||
* follows should work. */
|
||||
STRCPY(ptr, ".\\{-1,}");
|
||||
ptr += 7;
|
||||
}
|
||||
else
|
||||
{
|
||||
/* File name followed by '\\' or '%': include as
|
||||
* many file name chars as possible. */
|
||||
STRCPY(ptr, "\\f\\+");
|
||||
ptr += 4;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
srcptr = (char_u *)fmt_pat[idx].pattern;
|
||||
while ((*ptr = *srcptr++) != NUL)
|
||||
++ptr;
|
||||
}
|
||||
*ptr++ = '\\';
|
||||
*ptr++ = ')';
|
||||
|
||||
return ptr;
|
||||
}
|
||||
|
||||
/*
|
||||
* Convert a scanf like format in 'errorformat' to a regular expression.
|
||||
*/
|
||||
static char_u *
|
||||
scanf_fmt_to_regpat(
|
||||
char_u *efm,
|
||||
int len,
|
||||
char_u **pefmp,
|
||||
char_u *ptr,
|
||||
char_u *errmsg)
|
||||
{
|
||||
char_u *efmp = *pefmp;
|
||||
|
||||
if (*++efmp == '[' || *efmp == '\\')
|
||||
{
|
||||
if ((*ptr++ = *efmp) == '[') /* %*[^a-z0-9] etc. */
|
||||
{
|
||||
if (efmp[1] == '^')
|
||||
*ptr++ = *++efmp;
|
||||
if (efmp < efm + len)
|
||||
{
|
||||
*ptr++ = *++efmp; /* could be ']' */
|
||||
while (efmp < efm + len
|
||||
&& (*ptr++ = *++efmp) != ']')
|
||||
/* skip */;
|
||||
if (efmp == efm + len)
|
||||
{
|
||||
EMSG(_("E374: Missing ] in format string"));
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (efmp < efm + len) /* %*\D, %*\s etc. */
|
||||
*ptr++ = *++efmp;
|
||||
*ptr++ = '\\';
|
||||
*ptr++ = '+';
|
||||
}
|
||||
else
|
||||
{
|
||||
/* TODO: scanf()-like: %*ud, %*3c, %*f, ... ? */
|
||||
sprintf((char *)errmsg,
|
||||
_("E375: Unsupported %%%c in format string"), *efmp);
|
||||
EMSG(errmsg);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
*pefmp = efmp;
|
||||
|
||||
return ptr;
|
||||
}
|
||||
|
||||
/*
|
||||
* Analyze/parse an errorformat prefix.
|
||||
*/
|
||||
static int
|
||||
efm_analyze_prefix(char_u **pefmp, efm_T *fmt_ptr, char_u *errmsg)
|
||||
{
|
||||
char_u *efmp = *pefmp;
|
||||
|
||||
if (vim_strchr((char_u *)"+-", *efmp) != NULL)
|
||||
fmt_ptr->flags = *efmp++;
|
||||
if (vim_strchr((char_u *)"DXAEWICZGOPQ", *efmp) != NULL)
|
||||
fmt_ptr->prefix = *efmp;
|
||||
else
|
||||
{
|
||||
sprintf((char *)errmsg,
|
||||
_("E376: Invalid %%%c in format string prefix"), *efmp);
|
||||
EMSG(errmsg);
|
||||
return FAIL;
|
||||
}
|
||||
|
||||
*pefmp = efmp;
|
||||
|
||||
return OK;
|
||||
}
|
||||
|
||||
/*
|
||||
* Converts a 'errorformat' string to regular expression pattern
|
||||
*/
|
||||
static int
|
||||
efm_to_regpat(
|
||||
char_u *efm,
|
||||
int len,
|
||||
int len,
|
||||
efm_T *fmt_ptr,
|
||||
char_u *regpat,
|
||||
char_u *errmsg)
|
||||
{
|
||||
char_u *ptr;
|
||||
char_u *efmp;
|
||||
char_u *srcptr;
|
||||
int round;
|
||||
int idx = 0;
|
||||
|
||||
@@ -260,102 +413,17 @@ efm_to_regpat(
|
||||
break;
|
||||
if (idx < FMT_PATTERNS)
|
||||
{
|
||||
if (fmt_ptr->addr[idx])
|
||||
{
|
||||
sprintf((char *)errmsg,
|
||||
_("E372: Too many %%%c in format string"), *efmp);
|
||||
EMSG(errmsg);
|
||||
ptr = fmtpat_to_regpat(efmp, fmt_ptr, idx, round, ptr,
|
||||
errmsg);
|
||||
if (ptr == NULL)
|
||||
return -1;
|
||||
}
|
||||
if ((idx
|
||||
&& idx < 6
|
||||
&& vim_strchr((char_u *)"DXOPQ",
|
||||
fmt_ptr->prefix) != NULL)
|
||||
|| (idx == 6
|
||||
&& vim_strchr((char_u *)"OPQ",
|
||||
fmt_ptr->prefix) == NULL))
|
||||
{
|
||||
sprintf((char *)errmsg,
|
||||
_("E373: Unexpected %%%c in format string"), *efmp);
|
||||
EMSG(errmsg);
|
||||
return -1;
|
||||
}
|
||||
fmt_ptr->addr[idx] = (char_u)++round;
|
||||
*ptr++ = '\\';
|
||||
*ptr++ = '(';
|
||||
#ifdef BACKSLASH_IN_FILENAME
|
||||
if (*efmp == 'f')
|
||||
{
|
||||
/* Also match "c:" in the file name, even when
|
||||
* checking for a colon next: "%f:".
|
||||
* "\%(\a:\)\=" */
|
||||
STRCPY(ptr, "\\%(\\a:\\)\\=");
|
||||
ptr += 10;
|
||||
}
|
||||
#endif
|
||||
if (*efmp == 'f' && efmp[1] != NUL)
|
||||
{
|
||||
if (efmp[1] != '\\' && efmp[1] != '%')
|
||||
{
|
||||
/* A file name may contain spaces, but this isn't
|
||||
* in "\f". For "%f:%l:%m" there may be a ":" in
|
||||
* the file name. Use ".\{-1,}x" instead (x is
|
||||
* the next character), the requirement that :999:
|
||||
* follows should work. */
|
||||
STRCPY(ptr, ".\\{-1,}");
|
||||
ptr += 7;
|
||||
}
|
||||
else
|
||||
{
|
||||
/* File name followed by '\\' or '%': include as
|
||||
* many file name chars as possible. */
|
||||
STRCPY(ptr, "\\f\\+");
|
||||
ptr += 4;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
srcptr = (char_u *)fmt_pat[idx].pattern;
|
||||
while ((*ptr = *srcptr++) != NUL)
|
||||
++ptr;
|
||||
}
|
||||
*ptr++ = '\\';
|
||||
*ptr++ = ')';
|
||||
round++;
|
||||
}
|
||||
else if (*efmp == '*')
|
||||
{
|
||||
if (*++efmp == '[' || *efmp == '\\')
|
||||
{
|
||||
if ((*ptr++ = *efmp) == '[') /* %*[^a-z0-9] etc. */
|
||||
{
|
||||
if (efmp[1] == '^')
|
||||
*ptr++ = *++efmp;
|
||||
if (efmp < efm + len)
|
||||
{
|
||||
*ptr++ = *++efmp; /* could be ']' */
|
||||
while (efmp < efm + len
|
||||
&& (*ptr++ = *++efmp) != ']')
|
||||
/* skip */;
|
||||
if (efmp == efm + len)
|
||||
{
|
||||
EMSG(_("E374: Missing ] in format string"));
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (efmp < efm + len) /* %*\D, %*\s etc. */
|
||||
*ptr++ = *++efmp;
|
||||
*ptr++ = '\\';
|
||||
*ptr++ = '+';
|
||||
}
|
||||
else
|
||||
{
|
||||
/* TODO: scanf()-like: %*ud, %*3c, %*f, ... ? */
|
||||
sprintf((char *)errmsg,
|
||||
_("E375: Unsupported %%%c in format string"), *efmp);
|
||||
EMSG(errmsg);
|
||||
ptr = scanf_fmt_to_regpat(efm, len, &efmp, ptr, errmsg);
|
||||
if (ptr == NULL)
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
else if (vim_strchr((char_u *)"%\\.^$~[", *efmp) != NULL)
|
||||
*ptr++ = *efmp; /* regexp magic characters */
|
||||
@@ -365,17 +433,8 @@ efm_to_regpat(
|
||||
fmt_ptr->conthere = TRUE;
|
||||
else if (efmp == efm + 1) /* analyse prefix */
|
||||
{
|
||||
if (vim_strchr((char_u *)"+-", *efmp) != NULL)
|
||||
fmt_ptr->flags = *efmp++;
|
||||
if (vim_strchr((char_u *)"DXAEWICZGOPQ", *efmp) != NULL)
|
||||
fmt_ptr->prefix = *efmp;
|
||||
else
|
||||
{
|
||||
sprintf((char *)errmsg,
|
||||
_("E376: Invalid %%%c in format string prefix"), *efmp);
|
||||
EMSG(errmsg);
|
||||
if (efm_analyze_prefix(&efmp, fmt_ptr, errmsg) == FAIL)
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@@ -10531,10 +10531,16 @@ unshowmode(int force)
|
||||
void
|
||||
clearmode(void)
|
||||
{
|
||||
int save_msg_row = msg_row;
|
||||
int save_msg_col = msg_col;
|
||||
|
||||
msg_pos_mode();
|
||||
if (Recording)
|
||||
recording_mode(HL_ATTR(HLF_CM));
|
||||
msg_clr_eos();
|
||||
|
||||
msg_col = save_msg_col;
|
||||
msg_row = save_msg_row;
|
||||
}
|
||||
|
||||
static void
|
||||
|
||||
+3
-1
@@ -9855,7 +9855,9 @@ syn_id2colors(int hl_id, guicolor_T *fgp, guicolor_T *bgp)
|
||||
}
|
||||
#endif
|
||||
|
||||
#if defined(FEAT_TERMINAL) || defined(PROTO)
|
||||
#if (defined(WIN3264) \
|
||||
&& !defined(FEAT_GUI_W32) \
|
||||
&& defined(FEAT_TERMGUICOLORS)) || defined(PROTO)
|
||||
void
|
||||
syn_id2cterm_bg(int hl_id, int *fgp, int *bgp)
|
||||
{
|
||||
|
||||
@@ -5,6 +5,7 @@ source test_assign.vim
|
||||
source test_bufline.vim
|
||||
source test_cd.vim
|
||||
source test_changedtick.vim
|
||||
source test_compiler.vim
|
||||
source test_cursor_func.vim
|
||||
source test_delete.vim
|
||||
source test_ex_undo.vim
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
" Test the :compiler command
|
||||
|
||||
func Test_compiler()
|
||||
if !executable('perl')
|
||||
return
|
||||
endif
|
||||
|
||||
e Xfoo.pl
|
||||
compiler perl
|
||||
call assert_equal('perl', b:current_compiler)
|
||||
call assert_fails('let g:current_compiler', 'E121:')
|
||||
|
||||
call setline(1, ['#!/usr/bin/perl -w', 'use strict;', 'my $foo=1'])
|
||||
w!
|
||||
call feedkeys(":make\<CR>\<CR>", 'tx')
|
||||
call assert_fails('clist', 'E42:')
|
||||
|
||||
call setline(1, ['#!/usr/bin/perl -w', 'use strict;', '$foo=1'])
|
||||
w!
|
||||
call feedkeys(":make\<CR>\<CR>", 'tx')
|
||||
let a=execute('clist')
|
||||
call assert_match("\n 1 Xfoo.pl:3: Global symbol \"\$foo\" "
|
||||
\ . "requires explicit package name", a)
|
||||
|
||||
call delete('Xfoo.pl')
|
||||
bw!
|
||||
endfunc
|
||||
|
||||
func Test_compiler_without_arg()
|
||||
let a=split(execute('compiler'))
|
||||
call assert_match('^.*runtime/compiler/ant.vim$', a[0])
|
||||
call assert_match('^.*runtime/compiler/bcc.vim$', a[1])
|
||||
call assert_match('^.*runtime/compiler/xmlwf.vim$', a[-1])
|
||||
endfunc
|
||||
|
||||
func Test_compiler_completion()
|
||||
call feedkeys(":compiler \<C-A>\<C-B>\"\<CR>", 'tx')
|
||||
call assert_match('^"compiler ant bcc .* xmlwf$', @:)
|
||||
|
||||
call feedkeys(":compiler p\<C-A>\<C-B>\"\<CR>", 'tx')
|
||||
call assert_equal('"compiler pbx perl php pylint pyunit', @:)
|
||||
|
||||
call feedkeys(":compiler! p\<C-A>\<C-B>\"\<CR>", 'tx')
|
||||
call assert_equal('"compiler! pbx perl php pylint pyunit', @:)
|
||||
endfunc
|
||||
|
||||
func Test_compiler_error()
|
||||
call assert_fails('compiler doesnotexist', 'E666:')
|
||||
endfunc
|
||||
@@ -96,6 +96,30 @@ func Test_min()
|
||||
call assert_fails('call min(v:none)', 'E712:')
|
||||
endfunc
|
||||
|
||||
func Test_strwidth()
|
||||
for aw in ['single', 'double']
|
||||
exe 'set ambiwidth=' . aw
|
||||
call assert_equal(0, strwidth(''))
|
||||
call assert_equal(1, strwidth("\t"))
|
||||
call assert_equal(3, strwidth('Vim'))
|
||||
call assert_equal(4, strwidth(1234))
|
||||
call assert_equal(5, strwidth(-1234))
|
||||
|
||||
if has('multi_byte')
|
||||
call assert_equal(2, strwidth('😉'))
|
||||
call assert_equal(17, strwidth('Eĥoŝanĝo ĉiuĵaŭde'))
|
||||
call assert_equal((aw == 'single') ? 6 : 7, strwidth('Straße'))
|
||||
endif
|
||||
|
||||
call assert_fails('call strwidth({->0})', 'E729:')
|
||||
call assert_fails('call strwidth([])', 'E730:')
|
||||
call assert_fails('call strwidth({})', 'E731:')
|
||||
call assert_fails('call strwidth(1.2)', 'E806:')
|
||||
endfor
|
||||
|
||||
set ambiwidth&
|
||||
endfunc
|
||||
|
||||
func Test_str2nr()
|
||||
call assert_equal(0, str2nr(''))
|
||||
call assert_equal(1, str2nr('1'))
|
||||
|
||||
@@ -38,3 +38,24 @@ function Test_messages()
|
||||
let &more = oldmore
|
||||
endtry
|
||||
endfunction
|
||||
|
||||
" Patch 7.4.1696 defined the "clearmode()" command for clearing the mode
|
||||
" indicator (e.g., "-- INSERT --") when ":stopinsert" is invoked. Message
|
||||
" output could then be disturbed when 'cmdheight' was greater than one.
|
||||
" This test ensures that the bugfix for this issue remains in place.
|
||||
function! Test_stopinsert_does_not_break_message_output()
|
||||
set cmdheight=2
|
||||
redraw!
|
||||
|
||||
stopinsert | echo 'test echo'
|
||||
call assert_equal(116, screenchar(&lines - 1, 1))
|
||||
call assert_equal(32, screenchar(&lines, 1))
|
||||
redraw!
|
||||
|
||||
stopinsert | echomsg 'test echomsg'
|
||||
call assert_equal(116, screenchar(&lines - 1, 1))
|
||||
call assert_equal(32, screenchar(&lines, 1))
|
||||
redraw!
|
||||
|
||||
set cmdheight&
|
||||
endfunction
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
" Tests for tabpage
|
||||
|
||||
|
||||
function Test_tabpage()
|
||||
bw!
|
||||
" Simple test for opening and closing a tab page
|
||||
@@ -317,6 +318,34 @@ function s:reconstruct_tabpage_for_test(nr)
|
||||
endfor
|
||||
endfunc
|
||||
|
||||
func Test_tabpage_ctrl_pgup_pgdown()
|
||||
enew!
|
||||
tabnew tab1
|
||||
tabnew tab2
|
||||
|
||||
call assert_equal(3, tabpagenr())
|
||||
exe "norm! \<C-PageUp>"
|
||||
call assert_equal(2, tabpagenr())
|
||||
exe "norm! \<C-PageDown>"
|
||||
call assert_equal(3, tabpagenr())
|
||||
|
||||
" Check wrapping at last or first page.
|
||||
exe "norm! \<C-PageDown>"
|
||||
call assert_equal(1, tabpagenr())
|
||||
exe "norm! \<C-PageUp>"
|
||||
call assert_equal(3, tabpagenr())
|
||||
|
||||
" With a count, <C-PageUp> and <C-PageDown> are not symmetrical somehow:
|
||||
" - {count}<C-PageUp> goes {count} pages downward (relative count)
|
||||
" - {count}<C-PageDown> goes to page number {count} (absolute count)
|
||||
exe "norm! 2\<C-PageUp>"
|
||||
call assert_equal(1, tabpagenr())
|
||||
exe "norm! 2\<C-PageDown>"
|
||||
call assert_equal(2, tabpagenr())
|
||||
|
||||
1tabonly!
|
||||
endfunc
|
||||
|
||||
" Test for [count] of tabclose
|
||||
function Test_tabpage_with_tabclose()
|
||||
|
||||
@@ -491,4 +520,18 @@ func Test_close_on_quitpre()
|
||||
buf Xtest
|
||||
endfunc
|
||||
|
||||
func Test_tabs()
|
||||
enew!
|
||||
tabnew tab1
|
||||
norm ixxx
|
||||
let a=split(execute(':tabs'), "\n")
|
||||
call assert_equal(['Tab page 1',
|
||||
\ ' [No Name]',
|
||||
\ 'Tab page 2',
|
||||
\ '> + tab1'], a)
|
||||
|
||||
1tabonly!
|
||||
bw!
|
||||
endfunc
|
||||
|
||||
" vim: shiftwidth=2 sts=2 expandtab
|
||||
|
||||
@@ -155,6 +155,25 @@ func Test_blockwise_visual()
|
||||
enew!
|
||||
endfunc
|
||||
|
||||
" Test swapping corners in blockwise visual mode with o and O
|
||||
func Test_blockwise_visual_o_O()
|
||||
enew!
|
||||
|
||||
exe "norm! 10i.\<Esc>Y4P3lj\<C-V>4l2jr "
|
||||
exe "norm! gvO\<Esc>ra"
|
||||
exe "norm! gvO\<Esc>rb"
|
||||
exe "norm! gvo\<C-c>rc"
|
||||
exe "norm! gvO\<C-c>rd"
|
||||
|
||||
call assert_equal(['..........',
|
||||
\ '...c d..',
|
||||
\ '... ..',
|
||||
\ '...a b..',
|
||||
\ '..........'], getline(1, '$'))
|
||||
|
||||
enew!
|
||||
endfun
|
||||
|
||||
" Test Virtual replace mode.
|
||||
func Test_virtual_replace()
|
||||
if exists('&t_kD')
|
||||
|
||||
@@ -776,6 +776,24 @@ static char *(features[]) =
|
||||
|
||||
static int included_patches[] =
|
||||
{ /* Add new patch number below this line */
|
||||
/**/
|
||||
10,
|
||||
/**/
|
||||
9,
|
||||
/**/
|
||||
8,
|
||||
/**/
|
||||
7,
|
||||
/**/
|
||||
6,
|
||||
/**/
|
||||
5,
|
||||
/**/
|
||||
4,
|
||||
/**/
|
||||
3,
|
||||
/**/
|
||||
2,
|
||||
/**/
|
||||
1,
|
||||
/**/
|
||||
|
||||
Reference in New Issue
Block a user