diff options
Diffstat (limited to 'src')
34 files changed, 61 insertions, 661 deletions
diff --git a/src/nvim/edit.c b/src/nvim/edit.c index d7910347fc..b9ecbc71fe 100644 --- a/src/nvim/edit.c +++ b/src/nvim/edit.c @@ -593,9 +593,17 @@ edit ( * Get a character for Insert mode. Ignore K_IGNORE. */ lastc = c; /* remember previous char for CTRL-D */ + event_enable_deferred(); do { c = safe_vgetc(); } while (c == K_IGNORE); + event_disable_deferred(); + + if (c == K_EVENT) { + c = lastc; + event_process(); + continue; + } /* Don't want K_CURSORHOLD for the second key, e.g., after CTRL-V. */ did_cursorhold = TRUE; @@ -943,10 +951,6 @@ doESCkey: did_cursorhold = TRUE; break; - case K_EVENT: - event_process(); - break; - case K_HOME: /* <Home> */ case K_KHOME: case K_S_HOME: diff --git a/src/nvim/ex_getln.c b/src/nvim/ex_getln.c index 5feff4d456..2be3757821 100644 --- a/src/nvim/ex_getln.c +++ b/src/nvim/ex_getln.c @@ -311,9 +311,16 @@ getcmdline ( /* Get a character. Ignore K_IGNORE, it should not do anything, such * as stop completion. */ + event_enable_deferred(); do { c = safe_vgetc(); } while (c == K_IGNORE); + event_disable_deferred(); + + if (c == K_EVENT) { + event_process(); + continue; + } if (KeyTyped) { some_key_typed = TRUE; @@ -769,11 +776,6 @@ getcmdline ( * Big switch for a typed command line character. */ switch (c) { - case K_EVENT: - event_process(); - // Force a redraw even though the command line didn't change - shell_resized(); - goto cmdline_not_changed; case K_BS: case Ctrl_H: case K_DEL: @@ -1885,8 +1887,6 @@ redraw: } if (IS_SPECIAL(c1)) { - // Process deferred events - event_process(); // Ignore other special key codes continue; } diff --git a/src/nvim/getchar.c b/src/nvim/getchar.c index fd60664b7b..1bec0fa1bb 100644 --- a/src/nvim/getchar.c +++ b/src/nvim/getchar.c @@ -2481,7 +2481,6 @@ inchar ( char_u dum[DUM_LEN + 1]; for (;; ) { - event_process(); len = ui_inchar(dum, DUM_LEN, 0L, 0); if (len == 0 || (len == 1 && dum[0] == 3)) break; diff --git a/src/nvim/message.c b/src/nvim/message.c index ee83fd371e..23feeab173 100644 --- a/src/nvim/message.c +++ b/src/nvim/message.c @@ -44,7 +44,6 @@ #include "nvim/term.h" #include "nvim/ui.h" #include "nvim/os/os.h" -#include "nvim/os/event.h" /* * To be able to scroll back at the "more" and "hit-enter" prompts we need to @@ -2076,9 +2075,6 @@ static int do_more_prompt(int typed_char) toscroll = 0; switch (c) { - case K_EVENT: - event_process(); - break; case BS: /* scroll one line back */ case K_BS: case 'k': @@ -2738,8 +2734,6 @@ do_dialog ( break; default: /* Could be a hotkey? */ if (c < 0) { /* special keys are ignored here */ - // drain event queue to prevent infinite loop - event_process(); continue; } if (c == ':' && ex_cmd) { diff --git a/src/nvim/normal.c b/src/nvim/normal.c index 29070ff188..f58e044c2c 100644 --- a/src/nvim/normal.c +++ b/src/nvim/normal.c @@ -312,7 +312,6 @@ static const struct nv_cmd { {K_F8, farsi_fkey, 0, 0}, {K_F9, farsi_fkey, 0, 0}, {K_CURSORHOLD, nv_cursorhold, NV_KEEPREG, 0}, - {K_EVENT, nv_event, NV_KEEPREG, 0}, }; /* Number of commands in nv_cmds[]. */ @@ -483,7 +482,15 @@ normal_cmd ( /* * Get the command character from the user. */ + event_enable_deferred(); c = safe_vgetc(); + event_disable_deferred(); + + if (c == K_EVENT) { + event_process(); + return; + } + LANGMAP_ADJUST(c, true); /* @@ -7373,8 +7380,3 @@ static void nv_cursorhold(cmdarg_T *cap) did_cursorhold = true; cap->retval |= CA_COMMAND_BUSY; /* don't call edit() now */ } - -static void nv_event(cmdarg_T *cap) -{ - event_process(); -} diff --git a/src/nvim/os/event.c b/src/nvim/os/event.c index 1477072f4f..34560610bd 100644 --- a/src/nvim/os/event.c +++ b/src/nvim/os/event.c @@ -18,6 +18,8 @@ #include "nvim/vim.h" #include "nvim/memory.h" #include "nvim/misc2.h" +#include "nvim/term.h" +#include "nvim/screen.h" #include "nvim/lib/klist.h" @@ -39,6 +41,7 @@ typedef struct { // loop(to avoid recursion), but before returning from // `event_poll` static klist_t(Event) *deferred_events = NULL, *immediate_events = NULL; +static int deferred_events_allowed = 0; void event_init(void) { @@ -134,7 +137,17 @@ void event_poll(int ms) bool event_has_deferred(void) { - return !kl_empty(deferred_events); + return deferred_events_allowed && !kl_empty(deferred_events); +} + +void event_enable_deferred(void) +{ + ++deferred_events_allowed; +} + +void event_disable_deferred(void) +{ + --deferred_events_allowed; } // Queue an event @@ -146,6 +159,11 @@ void event_push(Event event, bool deferred) void event_process(void) { process_events_from(deferred_events); + + if (must_redraw) { + update_screen(0); + out_flush(); + } } static void process_events_from(klist_t(Event) *queue) diff --git a/src/nvim/os/input.c b/src/nvim/os/input.c index 3ebfb3f12b..d10d20b20e 100644 --- a/src/nvim/os/input.c +++ b/src/nvim/os/input.c @@ -84,13 +84,11 @@ void input_stop(void) // Low level input function. int os_inchar(uint8_t *buf, int maxlen, int ms, int tb_change_cnt) { - InbufPollResult result; - - if (event_has_deferred()) { - // Return pending event bytes - return push_event_key(buf, maxlen); + if (rbuffer_pending(input_buffer)) { + return (int)rbuffer_read(input_buffer, (char *)buf, (size_t)maxlen); } + InbufPollResult result; if (ms >= 0) { if ((result = inbuf_poll(ms)) == kInputNone) { return 0; @@ -110,24 +108,27 @@ int os_inchar(uint8_t *buf, int maxlen, int ms, int tb_change_cnt) } } - // If there are deferred events, return the keys directly - if (event_has_deferred()) { - return push_event_key(buf, maxlen); - } - // If input was put directly in typeahead buffer bail out here. if (typebuf_changed(tb_change_cnt)) { return 0; } + if (rbuffer_pending(input_buffer)) { + // Safe to convert rbuffer_read to int, it will never overflow since we use + // relatively small buffers. + return (int)rbuffer_read(input_buffer, (char *)buf, (size_t)maxlen); + } + + // If there are deferred events, return the keys directly + if (event_has_deferred()) { + return push_event_key(buf, maxlen); + } + if (result == kInputEof) { read_error_exit(); - return 0; } - // Safe to convert rbuffer_read to int, it will never overflow since - // we use relatively small buffers. - return (int)rbuffer_read(input_buffer, (char *)buf, (size_t)maxlen); + return 0; } // Check if a character is available for reading @@ -319,10 +320,9 @@ static int push_event_key(uint8_t *buf, int maxlen) // Check if there's pending input static bool input_ready(void) { - return typebuf_was_filled || // API call filled typeahead - event_has_deferred() || // Events must be processed - (!embedded_mode && ( - rbuffer_pending(input_buffer) > 0 || // Stdin input - eof)); // Stdin closed + return typebuf_was_filled || // API call filled typeahead + rbuffer_pending(input_buffer) > 0 || // Stdin input + event_has_deferred() || // Events must be processed + (!embedded_mode && eof); // Stdin closed } diff --git a/src/nvim/testdir/sautest/autoload/Test104.vim b/src/nvim/testdir/sautest/autoload/Test104.vim deleted file mode 100644 index d1e0e17a3b..0000000000 --- a/src/nvim/testdir/sautest/autoload/Test104.vim +++ /dev/null @@ -1 +0,0 @@ -let Test104#numvar = 123 diff --git a/src/nvim/testdir/test101.in b/src/nvim/testdir/test101.in deleted file mode 100644 index 04c934f2c5..0000000000 --- a/src/nvim/testdir/test101.in +++ /dev/null @@ -1,45 +0,0 @@ -Test for v:hlsearch vim: set ft=vim : - -STARTTEST -:" Last abc: Q -:so small.vim -:new -:call setline(1, repeat(['aaa'], 10)) -:set hlsearch nolazyredraw -:let r=[] -:command -nargs=0 -bar AddR :call add(r, [screenattr(1, 1), v:hlsearch]) -/aaa -:AddR -:nohlsearch -:AddR -:let v:hlsearch=1 -:AddR -:let v:hlsearch=0 -:AddR -:set hlsearch -:AddR -:let v:hlsearch=0 -:AddR -n:AddR -:let v:hlsearch=0 -:AddR -/ -:AddR -:let r1=r[0][0] -:" I guess it is not guaranteed that screenattr outputs always the same character -:call map(r, 'v:val[1].":".(v:val[0]==r1?"highlighted":"not highlighted")') -:try -: let v:hlsearch=[] -:catch -: call add(r, matchstr(v:exception,'^Vim(let):E\d\+:')) -:endtry -:bwipeout! -:$put=r -:call garbagecollect(1) -:" -:/^start:/,$wq! test.out -:" vim: et ts=4 isk-=\: -:call getchar() -ENDTEST - -start: diff --git a/src/nvim/testdir/test101.ok b/src/nvim/testdir/test101.ok deleted file mode 100644 index 3ed7436cf7..0000000000 --- a/src/nvim/testdir/test101.ok +++ /dev/null @@ -1,11 +0,0 @@ -start: -1:highlighted -0:not highlighted -1:highlighted -0:not highlighted -1:highlighted -0:not highlighted -1:highlighted -0:not highlighted -1:highlighted -Vim(let):E706: diff --git a/src/nvim/testdir/test104.in b/src/nvim/testdir/test104.in deleted file mode 100644 index fd847131e9..0000000000 --- a/src/nvim/testdir/test104.in +++ /dev/null @@ -1,30 +0,0 @@ -Tests for :let. vim: set ft=vim ts=8 : - -STARTTEST -:so small.vim -:set runtimepath+=./sautest -:" Test to not autoload when assigning. It causes internal error. -:try -: let Test104#numvar = function('tr') -: $put ='OK: ' . string(Test104#numvar) -:catch -: $put ='FAIL: ' . v:exception -:endtry -:let a = 1 -:let b = 2 -:for letargs in ['a b', '{0 == 1 ? "a" : "b"}', '{0 == 1 ? "a" : "b"} a', 'a {0 == 1 ? "a" : "b"}'] -: try -: redir => messages -: execute 'let' letargs -: redir END -: $put ='OK:' -: $put =split(substitute(messages, '\n', '\0 ', 'g'), '\n') -: catch -: $put ='FAIL: ' . v:exception -: redir END -: endtry -:endfor -:/^Results/,$wq! test.out -ENDTEST - -Results of test104: diff --git a/src/nvim/testdir/test104.ok b/src/nvim/testdir/test104.ok deleted file mode 100644 index 5fb20945c3..0000000000 --- a/src/nvim/testdir/test104.ok +++ /dev/null @@ -1,13 +0,0 @@ -Results of test104: -OK: function('tr') -OK: - a #1 - b #2 -OK: - b #2 -OK: - b #2 - a #1 -OK: - a #1 - b #2 diff --git a/src/nvim/testdir/test105.in b/src/nvim/testdir/test105.in deleted file mode 100644 index bfb4b65fbb..0000000000 --- a/src/nvim/testdir/test105.in +++ /dev/null @@ -1,45 +0,0 @@ -Test filename modifiers vim: set ft=vim : - -STARTTEST -:source small.vim -:%delete _ -:set shell=sh -:set shellslash -:let tab="\t" -:command -nargs=1 Put :let expr=<q-args> | $put =expr.tab.strtrans(string(eval(expr))) -:let $HOME=fnamemodify('.', ':p:h:h:h') -:Put fnamemodify('.', ':p' )[-1:] -:Put fnamemodify('.', ':p:h' )[-1:] -:Put fnamemodify('test.out', ':p' )[-1:] -:Put fnamemodify('test.out', ':.' ) -:Put fnamemodify('../testdir/a', ':.' ) -:Put fnamemodify('test.out', ':~' ) -:Put fnamemodify('../testdir/a', ':~' ) -:Put fnamemodify('../testdir/a', ':t' ) -:Put fnamemodify('.', ':p:t' ) -:Put fnamemodify('test.out', ':p:t' ) -:Put fnamemodify('test.out', ':p:e' ) -:Put fnamemodify('test.out', ':p:t:e' ) -:Put fnamemodify('abc.fb2.tar.gz', ':r' ) -:Put fnamemodify('abc.fb2.tar.gz', ':r:r' ) -:Put fnamemodify('abc.fb2.tar.gz', ':r:r:r' ) -:Put substitute(fnamemodify('abc.fb2.tar.gz', ':p:r:r'), '.*\(nvim/testdir/.*\)', '\1', '') -:Put fnamemodify('abc.fb2.tar.gz', ':e' ) -:Put fnamemodify('abc.fb2.tar.gz', ':e:e' ) -:Put fnamemodify('abc.fb2.tar.gz', ':e:e:e' ) -:Put fnamemodify('abc.fb2.tar.gz', ':e:e:e:e') -:Put fnamemodify('abc.fb2.tar.gz', ':e:e:r' ) -:Put fnamemodify('abc def', ':S' ) -:Put fnamemodify('abc" "def', ':S' ) -:Put fnamemodify('abc"%"def', ':S' ) -:Put fnamemodify('abc'' ''def', ':S' ) -:Put fnamemodify('abc''%''def', ':S' ) -:Put fnamemodify("abc\ndef", ':S' ) -:set shell=tcsh -:Put fnamemodify("abc\ndef", ':S' ) -:$put ='vim: ts=8' -:1 delete _ -:w! test.out -:qa! -ENDTEST - diff --git a/src/nvim/testdir/test105.ok b/src/nvim/testdir/test105.ok deleted file mode 100644 index 0b30ee4281..0000000000 --- a/src/nvim/testdir/test105.ok +++ /dev/null @@ -1,29 +0,0 @@ -fnamemodify('.', ':p' )[-1:] '/' -fnamemodify('.', ':p:h' )[-1:] 'r' -fnamemodify('test.out', ':p' )[-1:] 't' -fnamemodify('test.out', ':.' ) 'test.out' -fnamemodify('../testdir/a', ':.' ) 'a' -fnamemodify('test.out', ':~' ) '~/nvim/testdir/test.out' -fnamemodify('../testdir/a', ':~' ) '~/nvim/testdir/a' -fnamemodify('../testdir/a', ':t' ) 'a' -fnamemodify('.', ':p:t' ) '' -fnamemodify('test.out', ':p:t' ) 'test.out' -fnamemodify('test.out', ':p:e' ) 'out' -fnamemodify('test.out', ':p:t:e' ) 'out' -fnamemodify('abc.fb2.tar.gz', ':r' ) 'abc.fb2.tar' -fnamemodify('abc.fb2.tar.gz', ':r:r' ) 'abc.fb2' -fnamemodify('abc.fb2.tar.gz', ':r:r:r' ) 'abc' -substitute(fnamemodify('abc.fb2.tar.gz', ':p:r:r'), '.*\(nvim/testdir/.*\)', '\1', '') 'nvim/testdir/abc.fb2' -fnamemodify('abc.fb2.tar.gz', ':e' ) 'gz' -fnamemodify('abc.fb2.tar.gz', ':e:e' ) 'tar.gz' -fnamemodify('abc.fb2.tar.gz', ':e:e:e' ) 'fb2.tar.gz' -fnamemodify('abc.fb2.tar.gz', ':e:e:e:e') 'fb2.tar.gz' -fnamemodify('abc.fb2.tar.gz', ':e:e:r' ) 'tar' -fnamemodify('abc def', ':S' ) '''abc def''' -fnamemodify('abc" "def', ':S' ) '''abc" "def''' -fnamemodify('abc"%"def', ':S' ) '''abc"%"def''' -fnamemodify('abc'' ''def', ':S' ) '''abc''\'''' ''\''''def''' -fnamemodify('abc''%''def', ':S' ) '''abc''\''''%''\''''def''' -fnamemodify("abc\ndef", ':S' ) '''abc^@def''' -fnamemodify("abc\ndef", ':S' ) '''abc\^@def''' -vim: ts=8 diff --git a/src/nvim/testdir/test21.in b/src/nvim/testdir/test21.in deleted file mode 100644 index 491b9f7404..0000000000 --- a/src/nvim/testdir/test21.in +++ /dev/null @@ -1,19 +0,0 @@ -Tests for [ CTRL-I with a count and CTRL-W CTRL-I with a count - -STARTTEST -:so small.vim -/start -6[ :.w! test.out -?start here -6 :.w >>test.out -:qa! -ENDTEST - -#include test21.in - -/* test text test tex start here - some text - test text - start OK if found this line - start found wrong line -test text diff --git a/src/nvim/testdir/test21.ok b/src/nvim/testdir/test21.ok deleted file mode 100644 index d9f1b759ce..0000000000 --- a/src/nvim/testdir/test21.ok +++ /dev/null @@ -1,2 +0,0 @@ - start OK if found this line - start OK if found this line diff --git a/src/nvim/testdir/test25.in b/src/nvim/testdir/test25.in deleted file mode 100644 index 4139865daf..0000000000 --- a/src/nvim/testdir/test25.in +++ /dev/null @@ -1,31 +0,0 @@ -Test for jumping to a tag with 'hidden' set, with symbolic link in path of tag. -This only works for Unix, because of the symbolic link. - -STARTTEST -:so small.vim -:set hidden -:" Create a link from test25.dir to the current directory. -:!rm -f test25.dir -:!ln -s . test25.dir -:" Create tags.text, with the current directory name inserted. -/tags line -:r !pwd -d$/test -hP:.w! tags.test -:" Try jumping to a tag in the current file, but with a path that contains a -:" symbolic link. When wrong, this will give the ATTENTION message. The next -:" space will then be eaten by hit-return, instead of moving the cursor to 'd'. -:set tags=tags.test -G x:.w! test.out -:!rm -f test25.dir tags.test -:qa! -ENDTEST - -tags line: -SECTION_OFF /test25.dir/test25.in /^#define SECTION_OFF 3$/ - -/*tx.c*/ -#define SECTION_OFF 3 -#define NUM_SECTIONS 3 - -SECTION_OFF diff --git a/src/nvim/testdir/test25.ok b/src/nvim/testdir/test25.ok deleted file mode 100644 index 08fc070b7b..0000000000 --- a/src/nvim/testdir/test25.ok +++ /dev/null @@ -1 +0,0 @@ -#efine SECTION_OFF 3 diff --git a/src/nvim/testdir/test26.in b/src/nvim/testdir/test26.in deleted file mode 100644 index e7cd757661..0000000000 --- a/src/nvim/testdir/test26.in +++ /dev/null @@ -1,44 +0,0 @@ -Test for :execute, :while and :if - -STARTTEST -:so small.vim -mt:let i = 0 -:while i < 12 -: let i = i + 1 -: if has("ebcdic") -: execute "normal o" . i . "\047" -: else -: execute "normal o" . i . "\033" -: endif -: if i % 2 -: normal Ax -: if i == 9 -: break -: endif -: if i == 5 -: continue -: else -: let j = 9 -: while j > 0 -: if has("ebcdic") -: execute "normal" j . "a" . j . "\x27" -: else -: execute "normal" j . "a" . j . "\x1b" -: endif -: let j = j - 1 -: endwhile -: endif -: endif -: if i == 9 -: if has("ebcdic") -: execute "normal Az\047" -: else -: execute "normal Az\033" -: endif -: endif -:endwhile -:unlet i j -:'t,$w! test.out -:qa! -ENDTEST - diff --git a/src/nvim/testdir/test26.ok b/src/nvim/testdir/test26.ok deleted file mode 100644 index bc44761187..0000000000 --- a/src/nvim/testdir/test26.ok +++ /dev/null @@ -1,10 +0,0 @@ - -1x999999999888888887777777666666555554444333221 -2 -3x999999999888888887777777666666555554444333221 -4 -5x -6 -7x999999999888888887777777666666555554444333221 -8 -9x diff --git a/src/nvim/testdir/test33.in b/src/nvim/testdir/test33.in deleted file mode 100644 index 5644760402..0000000000 --- a/src/nvim/testdir/test33.in +++ /dev/null @@ -1,34 +0,0 @@ -Test for 'lisp' -If the lisp feature is not enabled, this will fail! - -STARTTEST -:so small.vim -:set lisp -/^(defun -=G:/^(defun/,$w! test.out -:q! -ENDTEST - -(defun html-file (base) -(format nil "~(~A~).html" base)) - -(defmacro page (name title &rest body) -(let ((ti (gensym))) -`(with-open-file (*standard-output* -(html-file ,name) -:direction :output -:if-exists :supersede) -(let ((,ti ,title)) -(as title ,ti) -(with center -(as h2 (string-upcase ,ti))) -(brs 3) -,@body)))) - -;;; Utilities for generating links - -(defmacro with-link (dest &rest body) -`(progn -(format t "<a href=\"~A\">" (html-file ,dest)) -,@body -(princ "</a>"))) diff --git a/src/nvim/testdir/test33.ok b/src/nvim/testdir/test33.ok deleted file mode 100644 index cd1d87a14b..0000000000 --- a/src/nvim/testdir/test33.ok +++ /dev/null @@ -1,23 +0,0 @@ -(defun html-file (base) - (format nil "~(~A~).html" base)) - -(defmacro page (name title &rest body) - (let ((ti (gensym))) - `(with-open-file (*standard-output* - (html-file ,name) - :direction :output - :if-exists :supersede) - (let ((,ti ,title)) - (as title ,ti) - (with center - (as h2 (string-upcase ,ti))) - (brs 3) - ,@body)))) - -;;; Utilities for generating links - -(defmacro with-link (dest &rest body) - `(progn - (format t "<a href=\"~A\">" (html-file ,dest)) - ,@body - (princ "</a>"))) diff --git a/src/nvim/testdir/test43.in b/src/nvim/testdir/test43.in deleted file mode 100644 index 7c545073da..0000000000 --- a/src/nvim/testdir/test43.in +++ /dev/null @@ -1,34 +0,0 @@ -Tests for regexp with various magic settings. - -STARTTEST -:so small.vim -:set nocompatible viminfo+=nviminfo -/^1 -/a*b\{2}c\+/e -x/\Md\*e\{2}f\+/e -x:set nomagic -/g\*h\{2}i\+/e -x/\mj*k\{2}l\+/e -x/\vm*n{2}o+/e -x/\V^aa$ -x:set magic -/\v(a)(b)\2\1\1/e -x/\V[ab]\(\[xy]\)\1 -x:$ -:set undolevels=100 -dv?bar? -Yup:" -:?^1?,$w! test.out -:qa! -ENDTEST - -1 a aa abb abbccc -2 d dd dee deefff -3 g gg ghh ghhiii -4 j jj jkk jkklll -5 m mm mnn mnnooo -6 x ^aa$ x -7 (a)(b) abbaa -8 axx [ab]xx -9 foobar - diff --git a/src/nvim/testdir/test43.ok b/src/nvim/testdir/test43.ok deleted file mode 100644 index 0b37a6a61e..0000000000 --- a/src/nvim/testdir/test43.ok +++ /dev/null @@ -1,11 +0,0 @@ -1 a aa abb abbcc -2 d dd dee deeff -3 g gg ghh ghhii -4 j jj jkk jkkll -5 m mm mnn mnnoo -6 x aa$ x -7 (a)(b) abba -8 axx ab]xx -9 foobar -9 foo - diff --git a/src/nvim/testdir/test5.in b/src/nvim/testdir/test5.in deleted file mode 100644 index e19e20d59b..0000000000 --- a/src/nvim/testdir/test5.in +++ /dev/null @@ -1,29 +0,0 @@ -Test for autocommand that deletes the current buffer on BufLeave event. -Also test deleting the last buffer, should give a new, empty buffer. - -STARTTEST -:so small.vim -:au BufLeave Xxx bwipe -/start of -:.,/end of/w! Xxx " write test file Xxx -:sp Xxx " split to Xxx -:bwipe " delete buffer Xxx, now we're back here -G?this is a -othis is some more text -: " Append some text to this file -:?start?,$w! test.out " Write current file contents -:bwipe test.out " delete alternate buffer -:au bufleave test5.in bwipe -:bwipe! " delete current buffer, get an empty one -ithis is another test line:w >>test.out -: " append an extra line to the output file -:qa! -ENDTEST - -start of test file Xxx -vim: set noai : - this is a test - this is a test - this is a test - this is a test -end of test file Xxx diff --git a/src/nvim/testdir/test5.ok b/src/nvim/testdir/test5.ok deleted file mode 100644 index 6743060794..0000000000 --- a/src/nvim/testdir/test5.ok +++ /dev/null @@ -1,9 +0,0 @@ -start of test file Xxx -vim: set noai : - this is a test - this is a test - this is a test - this is a test -this is some more text -end of test file Xxx -this is another test line diff --git a/src/nvim/testdir/test51.in b/src/nvim/testdir/test51.in deleted file mode 100644 index b4f45d1f75..0000000000 --- a/src/nvim/testdir/test51.in +++ /dev/null @@ -1,36 +0,0 @@ -Tests for ":highlight". vim: set ft=vim : - -STARTTEST -:so small.vim -:" basic test if ":highlight" doesn't crash -:highlight -:hi Search -:" test setting colors. -:" test clearing one color and all doesn't generate error or warning -:hi NewGroup term=bold cterm=italic ctermfg=DarkBlue ctermbg=Grey gui= guifg=#00ff00 guibg=Cyan -:hi Group2 term= cterm= -:hi Group3 term=underline cterm=bold -:redir! >test.out -:hi NewGroup -:hi Group2 -:hi Group3 -:hi clear NewGroup -:hi NewGroup -:hi Group2 -:hi Group2 NONE -:hi Group2 -:hi clear -:hi Group3 -:hi Crash term='asdf -:redir END -:" filter ctermfg and ctermbg, the numbers depend on the terminal -:e test.out -:%s/ctermfg=\d*/ctermfg=2/ -:%s/ctermbg=\d*/ctermbg=3/ -:" filter out possibly translated error message -:%s/E475: [^:]*:/E475:/ -:" fix the fileformat -:set ff& -:wq! -ENDTEST - diff --git a/src/nvim/testdir/test51.ok b/src/nvim/testdir/test51.ok deleted file mode 100644 index be9ff7862c..0000000000 --- a/src/nvim/testdir/test51.ok +++ /dev/null @@ -1,20 +0,0 @@ - - -NewGroup xxx term=bold cterm=italic ctermfg=2 ctermbg=3 - -Group2 xxx cleared - -Group3 xxx term=underline cterm=bold - - -NewGroup xxx cleared - -Group2 xxx cleared - - -Group2 xxx cleared - - -Group3 xxx cleared - -E475: term='asdf diff --git a/src/nvim/testdir/test66.in b/src/nvim/testdir/test66.in deleted file mode 100644 index f1fdce3792..0000000000 --- a/src/nvim/testdir/test66.in +++ /dev/null @@ -1,33 +0,0 @@ - -Test for visual block shift and tab characters. - -STARTTEST -:so small.vim -/^one -fe4jRugvr1:'<,'>w! test.out -/^abcdefgh -4jI j<<11|D -7|a -7|a -7|a 4k13|4j< -:$-5,$w >> test.out -:$-4,$s/\s\+//g -4kI j<< -7|a -7|a -7|a 4k13|4j3< -:$-4,$w >> test.out -:qa! -ENDTEST - -one two three -one two three -one two three -one two three -one two three - -abcdefghijklmnopqrstuvwxyz -abcdefghijklmnopqrstuvwxyz -abcdefghijklmnopqrstuvwxyz -abcdefghijklmnopqrstuvwxyz -abcdefghijklmnopqrstuvwxyz diff --git a/src/nvim/testdir/test66.ok b/src/nvim/testdir/test66.ok deleted file mode 100644 index 4c3ab0fb56..0000000000 --- a/src/nvim/testdir/test66.ok +++ /dev/null @@ -1,16 +0,0 @@ -on1 two three -on1 two three -on1 two three -on1 two three -on1 two three - - abcdefghijklmnopqrstuvwxyz -abcdefghij - abc defghijklmnopqrstuvwxyz - abc defghijklmnopqrstuvwxyz - abc defghijklmnopqrstuvwxyz - abcdefghijklmnopqrstuvwxyz -abcdefghij - abc defghijklmnopqrstuvwxyz - abc defghijklmnopqrstuvwxyz - abc defghijklmnopqrstuvwxyz diff --git a/src/nvim/testdir/test67.in b/src/nvim/testdir/test67.in deleted file mode 100644 index 08b4e3701f..0000000000 --- a/src/nvim/testdir/test67.in +++ /dev/null @@ -1,33 +0,0 @@ -Test that groups and patterns are tested correctly when calling exists() for -autocommands. - -STARTTEST -:so small.vim -:let results=[] -:augroup auexists -:augroup END -:call add(results, "##BufEnter: " . exists("##BufEnter")) -:call add(results, "#BufEnter: " . exists("#BufEnter")) -:au BufEnter * let g:entered=1 -:call add(results, "#BufEnter: " . exists("#BufEnter")) -:call add(results, "#auexists#BufEnter: " . exists("#auexists#BufEnter")) -:augroup auexists -:au BufEnter * let g:entered=1 -:augroup END -:call add(results, "#auexists#BufEnter: " . exists("#auexists#BufEnter")) -:call add(results, "#BufEnter#*.test: " . exists("#BufEnter#*.test")) -:au BufEnter *.test let g:entered=1 -:call add(results, "#BufEnter#*.test: " . exists("#BufEnter#*.test")) -:edit testfile.test -:call add(results, "#BufEnter#<buffer>: " . exists("#BufEnter#<buffer>")) -:au BufEnter <buffer> let g:entered=1 -:call add(results, "#BufEnter#<buffer>: " . exists("#BufEnter#<buffer>")) -:edit testfile2.test -:call add(results, "#BufEnter#<buffer>: " . exists("#BufEnter#<buffer>")) -:e test.out -:call append(0, results) -:$d -:w -:qa! -ENDTEST - diff --git a/src/nvim/testdir/test67.ok b/src/nvim/testdir/test67.ok deleted file mode 100644 index 51188e5afd..0000000000 --- a/src/nvim/testdir/test67.ok +++ /dev/null @@ -1,10 +0,0 @@ -##BufEnter: 1 -#BufEnter: 0 -#BufEnter: 1 -#auexists#BufEnter: 0 -#auexists#BufEnter: 1 -#BufEnter#*.test: 0 -#BufEnter#*.test: 1 -#BufEnter#<buffer>: 0 -#BufEnter#<buffer>: 1 -#BufEnter#<buffer>: 0 diff --git a/src/nvim/testdir/test75.in b/src/nvim/testdir/test75.in deleted file mode 100644 index 8fabccdf52..0000000000 --- a/src/nvim/testdir/test75.in +++ /dev/null @@ -1,41 +0,0 @@ -Tests for maparg(). -Also test utf8 map with a 0x80 byte. - -STARTTEST -:so small.vim -:so mbyte.vim -:set cpo-=< -:set encoding=utf8 -:" Test maparg() with a string result -:map foo<C-V> is<F4>foo -:vnoremap <script> <buffer> <expr> <silent> bar isbar -:call append('$', maparg('foo<C-V>')) -:call append('$', string(maparg('foo<C-V>', '', 0, 1))) -:call append('$', string(maparg('bar', '', 0, 1))) -:map <buffer> <nowait> foo bar -:call append('$', string(maparg('foo', '', 0, 1))) -:" -:map abc x<char-114>x -:call append('$', maparg('abc')) -:map abc y<S-char-114>y -:call append('$', maparg('abc')) -:" -Go:" -:" Outside of the range, minimum -:inoremap <Char-0x1040> a -:execute "normal a\u1040\<Esc>" -:" Inside of the range, minimum -:inoremap <Char-0x103f> b -:execute "normal a\u103f\<Esc>" -:" Inside of the range, maximum -:inoremap <Char-0xf03f> c -:execute "normal a\uf03f\<Esc>" -:" Outside of the range, maximum -:inoremap <Char-0xf040> d -:execute "normal a\uf040\<Esc>" -:" -:/^eof/+1,$w! test.out -:qa! -ENDTEST - -eof diff --git a/src/nvim/testdir/test75.ok b/src/nvim/testdir/test75.ok deleted file mode 100644 index a2c5c5ac3d..0000000000 --- a/src/nvim/testdir/test75.ok +++ /dev/null @@ -1,7 +0,0 @@ -is<F4>foo -{'silent': 0, 'noremap': 0, 'lhs': 'foo<C-V>', 'mode': ' ', 'nowait': 0, 'expr': 0, 'sid': 0, 'rhs': 'is<F4>foo', 'buffer': 0} -{'silent': 1, 'noremap': 1, 'lhs': 'bar', 'mode': 'v', 'nowait': 0, 'expr': 1, 'sid': 0, 'rhs': 'isbar', 'buffer': 1} -{'silent': 0, 'noremap': 0, 'lhs': 'foo', 'mode': ' ', 'nowait': 1, 'expr': 0, 'sid': 0, 'rhs': 'bar', 'buffer': 1} -xrx -yRy -abcd |