Skip to content
Merged
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
59 changes: 59 additions & 0 deletions _posts/2016-03-23-take-care-of-patch-1577.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
---
layout: post
category: blog
title: Patch 1577 の使用にご注意下さい
---

[Patch 1577](https://groups.google.com/forum/#!topic/vim_dev/yAWqYrURjjk)

Patch 1577 にて Vim script の新しい API として partial argument と呼ばれる機能が実装されました。

この API は

```vim
function! MyFunc(arg1, arg2, arg3)
echo a:arg1 a:arg2 a:arg3
endfunction

let Cb = function('MyFunc', ["foo", "bar"])

call Cb("zzz")
```

関数 MyFunc の呼び出し引数を関数リファレンス Cb にホールドする事でカリー化を実現する為の物ですが、この実装に際してバグが混入し多くの Vim plugin が動作しなくなってしまいました。

現在は修正パッチがリリースされ正しく動作する様に復旧出来ましたが、復旧に至るまでに多くのパッチをリリースする必要がありました。

http://ftp.vim.org/vim/patches/7.4/7.4.1577

http://ftp.vim.org/vim/patches/7.4/7.4.1578

http://ftp.vim.org/vim/patches/7.4/7.4.1580

http://ftp.vim.org/vim/patches/7.4/7.4.1581

http://ftp.vim.org/vim/patches/7.4/7.4.1582

http://ftp.vim.org/vim/patches/7.4/7.4.1585

http://ftp.vim.org/vim/patches/7.4/7.4.1586

http://ftp.vim.org/vim/patches/7.4/7.4.1589

http://ftp.vim.org/vim/patches/7.4/7.4.1597

http://ftp.vim.org/vim/patches/7.4/7.4.1605

http://ftp.vim.org/vim/patches/7.4/7.4.1606

http://ftp.vim.org/vim/patches/7.4/7.4.1607

http://ftp.vim.org/vim/patches/7.4/7.4.1608

http://ftp.vim.org/vim/patches/7.4/7.4.1638

http://ftp.vim.org/vim/patches/7.4/7.4.1639

この 1577 から 1639 までの Vim では多くの Vim plugin が動作しない可能性があります。また著名な Vim plugin へ誤動作の問い合わせが幾つかあったと見られています。

ご使用になられる場合は 1577 未満か、1639 以降のバージョンを使われる事をお奨めします。また各ディストリビューションのメンテナをされておられる方におかれましてはこの間のバージョンのパッケージングを避けて頂ける様、お願い致します。