mattn
mattn
再現パターン続報、挿入する文字は英数字では再現しない。マルチバイトで再現する。
Linux で再現しないなー。なんでだろ。あと gvim.exe でも再現しない。
そうそうそれなった。試しに200とかにしても再現した。 On 3/26/15, MURAOKA Taro [email protected] wrote: > デバッガから起動すると発生しにくい。 > > ただ発生した時に止めたら、 > `read_console_input()` の `nLength` が `4294967295` になってた。 > これは `peek_console_input()` から呼ばれる時なので、1つ上のスタックでは-1 だった。 > > --- > > Reply...
explorer は DDE を使ってそうなので、実際に起動した explorer も notepad と同様に hidden になってる気がします。
Linux だと End 表示されるので Windows 固有の問題(winpty がらみ?)と判断します。
子プロセスからの出力を読み取る channel_get_all で、出力キューが末端の場合に NUL → NL 変換されないバグがありました。 ``` diff --git a/src/channel.c b/src/channel.c index 282340eef..664860a04 100644 --- a/src/channel.c +++ b/src/channel.c @@ -1676,10 +1676,6 @@ channel_get_all(channel_T *channel, ch_part_T part) char_u *res; char_u...
>winptty の出力をそのまま write_to_term してない様なのでそこも修正がいるかも。 channel_get_all は NUL → NL してるけど、そもそも channel_get_all は NL も混じる物なので、ちゃんとやるなら channel_get_all が len を返すのが正解。
そもそもなのだけど、channel API の channel_get と channel_get_all が NUL 対応してないな。つらみ。
Windows10 だと再現しなかった。
vim-jp.slack.com の[発言](https://vim-jp.slack.com/archives/C03C4RC9F/p1550829553144000)より転記 > viminfoに含まれる情報(例えばmark)は起動しているvim上で消してもメモリから消えるだけでviminfoからは消えておらず、vimを再起動したら復元されてしまいます > `rviminfo | wviminfo!` したら消えるんですが、それをすると何故か `oldfiles` などの情報が全て吹き飛んでしまうという挙動があります > 確か `wviminfo` では何も起こらないはず