Skip to content

Commit ce697c4

Browse files
jbrubakerkitover
authored andcommitted
Work-around Vim bug: hang on blank lns in scripts
Work-around a bug in some versions of Vim where blank lines in Vim scripts passed to `+''` or `--cmd ''` cause Vim to hang by removing them from the scripts. Signed-off-by: Rafael Kitover <rkitover@gmail.com>
1 parent 2d3af2b commit ce697c4

2 files changed

Lines changed: 4 additions & 9 deletions

File tree

vimcat

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -160,8 +160,8 @@ read_vim_settings() {
160160
OLDIFS=$IFS
161161
IFS='
162162
'
163-
for var in $(IFS=$OLDIFS; "$vim" -NEnR ${vimcatrc:+-u "$vimcatrc"} ${extra_cmd:+--cmd "$extra_cmd"} ${extra_c:+-c "$extra_c"} -i NONE +'
164-
let g:tab_stop = 8
163+
for var in $(IFS=$OLDIFS; "$vim" -NEnR ${vimcatrc:+-u "$vimcatrc"} ${extra_cmd:+--cmd "$extra_cmd"} ${extra_c:+-c "$extra_c"} -i NONE --cmd \
164+
'let g:tab_stop = 8
165165
if ! &et
166166
let g:tab_stop = &ts
167167
endif

vimpager

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -452,40 +452,35 @@ read_vim_settings() {
452452
OLDIFS=$IFS
453453
IFS='
454454
'
455-
for var in $(IFS=$OLDIFS; "$tvim" -NEnR ${vimrc:+-u "$vimrc"} -i NONE --cmd 'let g:vimpager = { "enabled": 1 }' +'
455+
for var in $(IFS=$OLDIFS; "$tvim" -NEnR ${vimrc:+-u "$vimrc"} -i NONE --cmd 'let g:vimpager = { "enabled": 1 }
456456
if !exists("g:vimpager.gvim")
457457
if !exists("g:vimpager_use_gvim")
458458
let g:vimpager.gvim = 0
459459
else
460460
let g:vimpager.gvim = g:vimpager_use_gvim
461461
endif
462462
endif
463-
464463
if !exists("g:vimpager.X11")
465464
if !exists("g:vimpager_disable_x11")
466465
let g:vimpager.X11 = 1
467466
else
468467
let g:vimpager.X11 = !g:vimpager_disable_x11
469468
endif
470469
endif
471-
472470
if !exists("g:vimpager.passthrough")
473471
if !exists("g:vimpager_passthrough")
474472
let g:vimpager.passthrough = 1
475473
else
476474
let g:vimpager.passthrough = g:vimpager_passthrough
477475
endif
478476
endif
479-
480477
let g:use_ansiesc = 0
481-
482478
if has("conceal") && (!exists("g:vimpager.ansiesc") || g:vimpager.ansiesc == 1) && (!exists("g:vimpager_disable_ansiesc") || g:vimpager_disable_ansiesc == 0)
483479
let g:use_ansiesc = 1
484480
endif
485-
486481
call writefile([""] + map([g:vimpager.gvim, g:vimpager.X11, g:vimpager.passthrough, g:use_ansiesc], "\"VAL:\".v:val"), "/dev/stderr")
487482
quit
488-
' </dev/tty 2>&1 >/dev/null); do
483+
' </dev/tty 2>&1 >/dev/null); do
489484
case "$var" in
490485
VAL:*)
491486
case $i in

0 commit comments

Comments
 (0)