Vim Magazine 2016 年 7 月号
Posted on 2016-07-31話題
- Osaka.vim #7 7/2(土) 大阪 が開催されました
- Software Design 2016年8月号 Vimの細道【10】 Vimからgitを使い倒す by mattn
- Vim の地味だけどよく使う設定
- vimでソースを追うときの小技
- sudoを付けずにVimでルート権限のファイルを編集してしまった時
- Vim v.s. Emacsをフローチャートで表現 - 編者注:フローチャートというのは誤った用語だと思われます
- VimとGitの効率的なコラボレーションの仕方
- Vim-Pokemon ~あなたが Vim で開いているファイルに潜んでいるポケモン~
- Vimのおすすめプラグイン23個とその設定
- VimのmapleaderにMacのCommandを割り当てたい
- vimのヤンクがmacのクリップボードに保存されない
- DockerとWebSocketを使って、vimの設定をブラウザで即体感できるサービスを作った
- tmux 起動でvimなどがおかしくなった時の対処法
今月の新機能
- 7.4.1971:
:clist
に+{count}
が指定できるようになりました。 - 7.4.1975: Windows で 2GB を超えるファイルが正しく扱えるようになりました。
- 7.4.1976: Vim script の整数の内部表現が 64bit になりました。
- 7.4.1989:
filter()
とmap()
に関数への参照を指定できるようになりました。 - 7.4.1997:
:cbottom
が追加されました。 - 7.4.2008:
execute()
が追加されました。 - 7.4.2010:
:lbottom
が追加されました。 - 7.4.2011:
getcompletion()
が追加されました。 - 7.4.2015:
test_autochdir()
が追加されました。 - 7.4.2029:
printf()
が64bit整数に対応しました。 - 7.4.2034: MinGWでのビルド時に
ARCH
が自動設定されるようになりました。 - 7.4.2044: lambda が導入されました。
- 7.4.2049:
:chistory
と:lhistory
が追加されました。 - 7.4.2071: 型の値をあらわす
v:t_
で始まる定義済変数が追加されました。 - 7.4.2072:
substitute()
に関数への参照を指定できるようになりました。 - 7.4.2075:
TabNew
イベントとWinNew
イベントが追加されました。 - 7.4.2077:
TabClosed
イベントが追加されました。 - 7.4.2095:
assert_inrange()
が追加されました。 - 7.4.2109:
display
オプションにtruncate
が追加されました。 - 7.4.2111:
.vimrc
が見つからなかった時にdefaults.vim
が読み込まれるようになりました。 - 7.4.2119: lambda内で外側のスコープの変数をキャプチャできるようになりました。
- 7.4.2120: ユーザー関数に
closure
を指定できるようになりました。 - 7.4.2121: lambda と closure のサポートを
+lambda
で確認できるようになりました。 - パッチ番号なし: Travis CI で OSX のテストを実行するようになりました。
リリース情報
- 7.4.1968 : invalid memory access with “\<C-“>
- 7.4.1969 : crash when the netbeans channel is closed
- 7.4.1970 : using “:insert” in an empty buffer sets the jump mark
- 7.4.1971 : not easy to see error lines below the current error position
- 7.4.1972 : on Solaris select() does not work as expected with typeahead
- 7.4.1973 : on MS-Windows package directory added to ‘rtp’ at the end
- 7.4.1974 : GUI has a problem with some termcodes
- 7.4.1975 : on MS-Windows large files (> 2Gbyte) cause problems
- 7.4.1976 : number variables are not 64 bits while they could be
- 7.4.1977 : with 64 bit changes don’t need three calls to sprintf()
- 7.4.1978 : (after 7.4.1975) large file test does not delete its output
- 7.4.1979 : (after 7.4.1976) getting value of binary option is wrong
- 7.4.1980 : ‘errorformat’ is parsed for every call to “:caddexpr”
- 7.4.1981 : no testing for Farsi code
- 7.4.1982 : viminfo file contains duplicate change marks
- 7.4.1983 : farsi.c and arabic.c are included in a strange way
- 7.4.1984 : not all quickfix features are tested
- 7.4.1985 : (after 7.4.1983) missing changes in VMS build file
- 7.4.1986 : compiler warns for loss of data
- 7.4.1987 : viminfo may have useless continuation lines
- 7.4.1988 : when updating viminfo with file marks there is no time order
- 7.4.1989 : filter() and map() only accept a string argument
- 7.4.1990 : (after 7.4.1952) cscope items are not sorted
- 7.4.1991 : glob() does not add symbolic link when there are no wildcards
- 7.4.1992 : values for true and false can be confusing
- 7.4.1993 : not all TRUE and FALSE arguments are tested
- 7.4.1994 : (after 7.4.1993) true-false test fails
- 7.4.1995 : GUI: cursor drawn in wrong place when using a timer callback
- 7.4.1996 : capturing the output of a command takes a few commands
- 7.4.1997 : cannot easily scroll the quickfix window
- 7.4.1998 : no NL to NUL conversion when writing buffer lines to a job
- 7.4.1999 : evalcmd() doesn’t work recursively
- 7.4.2000 : (after 7.4.1999) evalcmd test fails
- 7.4.2001 : (after 7.4.2000) tiny build fails
- 7.4.2002 : crash when passing number to filter() or map()
- 7.4.2003 : still cursor flickering when a callback updates the screen
- 7.4.2004 : GUI: cursor displayed in the wrong position
- 7.4.2005 : after using evalcmd() message output is in the wrong position
- 7.4.2006 : crash when using tabnext in BufUnload autocmd
- 7.4.2007 : running the tests leaves a viminfo file behind
- 7.4.2008 : evalcmd() has a confusing name
- 7.4.2009 : (after 7.4.2008) messages test fails
- 7.4.2010 : there is a :cbottom command but no :lbottom command
- 7.4.2011 : it is not easy to get a list of command arguments
- 7.4.2012 : (after 7.4.2011) test for getcompletion() may fail
- 7.4.2013 : using “noinsert” in ‘completeopt’ breaks redo
- 7.4.2014 : using “noinsert” in ‘completeopt’ does not insert match
- 7.4.2015 : when file gets a name when writing it ‘acd’ is not effective
- 7.4.2016 : warning from MinGW about _WIN32_WINNT redefined
- 7.4.2017 : adding many errors to the quickfix list takes a long time
- 7.4.2018 : buf_valid() can be slow when there are many buffers
- 7.4.2019 : when ignoring case utf_fold() may consume a lot of time
- 7.4.2020 : can’t build without +autocmd feature
- 7.4.2021 : still too many buf_valid() calls
- 7.4.2022 : warnings from 64 bit compiler
- 7.4.2023 : buflist_findname_stat() may find a dummy buffer
- 7.4.2024 : more buf_valid() calls can be optimized
- 7.4.2025 : cursor blinking irregular when using channel or timer
- 7.4.2026 : reference counting for callbacks isn’t right
- 7.4.2027 : can’t build with +eval but without +menu
- 7.4.2028 : cppcheck warns for using index before limits check
- 7.4.2029 : printf() does not work with 64 bit numbers
- 7.4.2030 : ARCH must be set properly when using MinGW
- 7.4.2031 : list_lbr_utf8 test fails because of user setting
- 7.4.2032 : (after 7.4.2030) build fails with 64 bit MinGW
- 7.4.2033 : ‘cscopequickfix’ option does not accept new value “a”
- 7.4.2034 : build fails with some version of MinGW
- 7.4.2035 : on Solaris with ZFS the ACL may get removed
- 7.4.2036 : looking up a buffer by number is slow if there are many
- 7.4.2037 : (after 7.4.2036) small build fails
- 7.4.2038 : (after 7.4.2036) small build still fails
- 7.4.2039 : the Netbeans integration is not tested
- 7.4.2040 : new files missing from distribution
- 7.4.2041 : netbeans file authentication not tested
- 7.4.2042 : GTK: display updating is not done properly and can be slow
- 7.4.2043 : setbufvar() causes a screen redraw
- 7.4.2044 : filter() and map() either require a string or a function
- 7.4.2045 : memory leak when using a function callback
- 7.4.2046 : the qf_init_ext() function is too big
- 7.4.2047 : compiler warning for initializing a struct
- 7.4.2048 : there is still code and help for unsupported systems
- 7.4.2049 : there is no way to get a list of the error lists
- 7.4.2050 : when using “:vimgrep” may end up with duplicate buffers
- 7.4.2051 : no proper testing of trunc_string()
- 7.4.2052 : coverage report is messed up by the unittests
- 7.4.2053 : can’t run scripttests in the top directory
- 7.4.2054 : (after 7.4.2048) wrong part of #ifdef removed
- 7.4.2055 : eval.c is too big
- 7.4.2056 : (after 7.4.2055) build fails
- 7.4.2057 : eval.c is too big
- 7.4.2058 : eval.c is too big
- 7.4.2059 : non-Unix builds fail
- 7.4.2060 : (after 7.4.2059) typo in build file
- 7.4.2061 : qf_init_ext() is too big
- 7.4.2062 : using dummy variable to compute struct member offset
- 7.4.2063 : eval.c is still too big
- 7.4.2064 : Coverity warns for possible buffer overflow
- 7.4.2065 : compiler warns for uninitialzed variable
- 7.4.2066 : getcompletion() not well tested
- 7.4.2067 : compiler warning for char/char_u conversion, inefficient code
- 7.4.2068 : memory access error when running the message tests
- 7.4.2069 : spell.c is too big
- 7.4.2070 : (after 7.4.2069) missing change to include file
- 7.4.2071 : the return value of type() is difficult to use
- 7.4.2072 : substitute() does not support a Funcref argument
- 7.4.2073 : rgb.txt is read for every color name
- 7.4.2074 : one more place using a dummy variable
- 7.4.2075 : no autocommand event to initialize a window or tab page
- 7.4.2076 : syntax error when dict has ‘>’ key
- 7.4.2077 : cannot update ‘tabline’ when a tab was closed
- 7.4.2078 : running checks in po diretory fails
- 7.4.2079 : Netbeans test fails on non-Unix systems
- 7.4.2080 : PERROR() on some systems does not trigger assert_fails()
- 7.4.2081 : line numbers in the error list are not always adjusted
- 7.4.2082 : not much test coverage for digraphs
- 7.4.2083 : Coverity complains about not restoring a value
- 7.4.2084 : (after 7.4.2081) new digraph test makes testing hang
- 7.4.2085 : digraph tests fails on some systems
- 7.4.2086 : using the system default encoding makes tests unpredictable
- 7.4.2087 : digraph code test coverage is still low
- 7.4.2088 : (after 7.4.2087) keymap test fails with normal features
- 7.4.2089 : color handling of X11 GUIs is too complicated
- 7.4.2090 : using submatch() in lambda passed to substitute() is verbose
- 7.4.2091 : Coverity reports a resource leak when out of memory
- 7.4.2092 : GTK 3 build fails with older GTK version
- 7.4.2093 : Netbeans test fails once in a while; leaving log file behind
- 7.4.2094 : the color allocation in X11 is overly complicated
- 7.4.2095 : Man test fails when run with the GUI
- 7.4.2096 : lambda functions show up with completion
- 7.4.2097 : warning from 64 bit compiler
- 7.4.2098 : text object tests are old style
- 7.4.2099 : when a keymap is active only “(lang)” is displayed
- 7.4.2100 : “cgn” and “dgn” do not always work correctly
- 7.4.2101 : looping over windows, buffers and tab pages is inconsistant
- 7.4.2102 : (after 7.4.2101) tiny build with GUI fails
- 7.4.2103 : can’t have “augroup END” right after “:au!”
- 7.4.2104 : code duplication when unreferencing a function
- 7.4.2105 : configure reports “normal” default features while its “huge”
- 7.4.2106 : clang warns about missing field in initializer
- 7.4.2107 : (after 7.4.2106) misplaced equal sign
- 7.4.2108 : Netbeans test is flaky
- 7.4.2109 : ‘display=lastline” is too drastic, without it not nice
- 7.4.2110 : with CmdUndefined errof for missing autocmd is E464
- 7.4.2111 : defaults are very conservative
- 7.4.2112 : getcompletion(.., ‘dir’) returns trailing “*” without matches
- 7.4.2113 : test for undo is flaky
- 7.4.2114 : (after 7.4.2113) tiny build fails
- 7.4.2115 : loading defaults.vim with -C argument
- 7.4.2116 : the default vimrc for Windows is very conservative
- 7.4.2117 : no warning when deleting an augroup that still has autocmds
- 7.4.2118 : Mac: can’t build with tiny features
- 7.4.2119 : closures are not supported
- 7.4.2120 : user defined functions can’t be a closure
- 7.4.2121 : no easy way to check if lambda and closure are supported
- 7.4.2122 : (after 7.4.2118) Mac: don’t get +clipboard in huge build
- 7.4.2123 : no new style test for diff mode
- 7.4.2124 : diffmode test leaves files behind, breaking another test
- 7.4.2125 : compiler warning for loss of data
- 7.4.2126 : no tests for :diffget and :diffput
- 7.4.2127 : short form of “:noswapfile” is “:noswap” instead of “:nos”
- 7.4.2128 : memory leak when saving for undo fails
- 7.4.2129 : memory leak when using timer_start()
- 7.4.2130 : pending timers cause false memory leak reports
- 7.4.2131 : more memory leaks when using partial, e.g. for “exit-cb”
- 7.4.2132 : test_partial has memory leaks reported
- 7.4.2133 : (after 7.4.2128) can’t build with tiny features
新着スクリプト
- One Half Color Schemes : Clean and vibrant light/dark color schemes for terminal and gui Vim.
- vim-dispatch-vimproc : the plugin to add vimproc strategy to vim-dispatch
- vim-tf2 : TF2 .cfg syntax highlighting. https://github.com/au/vim-tf2
- vim-one : one dark and one light for atom adapted to Vim
- vim-two-firewatch : A blend between duotone light and firewatch for atom
- python-compilers.vim : Just a python compilers for VIM
- vimmake : Customize shell tools for vim (supports async jobs)
- gtm-plugin.vim : Simple, seamless, lightweight time tracking for all your git projects
- cpf_upf_sdc : Highlight files for CPF, UPF and SDC
- audionote.vim : Audio note - voice recorder
- vseq.vim : Generate sequential number vertically
- ditto.vim : Highlight overused words
- dialect.vim : Project specific spell files
- highlightedyank : Make the yanked region apparent!
月間ダウンロードランキング
- taglist.vim : Source code browser (supports C/C++, java, perl, python, tcl, sql, php, etc) (1492)
- The NERD tree : A tree explorer plugin for navigating the filesystem (1290)
- python.vim : Enhanced version of the python syntax highlighting script (568)
- c.vim : C/C++ IDE – Write and run programs. Insert statements, idioms, comments etc. (557)
- winmanager : A windows style IDE for Vim 6.0 (495)
- molokai : A port of the monokai scheme for TextMate (477)
- OmniCppComplete : C/C++ omni-completion with ctags database (436)
- minibufexpl.vim : Elegant buffer explorer - takes very little screen space (405)
- bufexplorer.zip : Buffer Explorer / Browser (401)
- pathogen.vim : Poor man’s package manager. Easy manipulation of ‘runtimepath’ et al (391)
vim-jp issues
Open : 239 (-4) | Closed : 699 (+20) |
- Issue #923 : タブページ関連のコマンドと自動コマンドの組み合わせでVimが落ちたりカレントウィンドウが閉じられない
- Issue #924 : filter() と map() を Funcref に対応させる
- Issue #925 : filter(), map() の第2引数が number だと SEGV する
- Issue #926 : 異なるencodingを使用すると不正な_viminfoが生成されて落ちる事がある
- Issue #927 : サポートを打切ったOS関連のキーワードをCソース、ドキュメント、同梱Vim scriptから削除する
- Issue #928 : printf() の %d が 64bit 整数に対応していない
- Issue #929 : printf() に2進数表示できる変換指示子 %b が欲しい
- Issue #930 : 起動して表示前に confirm() されると詰む
- Issue #931 : vim.exe 起動時の confirm() で文字化け
- Issue #932 : MinGWでのビルド時に`ARCH`を自動設定して欲しい
- Issue #933 : 自動コマンドからタブ操作とバッファ削除するとSEGVする
- Issue #934 : テストをcleanしたあとにファイルが残る
- Issue #935 : ‘>’ を dict の key にすると E125 エラーになる
- Issue #936 : printf() に変換指示子 %v を追加する
- Issue #937 : スタックトレース情報を持つ変数を追加したい
- Issue #938 : php で一部のネストしたインデントが正しく行なわれない
もどる