Vim patchダイジェスト [2018/06]

[Vim](http://www.vim.org/) patchダイジェスト \[2018/06] 
([8.1.0027](https://github.com/vim/vim/commit/f273245f6433d5d43a5671306b520a3230c35787) ～ [8.1.0133](https://github.com/vim/vim/commit/46577b5e5445c4aaa1e7ae1764373d11dae71663))

* [8.1.0133](https://github.com/vim/vim/commit/46577b5e5445c4aaa1e7ae1764373d11dae71663): `tagfiles()`が重複するエントリを持ててしまう件を修正しました。
* [8.1.0130](https://github.com/vim/vim/commit/ad6480961080f80a455b2394f27b02935a2ded52): すでに関数が呼ばれていた場合に、`:profdel func` が正しく動作しない件を修正しました。
* [8.1.0129](https://github.com/vim/vim/commit/668324ef4fd59980dc57b2eefe57eddc57c7b920): いくつかのxtermライクな端末でまだ起動時にゴミ(`p`) が表示される件を修正しました。
* [8.1.0128](https://github.com/vim/vim/commit/304925e75031751fc87b51e387eb079bf3ae2066): MSYS2のビルド手順を追加しました。デフォルトの`WINVER`を設定するようにしました。MSYS2用に`$PATH`を設定するバッチファイルを追加しました。(関連patch: [Fix missing patch number](https://github.com/vim/vim/commit/ffd112edc6a8f72b66c06207bff4431f6aec7b6f))
* [8.1.0125](https://github.com/vim/vim/commit/630afe889a2a02b367ea8eaaa48e66ed81e77ff3): `'virtualedit'`設定時に最終行のマルチバイト文字を置き換えするとバッファの内容が壊れる場合がある件を修正しました。
* [8.1.0124](https://github.com/vim/vim/commit/d8b37a53bd29cab78c6997aa75207385213f23e2): `has('vcon')`がwin32以外の端末の場合でもtrueを返していた件を修正しました。
* [8.1.0123](https://github.com/vim/vim/commit/b0eb14f9392a8d95045182c4e520530319ce44c2): Windows: `'notgc'`設定後に色がおかしくなる件を修正しました。
* [8.1.0121](https://github.com/vim/vim/commit/ca4b613c692b927c9345dc9e3d6be5de35266be2): balloonevalを使用すると`'vartabstop'`関連でクラッシュする件を修正しました。
* [8.1.0120](https://github.com/vim/vim/commit/dc9e955fb07f410d5d3e981ce18d895dd2847c85): `:sort`で変更がない場合でも`'modified'`をセットしていた件を修正しました。
* [8.1.0115](https://github.com/vim/vim/commit/b7a5ab112ab2267c54acdb6a326642afcd797bc4): matchparenプラグインでエラーが発生することがある件を修正しました。
* [runtimeファイル更新](https://github.com/vim/vim/commit/675e8d6adb88d5b38087870dfda51c0205070741): helpファイル、[todo](https://github.com/vim/vim/commit/675e8d6adb88d5b38087870dfda51c0205070741#diff-38d7929bd26d74d92ceddf984bbfc8db)の更新。他。
* [8.1.0112](https://github.com/vim/vim/commit/3dddb09c98825acefa6f2d94bb369b8e00d7b3e5): `searchpair()`を間違った引数で呼び出してもエラーメッセージを表示しない件を修正しました。
* [8.1.0110](https://github.com/vim/vim/commit/fc0896093c3b3e753859a5f929921933e7a2e6cd): :four_leaf_clover:`'shortmess'`に`'F'`が含まれていても、`:file`が引数なしの場合はファイル情報を表示するようにしました。
* [8.1.0108](https://github.com/vim/vim/commit/a4a2934e59429e2ff68d478556ad8b2043fb0fda): :four_leaf_clover:デンマーク語のメッセージ翻訳を追加しました。言語のリストを共通のmakefileに移動しました。
* [8.1.0107](https://github.com/vim/vim/commit/defe6424aee6201241b7cb231b62db4bbb9f4a9f): Python: バッファオプションを取得するとコマンドラインのメッセージがクリアされてしまう件を修正しました。
* [8.1.0105](https://github.com/vim/vim/commit/04958cbaf25eea27eceedaa987adfb354ad5f7fd): :four_leaf_clover:可変タブストップ機能を追加しました。(`:h 'varsofttabstop'`, `:h 'vartabstop'`) (関連patch: [8.1.0116](https://github.com/vim/vim/commit/a87b72cc316e065d66dcbcf7ec1cde330adef3a3), [8.1.0126](https://github.com/vim/vim/commit/307ac5c68e9e624ab713136d79f35bb73f780d2d), [8.1.0138](https://github.com/vim/vim/commit/33d5ab3795720b7d986f9f17f660ee9e448466e0))
* [8.1.0100](https://github.com/vim/vim/commit/6dccc962f3d019f94656e77309aa00af7bffa4c3): terminal-debugger: watch pointを設定した時にエラーになる件を修正しました。
* [8.1.0098](https://github.com/vim/vim/commit/bcf9442307075bac40d44328c8bf7ea21857b138): `\z()`込みのパターン検索でとても時間が掛かる場合に落ちる件を修正しました。test用関数`test_override()`の第1引数に`nfa_fail`を指定できるようにしました。
* [8.1.0096](https://github.com/vim/vim/commit/8c55533c6f109db2a0fff69651887f9474eb09c6): helpファイル内の "auto-commands" と "auto commands" の表現をやめて "autocommands" に統一しました。
* [8.1.0091](https://github.com/vim/vim/commit/4551c0a9fcdbdef52836d4852686d54b5e47fdaf): :four_leaf_clover:`debugbreak()`を追加してterminal debuggerがWindowsでも実行中のプログラムを止められるようにしました。promptバッファが`'modified'`を尊重するようにしました。(関連patch: [8.1.0093](https://github.com/vim/vim/commit/2ed890f1f810f977ec6a235efd8bf58adddcd0e7))
* [8.1.0087](https://github.com/vim/vim/commit/f9c3883b11b33f0c548df5e949ba59fde74d3e7b): `'guioptions'`に`'!'`を含んでいる場合の`:!cmd`がエラーを`v:shell_error`に反映しない件を修正しました。
* [8.1.0084](https://github.com/vim/vim/commit/828c3d70833a0689cc07581f2a67d06430675da5): :four_leaf_clover:Windowsでユーザー名補完がおこなえるようになりました。
* [8.1.0083](https://github.com/vim/vim/commit/8516071124dbb7ad7caa43cc98ae3c57ae093c9e): テキストオブジェクト `is` と `as` が引用符で囲まれた句読点に対して正しく動作しない件を修正しました。
* [8.1.0081](https://github.com/vim/vim/commit/f07f9e731eb97bbdbd1b0b3983750589e4f557a6): terminal-debugger: `'background'`の変更でハイライトカラーの調整がおこなわれるようにしました。
* [8.1.0080](https://github.com/vim/vim/commit/de1a83147a28d3db8f9fca415ffc8fa04218eac2): :four_leaf_clover:terminal-debugger: ブレークポイント番号を`sign`に表示するようにしました。
* [runtimeファイル更新](https://github.com/vim/vim/commit/d2f3a8b8787333abf2300d38836b196955f10c00): helpファイル、[todo](https://github.com/vim/vim/commit/d2f3a8b8787333abf2300d38836b196955f10c00#diff-38d7929bd26d74d92ceddf984bbfc8db)の更新。他。
* [8.1.0078](https://github.com/vim/vim/commit/c166927a32fe5c054ad35deecff00aa12c629cf7): メッセージで使われている "..." の前に空白があったりなかったり一貫性がなかったので空白なしで統一しました。(関連patch: [8.1.0090](https://github.com/vim/vim/commit/9b0c5c23bd5260caef82a4f3dcc945c129857c52))
* [8.1.0076](https://github.com/vim/vim/commit/0ce7413a8318ec0b01386c54ee09d3d94216cb15): terminalウィンドウで標準出力をおこなうコマンドを実行中に`CTRL-W :`してコマンドラインに入力するとコマンドラインに再描画が継続的におこなわれる件を修正しました。
* [8.1.0075](https://github.com/vim/vim/commit/252b7ee82384520e20df7728387a1a441c47c6e6): :four_leaf_clover:README.mdにVimロゴを追加しました。(関連patch: [8.1.0077](https://github.com/vim/vim/commit/5c3670718bebacb3a9a54522cab2924a6bfbc3d4))
* [8.1.0073](https://github.com/vim/vim/commit/0366c0161e988e32420d2f37111a60129684905b): オートコマンドから`setloclist()`を呼び出した時にクラッシュすることがあったのを修正しました。(関連patch: [8.1.0074](https://github.com/vim/vim/commit/d6b01a2d3884ee0abe10aad161f584889a496e3f))
* [8.1.0072](https://github.com/vim/vim/commit/dcdeaaf1505b96aa7a31ccd4becc92c32119bdda): `'termwinkey'`の仕様について矛盾があったのでドキュメントと動作を修正しました。
* [8.1.0071](https://github.com/vim/vim/commit/b3307b5e7e7bd3962b0d5c61a94e638564c146b0): :four_leaf_clover:terminalデバッガの機能がterminal機能なしでもpromptバッファが動作すれば動くようにしました。これでWindowsでも動作します！
* [8.1.0069](https://github.com/vim/vim/commit/0e5979a6d491f68c4a8c86fab489016919329a6b): :four_leaf_clover:`prompt_setinterrupt()`を追加しました。promptバッファで`CTRL-C`が押された場合の挙動を定義できます。(関連patch: [8.1.0070](https://github.com/vim/vim/commit/222cd20e2662e7478cfe42b78cc4f1c153ca819d))
* [8.1.0067](https://github.com/vim/vim/commit/a5616b0136cea2104a475d143a1685d71e9b2d3d): バッファに再入した時にシンタックスハイライトが動作しない件を修正しました。
* [8.1.0065](https://github.com/vim/vim/commit/0e6e179f55b85b9e82e74d3f993928d52f0f4d43): Balloonが間違った位置に表示される件を修正しました。
* [8.1.0064](https://github.com/vim/vim/commit/942b4541a2d8e8df8369ab70e112dbbbe0c7c0aa): promptバッファで`CTRL-W`をタイプするとモード表示が`"-- --"`になる件を修正しました。
* [8.1.0062](https://github.com/vim/vim/commit/491ac28d5f91505519c623ebc1a9ab08834bf367): コールバック側でウィンドウレイアウトを変更するとポップアップメニューの表示が崩れる件を修正しました。
* [8.1.0061](https://github.com/vim/vim/commit/84a9308511871d9ff94c91a1c6badb92300ded98): `'title'`をリセットして設定するとウィンドウタイトルがおかしくなる件を修正しました。
* [8.1.0060](https://github.com/vim/vim/commit/600323b4ef51a58a8e800d8ca469383a3c911db7): オートコマンド内でカレンドバッファを削除するとクラッシュする件を修正しました。
* [8.1.0059](https://github.com/vim/vim/commit/bc5020aa4d7ef4aea88395eff858f74fc881eab9): `ga`で表示されるdigraphは必要であれば utf-8 に変換するようにしました。
* [8.1.0058](https://github.com/vim/vim/commit/bfa4246768e28335ed9b98f83019ea58b480158e): 左マージンを使用している時にスクロールすると、カーソルが一番左のカラムに移動する件を修正しました。
* [8.1.0057](https://github.com/vim/vim/commit/6ba3ec1bace67513a352326864cebc16b3c5bc56): ポップアップメニュー表示後にオートコマンド内でウィンドウレイアウトを変えると表示がおかしくなる件を修正しました。
* [8.1.0056](https://github.com/vim/vim/commit/43dee181f596c81b99e200b6cdfeb02ecfed42c8): 不正なバイトで`:hardcopy`するとクラッシュする件を修正しました。
* [8.1.0053](https://github.com/vim/vim/commit/ffa9684150f5441e84d492e7184ef73587bd6c6c): `'completefunc'`に与えられた関数の第1引数の型に一貫性がなかったので数値型固定にしました。(関連patch: [8.1.0055](https://github.com/vim/vim/commit/52d3aaeea4c85406f46e2051729e4f007f83b35e))
* [8.1.0052](https://github.com/vim/vim/commit/83f4cbd973731872b633d6ba0caf850fb708d70c): `<Nop>`へmapしているキー入力がタイムアウトすると、次に入力したmapがスキップされてしまう件を修正しました。
* [8.1.0049](https://github.com/vim/vim/commit/d7a137fb0d980545dd567bee9c24cf7b9c3a2eae): :four_leaf_clover:terminalウィンドウ内のshellでは環境変数`VIM_TERMINAL`を定義するようにしました。(`:h terminal-unix`) (関連patch: [8.1.0050](https://github.com/vim/vim/commit/493359eb3b10377d5c3524e91d911809b8ac7a76), [8.1.0051](https://github.com/vim/vim/commit/79c6b51e403d4ea755b6637b01d1426a06ca9f9a))
* [8.1.0048](https://github.com/vim/vim/commit/07ccf7ce7fb948fd4d080b817e9fbaea9e721dab): vim_str2nr()が最大値に近い数値を正しく処理しないのを修正しました。※`Ctrl-A`や`Ctrl-X`等の挙動に関係します。
* [8.1.0047](https://github.com/vim/vim/commit/19834010889fc5bfa0f88b3ba83133dae6c0a35d): :four_leaf_clover:`:unlet $VAR`の補完がおこなえるようになりました。
* [8.1.0046](https://github.com/vim/vim/commit/1c3c10492a291270fa89b3c8df11828792f927d3): `'winheight'`の値が大きいとセションファイルの読み込みに失敗する件を修正しました。
* [8.1.0044](https://github.com/vim/vim/commit/8903676d3d4c3fcb37d2a55c67370f30806b1626): Vimのtestが途中で終了した時はエラーを出力するようにしました。
* [8.1.0043](https://github.com/vim/vim/commit/7580849df9d6c7c515f5ed784019336d8a8ec0f0): `:edit`の`++bad`引数が正しく機能していなかった件を修正しました。
* [8.1.0042](https://github.com/vim/vim/commit/f98b845dd185dfadfa7a622a42452bfa6809d4e0): オムニ補完やオートコマンド内でカレントウィンドウが変更されるとインサートモードを勝手に抜けたりインサートモードに入れなくなる不具合を修正しました。(関連patch: [8.1.0035](https://github.com/vim/vim/commit/6d41c78e353b630bc1a72cbff9160311d2a81e8c))
* [8.1.0041](https://github.com/vim/vim/commit/e950f9992b291a07e4fb41cb561156f5b382cd5d): :four_leaf_clover:if_pyth: ウィンドウ属性に `width`がなかったので追加しました。
* [8.1.0039](https://github.com/vim/vim/commit/d79a26219d7161e9211fd144f0e874aa5f6d251e): :four_leaf_clover:`deletebufline()`を追加しました。他のバッファの行を削除できます。
* [8.1.0037](https://github.com/vim/vim/commit/ca851593a660f08aba5c134f90c238d4a3e983e6): :four_leaf_clover:`appendbufline()`を追加しました。他のバッファに行を追加できます。
* [8.1.0035](https://github.com/vim/vim/commit/6d41c78e353b630bc1a72cbff9160311d2a81e8c): :four_leaf_clover:promptバッファはインサートモード中も`CTRL-W`コマンドを受け付けるようにしました。(関連patch: [8.1.0042](https://github.com/vim/vim/commit/f98b845dd185dfadfa7a622a42452bfa6809d4e0))
* [8.1.0034](https://github.com/vim/vim/commit/adb8fbec4f4059d214fe6acf2485ffd35e803450): `:edit #`がカーソル位置を復元しないのを修正しました。
* [8.1.0027](https://github.com/vim/vim/commit/f273245f6433d5d43a5671306b520a3230c35787): :four_leaf_clover:`'buftype'`が`"prompt"`時のための初期コードを追加しました。`prompt_setcallback()`と`prompt_setprompt()`を追加しました。※ジョブに行を送るプラグインを作りやすくするための仕組みです。(関連patch: [8.1.0028](https://github.com/vim/vim/commit/1149382d21402474c771862d082a541e23beb108), [8.1.0030](https://github.com/vim/vim/commit/3339d3dad93a44eac76c71cfa48c86a20d3dddcc), [8.1.0032](https://github.com/vim/vim/commit/6b810d92a9cd9378ab46ea0db07079cb789f9faa), [8.1.0033](https://github.com/vim/vim/commit/acb9effecc9f54b93398a44cc0ec40e77978e094), [8.1.0035](https://github.com/vim/vim/commit/6d41c78e353b630bc1a72cbff9160311d2a81e8c). [8.1.0036](https://github.com/vim/vim/commit/891e1fd894720d0b99a9daefa41e8181844f819a), [8.1.0042](https://github.com/vim/vim/commit/f98b845dd185dfadfa7a622a42452bfa6809d4e0))

---
#### 凡例

|表記|意味|
|:------|:------|
|:four_leaf_clover:|新機能、大幅な仕様変更|
|`'hoge'`|オプション (`:h options`参照)|
|`:hoge`|Exコマンド (`:h :index`参照)|
|`hoge()`|組み込み関数 (`:h functions`参照)|
|`v:hoge`|Vim定義済変数 (`:h v:`参照)|
|`+hoge`|feature (`:h +feature-list`参照)|

---
#### 方針
[こちら](http://qiita.com/h_east/items/23cd0d10932505072e6b#%E6%96%B9%E9%87%9D)を参照。