Commit Graph

5832 Commits

Author SHA1 Message Date
Michael Schupikov
f8dcd319d9 vim-patch:8.0.0294 (#7305)
Problem:    Argument list is not stored correctly in a session file.
            (lgpasquale)
Solution:   Use "$argadd" instead of "argadd". (closes vim/vim#1434)

79da563cf9
Signed-off-by: Michael Schupikov <michael@schupikov.de>
2017-09-23 08:32:29 +02:00
James McCoy
705739a162 Merge pull request #7277 from jamessan/deprecated-unibilium-APIs
tui: Use unibi_var_from_num when available
2017-09-17 15:30:27 -04:00
KunMing Xie
12efbf897d vim-patch:8.0.0327 (#7281)
Problem:    The E11 error message in the command line window is not
            translated.
Solution:   use _(). (Hirohito Higashi)

75c19464ed
2017-09-17 20:05:22 +02:00
KunMing Xie
cf59d617bc vim-patch:8.0.0324 (#7279)
Problem:    Illegal memory access with "1;y".
Solution:   Call check_cursor() instead of check_cursor_lnum(). (Dominique
            Pelle, closes vim/vim#1455)

f1f6f3f7df
2017-09-17 20:04:17 +02:00
KunMing Xie
009c695f0a vim-patch:8.0.0302 NA (#7264)
(NA: Nvim removed the ability to set termcodes directly.)

Problem:    Cannot set terminal key codes with :let.
Solution:   Make it work.

e353c402e6
2017-09-17 19:56:08 +02:00
KunMing Xie
e53af2b1f5 vim-patch:8.0.0305 (#7265)
Problem:    Invalid memory access when option has duplicate flag.
Solution:   Correct pointer computation. (Dominique Pelle, closes vim/vim#1442)

aaaf57d8a9
2017-09-17 19:43:45 +02:00
James McCoy
b9cba41106 tui: Use unibi_var_from_num when available
As of unibilium 1.2.1, directly manipulating unibi_var_t is deprecated.

    ../src/nvim/tui/tui.c: In function 'update_attrs':
    ../src/nvim/tui/tui.c:321:7: warning: 'i' is deprecated: use unibi_var_from_num or unibi_num_from_var instead [-Wdeprecated-declarations]
           data->params[0].i = (fg >> 16) & 0xff;  // red
           ^~~~
    In file included from ../src/nvim/tui/tui.c:12:0:
    /usr/include/unibilium.h:632:9: note: declared here
         int i   UNIBI_DEPRECATED("use unibi_var_from_num or unibi_num_from_var instead");
             ^

All use should go through unibi_{num,str}_from_var and
unibi_var_from_{num,str}.  Wrap access of unibi_var_t behind a new
UNIBI_SET_NUM_VAR macro which uses the new functions when they're
available.
2017-09-16 23:23:01 -04:00
Justin M. Keyes
47019bb167 getchar.c: add TERM_FOCUS to MAP_HASH (#7271)
vim-patch:8.0.1108

69fbc9e1da
2017-09-16 11:20:26 +02:00
Justin M. Keyes
2736f0cb56 ex_cmds.c:do_sub(): macroize duplicate code 2017-09-13 00:00:42 +02:00
KillTheMule
6d0f87a0bd 'inccommand': fix 'gdefault' lockup #7261
closes #7244
ref #7249
2017-09-12 22:44:11 +02:00
KunMing Xie
d2cbc31185 Vim-patch 8.0.0300 (#7258)
vim-patch:8.0.0300

Problem:    Cannot stop diffing hidden buffers. (Daniel Hahler)
Solution:   When using :diffoff! make the whole list if diffed buffers empty.
            (closes vim/vim#736)

25ea054458
2017-09-11 10:17:41 -04:00
KunMing Xie
ceade2fe53 vim-patch:8.0.0186 (#7154)
Problem:    The error message from assert_notequal() is confusing.
Solution:   Only mention the expected value.

5869cf060e
2017-09-10 12:52:43 +02:00
KunMing Xie
713a957e9c vim-patch:8.0.0282 vim-patch:8.0.0291 (#7255)
vim-patch:8.0.0291

Problem:    Visual block insertion does not insert in all lines.
Solution:   Don't bail out of insert too early. Add a test. (Christian
            Brabandt, closes vim/vim#1290)

23fa81d222

vim-patch:8.0.0282

Problem:    When doing a Visual selection and using "I" to go to insert mode,
            CTRL-O needs to be used twice to go to Normal mode.
            (Coacher)
Solution:   Check for the return value of edit(). (Christian Brabandt,
            closes #1290)

0b5c93a7f2
2017-09-10 12:21:52 +02:00
KillTheMule
26d08dfd0d inccommand: fix optimization logic #7224
Before this change the preview changes in the buffer viewport were
limited to the size of the preview window ('cmdwinheight').

closes #7220
2017-09-09 15:02:06 +02:00
Justin M. Keyes
06f8ad5b2a terminal.c: need maketitle() in terminal-mode
normal_redraw() usually takes care of this, but that doesn't happen
during terminal-mode.

regression by c484323dc6
steps to reproduce:
    nvim -u NORC --cmd 'execute("set titlestring=" . $NVIM_LISTEN_ADDRESS) | set title | startinsert | !sleep 1' term://sh

closes #7248
2017-09-09 14:07:36 +02:00
Justin M. Keyes
cb912a3eda Merge #7241 ':terminal : handle F1-F12, other keys' 2017-09-06 09:22:32 +02:00
Justin M. Keyes
51808a244e Merge #7221 from justinmk/ev-focusgained
tui: schedule event instead of <FocusGained> pseudokey
2017-09-06 07:25:01 +02:00
KunMing Xie
82795c2c3a vim-patch: 8.0.0{181,182,188} (#7152)
vim-patch:8.0.0181
Problem:    When 'cursorbind' and 'cursorcolumn' are both on, the column
            highlignt in non-current windows is wrong.
Solution:   Add validate_cursor(). (Masanori Misono, closes vim/vim#1372)
519d7785f4

vim-patch:8.0.0182
Problem:    When 'cursorbind' and 'cursorline' are set, but 'cursorcolumn' is
            not, then the cursor line highlighting is not updated. (Hirohito
            Higashi)
Solution:   Call redraw_later() with NOT_VALID.
e47683a091

vim-patch:8.0.0188
    Problem:    Using NOT_VALID for redraw_later() to update the cursor
                line/column highlighting is not efficient.
    Solution:   Call validate_cursor() when 'cul' or 'cuc' is set.
9506cad7a1
2017-09-05 19:04:57 +02:00
Justin M. Keyes
5696991c6d Merge #5014 ':terminal : handle F1-F12, other keys'
closes #3101
closes #4343
closes #5024
closes #5925
2017-09-05 18:11:38 +02:00
Justin M. Keyes
cdd9e868ef doc: channel, eventloop 2017-09-05 15:01:07 +02:00
Justin M. Keyes
c00a33ed19 eventloop: loop_schedule_deferred()
Generalize the "schedule schedule" technique.
2017-09-05 15:01:07 +02:00
Justin M. Keyes
8716994cf0 lint 2017-09-05 15:01:07 +02:00
Justin M. Keyes
63c6470505 log: introduce context 2017-09-05 15:01:07 +02:00
Justin M. Keyes
6c53c3ee55 eventloop: restore redraw in cmdline K_EVENT handler
Restores behavior from commit: 02e86ef04cc1
2017-09-05 15:01:06 +02:00
Justin M. Keyes
d47b538f39 eventloop: do not redraw in cmdline K_EVENT handler
If :echo is done by an timer or event (such as FocusGained/FocusLost),
redrawcmdline() clobbers it.
2017-09-05 15:01:06 +02:00
Justin M. Keyes
d30abd8857 eventloop: FocusGained: schedule the schedule
main_loop.fast_events does not manifest as K_EVENT, because it is
processed at a different stage than main_loop.events. In order to queue
into main_loop.events, we need to go through the threadsafe
loop_schedule(), which queues into main_loop.thread_events and
eventually main_loop.fast_events. _Then_ it is safe to directly queue
into main_loop.events.

This makes it more likely that the event is treated as K_EVENT.
2017-09-05 15:01:06 +02:00
Justin M. Keyes
46fdacc5b5 doc: eventloop 2017-09-05 15:01:06 +02:00
Justin M. Keyes
b6b6e4a96f eventloop: FocusGained: schedule event instead of pseudokey
closes #4840
closes #6164
2017-09-05 15:01:06 +02:00
Vadim A. Misbakh-Soloviov
f050aaabbb tui: DECSCUSR workaround for Konsole (#7236)
closes #7235
2017-09-04 18:48:05 +02:00
Matthew Malcomson
541dde36e3 eventloop: K_EVENT should not finish operator
normal_finish_command() and normal_prepare() assume that any pending
operator needs to be finished after any subsequent key.

Set `finish_op = false` in nv_event() to indicate that the pending
operator shouldn't be finished in normal_execute().

This is how nv_visual() indicates that 'v' or 'V' in operator-pending
mode should not finish the current pending operator.

fixes #5398
fixes #6166 (partially; mappings are still interrupted)
2017-09-04 08:20:04 +02:00
Albert Han
69a201d6c5 vim-patch:8.0.0125
Problem:    Not enough testing for entering Ex commands.
Solution:   Add test for CTRL-\ e {expr}. (Dominique Pelle)

eaaa9bbda6
2017-09-03 09:26:46 -04:00
KunMing Xie
11429f9429 vim-patch:8.0.0247 (#7232)
Problem:    Under some circumstances, one needs to type Ctrl-N or Ctrl-P twice
            to have a menu entry selected. (Lifepillar)
Solution:   call ins_compl_free(). (Christian Brabandt, closes vim/vim#1411)

aed6d0b81a
2017-09-03 10:58:32 +02:00
ckelsel
0e13b15fde vim-patch:8.0.0209
Problem:    When using :substitute with the "c" flag and 'cursorbind' is set
            the cursor is not updated in other windows.
Solution:   Call do_check_cursorbind(). (Masanori Misono)

41baa7983a
2017-08-30 19:59:18 +08:00
Leonardo Brondani Schenkel
e1628fab00 tui: support new iterm2, iTerm2.app terminfo entries
iTerm2 got its own entry in Thomas Dickey's terminfo.src on 2017-08-16.
Make sure that the new entry is handled in the same way as the old entry.

closes #7209
closes #7214
2017-08-26 17:11:56 +02:00
Justin M. Keyes
6e7a8c3fe2 Merge #7081 from justinmk/rpcstop
rpc: close channel if stream was closed
2017-08-26 16:41:35 +02:00
James McCoy
46a4099dfb Merge pull request #7192 from llorens/vim-8.0.0092
vim-patch:8.0.0092
2017-08-25 11:21:36 -04:00
Justin M. Keyes
0f2873ce99 Merge #7205 from justinmk/win-wmain 2017-08-24 09:31:08 +02:00
Fredrik Fornwall
da84f7dcf9 tui: always use unibi_add_ext_str with unibi_get_ext_str #7204
When using an index returned by unibi_add_ext_str() we should
always use unibi_get_ext_str() and not rely on the index being
lower than unibi_string_begin_.

Closes #7206
2017-08-24 09:22:21 +02:00
Justin M. Keyes
02e5eafa86 win: expect utf8-encoded argv when built as a library 2017-08-24 08:42:45 +02:00
Justin M. Keyes
71df5dde6d win: wmain(): use utf16_to_utf8() #7060 2017-08-24 08:42:45 +02:00
Yuto Tokunaga
e5565891af win: wmain(): locale-independent argv (#7180)
fix #7060
2017-08-23 00:55:00 +02:00
Justin M. Keyes
85f3084e21 clipboard: disallow recursion; show hint only once (#7203)
- Show hint only once per session.
- provider#clipboard#Call(): prevent recursion
- provider#clear_stderr(): use has_key(), because :silent! is still
  captured by :redir.

closes #7184
2017-08-22 20:31:54 +02:00
Justin M. Keyes
7f7698649f Merge #6973 from teto/normal_hl 2017-08-22 20:01:50 +02:00
Matthieu Coudron
5f6ad863c6 syntax.c: style
Converts some documentation to doxygen format + minor styling
improvements.
2017-08-22 12:37:59 +02:00
Matthieu Coudron
4d91369fd7 syntax.c: register 'Normal' highlight group
- :hi Normal works with -u NONE
- Makes HL_TABLE and ATTR_ENTYRY a function instead of a macro so that in can be used in gdb.
- Introduces ATTRENTRY_INIT to init attrentry_t
2017-08-22 12:37:59 +02:00
James McCoy
41d180abb4 vim-patch:8.0.0680
Problem:    Plugins in start packages are sourced twice. (mseplowitz)
Solution:   Use the unmodified runtime path when loading plugins (test by Ingo
            Karkat, closes vim/vim#1801)

07ecfa64a1
2017-08-21 20:29:49 -04:00
James McCoy
622c3454df vim-patch:8.0.0612
Problem:    Package directories are added to 'runtimepath' only after loading
            non-package plugins.
Solution:   Split off the code to add package directories to 'runtimepath'.
            (Ingo Karkat, closes vim/vim#1680)

ce876aaa9a
2017-08-21 20:29:49 -04:00
James McCoy
fc7bf1c71d vim-patch:8.0.0437
Problem:    The packadd test does not create the symlink correctly and does
            not test the right thing.
Solution:   Create the directory and symlink correctly.

644df41c44
2017-08-21 20:29:49 -04:00
James McCoy
651c6f9b6e vim-patch:8.0.0326
Problem:    Packadd test uses wrong directory name.
Solution:   Use the variable name value. (Hirohito Higashi)

24f8f543d4
2017-08-21 20:29:49 -04:00
James McCoy
24a5564196 vim-patch:8.0.0325
Problem:    Packadd test does not clean up symlink.
Solution:   Delete the link. (Hirohito Higashi)

913727e567
2017-08-21 20:29:48 -04:00