I couldn't reproduce the bug with Athena, GTK+ 2, GTK+ 3 GUIs, but did with MacVim, although I'm not sure which X11 GUI the reporter meant by that doubly quoted word, "regular." I wish the description could be more specific in order to save other devs' time.
As to the mentioned "-1H", it looked to me that it was part of a piece of control code with CSI chopped off. Accordingly, I guessed it's original form was "ESC|-1H" (= stop highlight forcefully cf. screen_stop_highlight() of screen.c). Along that line, I dug into the issue and arrived at gui_write() of gui.c. What I found there was, when a given control code had a parameter and the parameter was a negative integer, the function was unable to handle it correctly. IOW, because the minus sign in "-1H" was not considered as part of an integer by the function and was not handled in the succeeding switch statement as control code either, "-1H" was eventually passed to GUI as ordinary text and appeared on the screen. The attached patch should fix our own issue I've just described, and hopefully, resolve the MacVim issue, too. Best regards, Kazunobu Kuriyama 2016-06-13 2:11 GMT+09:00 Manuel Ortega <mannyvim...@gmail.com>: > On Sun, Jun 12, 2016 at 12:31 PM, Manuel Ortega <mannyvim...@gmail.com> > wrote: > >> This is on Mac OS X 10.11.5, with the very latest Vim. I can reproduce >> with both MacVim and the "regular" X11 gVim. >> >> Setting &termguicolors causes some strange display artifacts in the GUI, >> when one uses "!" to run a shell cmd. A bizarre suffix is appended to >> the filename that replaces "%". >> >> To reproduce, in your shell do: >> touch foo >> gvim[or mvim, if macvim] -u NONE -N -c "set tgc" foo >> > > It seems that this doesn't show the problem every time for me. The > following recipe reproduces for me every single time: adjust your real > .vimrc so that the first two lines are: > set tgc > finish > > Then: > touch foo > gvim[or mvim, if macvim] foo > > Then: > :!echo % > > -Manny > > > -- > -- > You received this message from the "vim_dev" maillist. > Do not top-post! Type your reply below the text you are replying to. > For more information, visit http://www.vim.org/maillist.php > > --- > You received this message because you are subscribed to the Google Groups > "vim_dev" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to vim_dev+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/d/optout. > -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
gui.c.patch
Description: Binary data