Commit Graph
13075 Commits
Author SHA1 Message Date
Douglas 'dopessoa' Pessoa aa610690bf genappimage.sh: migrate to linuxdeploy #10027
generate_type2_appimage is unmaintained, and lacks a way to rename the appimage file.

fix #9893
2019-05-18 20:38:19 +02:00
Justin M. Keyes e8beea204b kbtree.h: assert valid range #10022
ref #10012
2019-05-18 16:21:33 +02:00
Björn Linse 8e22c4510e Merge pull request #10025 from bfredl/bufhl_fixes
kbtree: pointer UB and unitialized value fixes
2019-05-18 14:33:14 +02:00
Björn Linse b247c6fd22 kbtree: pointer UB and unitialized value fixes
- don't underflow itr->p pointer (C standard only allows one past the end, not
  one before the beginning)
- make sure itr->p->i is always initialized (even when not used)
- don't rely on `NULL < &object` (likely UB)
2019-05-18 13:37:57 +02:00
Jan Edmund Lazo 5625c7d8e1 vim-patch:8.1.1338: fix hang when concealing wide char #10023
Problem:    Hang when concealing the '>' shown for a wide char that doesn't
            fit in the last cell.
Solution:   Put back the pointer when the '>' is not going to be displayed.
            (closes vim/vim#4377)
https://github.com/vim/vim/commit/0ebe12be86d9f79bfa833306a0302a68a0f4fc30
2019-05-18 10:18:48 +02:00
Kwon-Young Choi 9420a2127f runtime/termdebug.vim #10015
* bugfix
* use NormalFloat for floating window background
* use floating window by default
* correctly use nvim_open_win()
* use nvim_win_set_option to set window local option
* use nvim_buf_set_option for buffer options
* renamed augroup to nvim_termdebug_close_hover to be consistent with
nvim_terminal_... augroup
2019-05-16 21:58:07 +02:00
Kwon-Young Choi 3a699a790c runtime/termdebug.vim #8364
* commit 36257d0f97b396467bef7a5937befd894fb23e31
Author: Kwon-Young Choi <kwon-young.choi@hotmail.fr>
Date:   Sat May 5 16:57:45 2018 +0200

    Port of the termdebug.vim plugin to neovim terminal feature.
    For neovim compatibility,
    The vim specific calls were replaced with neovim specific calls:
      term_start -> term_open
      term_sendkeys -> jobsend
      term_getline -> getbufline
      job_info && term_getjob -> using linux command ps to get the tty

    fix1: forgot to port EndDebug callback to neovim

    fix2: use nvim_get_chan_info to get pty of job
          remove the use of communication buffer by using jobstart instead
          of termopen

    fix3: get gdbbuf using nvim_get_chan_info

* cleaned up if has('nvim') to remove vim support.
added neovim floating window support for expression evaluation

* improvred documentation, cleaned up vim menu code, fixed bug when
floating window feature is not available
2019-05-16 11:21:05 +02:00
Björn Linse 94f78ccf89 Merge pull request #9883 from bfredl/termredraw
make terminal state redraw like any other state
2019-05-14 13:39:00 +02:00
Björn Linse 5020daa6e5 ui/terminal: make terminal state redraw like any other state
Previously, ordinary redraws were missing from terminal mode. Instead,
there was an async callback that invoked update_screen() on terminal
data regardless of mode (as if :redraw! was invoked by a timer).

This created some issues:

- async changes to an unrelated ordinary buffer were not always redrawn in
  terminal mode
- screen cursor position was not properly updated in terminal mode (partial
  fix, will be properly fixed in a follow up PR)
- ad-hoc logic was needed for interaction with special states such as
  inccommand or horizontal wildmenu.

Instead redraw terminal mode just like any other state. This disables forced
redraws in cmdline mode, which were inconisent which async changes to
normal buffers (which are not redrawn in cmdline mode).
2019-05-14 12:54:39 +02:00
Björn Linse 9e0982a1a2 Merge pull request #9985 from bfredl/shenanigans
Fix aucmd_win issues: crashes and redrawing errors.
2019-05-13 23:24:14 +02:00
Björn Linse 74751117eb autocmd: fixes and tests for autocmd window issues
- redraw! in an invisible buffer rendered the screen unusable.
- storing the autocmd window handle and using it in API function could lead
  to crashes. Unregister the handle when the window is not active.
2019-05-13 20:32:04 +02:00
Justin M. Keyes e882460e52 Merge #10003 from justinmk/api-keymap
API/nvim_set_keymap: minor cleanup
2019-05-13 09:03:14 +02:00
Justin M. Keyes 60aaae1c86 API/nvim_set_keymap: remove mode-shortname aliases
Reduce the API surface-area a bit. No need to have aliases for a mode.
ref #9924
2019-05-12 13:27:07 +02:00
Justin M. Keyes f35d233e07 API/nvim_set_keymap: minor cleanup
ref #9924
2019-05-12 13:04:48 +02:00
Yilin Yang fbf2c414ad API: nvim_set_keymap, nvim_del_keymap #9924
closes #9136

- Treat empty {rhs} like <Nop>

- getchar.c: Pull "repl. MapArg termcodes" into func
  The "preprocessing code" surrounding the replace_termcodes calls needs
  to invoke replace_termcodes, and also check if RHS is equal to "<Nop>".
  To reduce code duplication, factor this out into a helper function.

  Also add an rhs_is_noop flag to MapArguments; buf_do_map_explicit
  expects an empty {rhs} string for "<Nop>", but also needs to distinguish
  that from something like ":map lhs<cr>" where no {rhs} was provided.

- getchar.c: Use allocated buffer for rhs in MapArgs
  Since the MAXMAPLEN limit does not apply to the RHS of a mapping (or
  else an RHS that calls a really long autoload function from a plugin
  would be incorrectly rejected as being too long), use an allocated
  buffer for RHS rather than a static buffer of length MAXMAPLEN + 1.

- Mappings LHS and RHS can contain literal space characters, newlines, etc.

- getchar.c: replace_termcodes in str_to_mapargs
  It makes sense to do this; str_to_mapargs is, intuitively, supposed to
  take a "raw" command string and parse it into a totally "do_map-ready"
  struct.

- api/vim.c: Update lhs, rhs len after replace_termcodes
  Fixes a bug in which replace_termcodes changes the length of lhs or rhs,
  but the later search through the mappings/abbreviations hashtables
  still uses the old length value. This would cause the search to fail
  erroneously and throw 'E31: No such mapping' errors or 'E24: No such
  abbreviation' errors.

- getchar: Create new map_arguments struct
  So that a string of map arguments can be parsed into a more useful, more
  portable data structure.

- getchar.c: Add buf_do_map function
  Exactly the same as the old do_map, but replace the hardcoded references
  to the global `buf_T* curbuf` with a function parameter so that we can
  invoke it from nvim_buf_set_keymap.

- Remove gettext calls in do_map error handling
2019-05-12 11:44:48 +02:00
Justin M. Keyes 24f9dd73d5 test/channels_spec: cleanup
- Remove stray print()
- Use uname() instead of system('uname')
2019-05-12 00:43:28 +02:00
Justin M. Keyes ab7d9ae193 Merge #9993 from justinmk/ui-message-kinds
UI/ext_messages: learn more message kinds
2019-05-12 00:11:57 +02:00
Justin M. Keyes a0f775c4d3 doc 2019-05-11 23:42:55 +02:00
Justin M. Keyes 3d1ed7c959 UI/ext_messages: learn more message kinds
ref #6201
2019-05-11 23:42:55 +02:00
Jan Edmund Lazo 7c9d4d971c vim-patch:8.1.0543: fix memory leak #10001
Problem:    Coverity warns for leaking memory and using wrong struct.
Solution:   Free pointer when allocation fails. Change "boff" to "loff".
            (closes vim/vim#3634)
https://github.com/vim/vim/commit/4e303c8ba8dcd0566a1ad7c82ff18eb016eea335
2019-05-11 21:53:59 +02:00
Justin M. Keyes da3c0e4962 Merge #9994 from janlazo/vim-8.1.1306
vim-patch:8.1.{1306,1312}
2019-05-11 12:48:26 +02:00
Jan Edmund Lazo c82c5d7570 vim-patch:8.1.1312: Coverity warning for using uninitialized variable
Problem:    Coverity warning for using uninitialized variable.
Solution:   Clear exarg_T.
https://github.com/vim/vim/commit/4ca41534b726c4116d2e430e877e34146b4d4831
2019-05-09 23:16:17 -04:00
Jan Edmund Lazo 92f39762af vim-patch:8.1.1306: Borland support is outdated and doesn't work
Problem:    Borland support is outdated and doesn't work.
Solution:   Remove Borland support, there are other (free) compilers
            available. (Thomas Dziedzic, Ken Takata, closes vim/vim#4364)
https://github.com/vim/vim/commit/eae1b91fea74842000fc055afc74fe2e7934c6ee
2019-05-09 20:27:11 -04:00
juliancoffee a541c681f6 runtime/tutor [ci skip] #9990 2019-05-09 23:32:57 +02:00
Justin M. Keyes d818135e3f Merge #9992 from justinmk/ui-upgrade
UI/nvim_ui_attach(): add "override" option
2019-05-09 23:31:30 +02:00
Justin M. Keyes b9ad12e6c2 UI/nvim_ui_attach(): add override option
Before now, Nvim always degrades UI capabilities to the lowest-common
denominator. For example, if any connected UI has `ext_messages=false`
then `ext_messages=true` requested by any other connected UI is ignored.

Now `nvim_ui_attach()` supports `override=true`, which flips the
behavior: if any UI requests an `ext_*` UI capability then the
capability is enabled (and the legacy behavior is disabled).

Legacy UIs will be broken while a `override=true` UI is connected, but
it's useful for debugging: you can type into the TUI and observe the UI
events from another connected (UI) client. And the legacy UI will
"recover" after the `override=true` UI disconnects.

Example using pynvim:

    >>> n.ui_attach(2048, 2048, rgb=True, override=True, ext_multigrid=True, ext_messages=True, ext_popupmenu=True)
    >>> while True: n.next_message();
2019-05-09 22:27:41 +02:00
Justin M. Keyes b6ad206024 Merge pull request #9987 from janlazo/vim-8.1.0865
vim-patch:8.1.{865,1299}
2019-05-09 11:15:19 +02:00
Jan Edmund Lazo 98398ff93f vim-patch:8.1.1299: "extends" from 'listchars' is used when 'list' is off
Problem:    "extends" from 'listchars' is used when 'list' is off. (Hiroyuki
            Yoshinaga)
Solution:   Only use the "extends" character when 'list' is on. (Hirohito
            Higashi, closes vim/vim#4360)
https://github.com/vim/vim/commit/a5c6a0b6c71ae11078cbf6f5e18ce49a0468a117
2019-05-08 21:46:37 -04:00
Jan Edmund Lazo 924f1173cb vim-patch:8.1.0865: when 'listchars' only contains "nbsp:X" it does not work
Problem:    When 'listchars' only contains "nbsp:X" it does not work.
Solution:   Set extra_check when lcs_nbsp is set. (Ralf Schandl, closes vim/vim#3889)
https://github.com/vim/vim/commit/895d966e341c187ffcf9da88dba193cbfcebf000
2019-05-08 21:05:10 -04:00
Justin M. Keyes 8330cc22af vim-patch:8.1.1205: BufReadPre may move the cursor #9980
Problem:    A BufReadPre autocommand may cause the cursor to move.
Solution:   Restore the cursor position after executing the autocommand,
            unless the autocommand moved it. (Christian Brabandt,
            closes vim/vim#4302, closes vim/vim#4294)
https://github.com/vim/vim/commit/a68e59590905da9b4448ff1fcac929ad1a18da9e
2019-05-08 18:01:21 +02:00
Jan Edmund Lazo d36ef9339f vim-patch:8.1.1293: MSVC files are no longer useful #9982
Problem:    MSVC files are no longer useful for debugging.  Newer Visual
            Studio versions cannot read them.
Solution:   Delete the files. (Ken Takata, closes vim/vim#4357)
https://github.com/vim/vim/commit/fda9784dc9596e1e36f840bbf1935a4c4b502bd9
2019-05-08 11:44:04 +02:00
Justin M. Keyes bc395b4fd4 Merge #9979 from janlazo/vim-8.0.0876
vim-patch:8.0.{876,1144},8.1.0133
2019-05-07 11:42:21 +02:00
Jan Edmund Lazo 4423759d03 vim-patch:8.0.1144: using wrong #ifdef for computing length
Problem:    Using wrong #ifdef for computing length.
Solution:   use BACKSLASH_IN_FILENAME instead of COLON_IN_FILENAME. (Yasuhiro
            Matsomoto, closes vim/vim#2153)
https://github.com/vim/vim/commit/0b05e491b473dbf39cd9f519030bf6363c272300
2019-05-07 03:43:47 -04:00
Jan Edmund Lazo 32059526de lint 2019-05-07 03:24:37 -04:00
Jan Edmund Lazo f4e5cd200a vim-patch:8.1.0133: tagfiles() can have duplicate entries
Problem:    tagfiles() can have duplicate entries.
Solution:   Simplify the filename to make checking for duplicates work better.
            Add a test. (Dominique Pelle, closes vim/vim#2979)
https://github.com/vim/vim/commit/46577b5e5445c4aaa1e7ae1764373d11dae71663
2019-05-07 03:21:26 -04:00
hashinclude 400ee59247 API: fix cursor position when lines are added #9961
Restore code removed in #9674.
2019-05-07 09:17:37 +02:00
Jan Edmund Lazo f76792a10b vim-patch:8.0.0876: backslashes and wildcards in backticks don't work
Problem:    MS-Windows: Backslashes and wildcards in backticks don't work.
Solution:   Do not handle backslashes inside backticks in the wrong place.
            (Yasuhiro Matsumoto, closes vim/vim#1942)
https://github.com/vim/vim/commit/39d21e3c30f3391f3b27f5ddb7e1ad411bdb8f2e
2019-05-07 03:03:28 -04:00
Justin M. Keyes b3adfa03b7 Merge #9978 from janlazo/vim-8.1.1285
vim-patch:8.1.{1284,1285,1286}
2019-05-07 08:38:18 +02:00
Jan Edmund Lazo ac1fbc2860 fixup! vim-patch:8.0.1782: no simple way to label quickfix entries 2019-05-06 22:35:45 -04:00
Jan Edmund Lazo b5539c2044 vim-patch:8.1.1284: detecting *.tmpl as htmlcheetah is outdated
Problem:    Detecting *.tmpl as htmlcheetah is outdated.
Solution:   Use the generic name "template". (closes vim/vim#4348)
https://github.com/vim/vim/commit/d1362211291c85d29609baab65abc764b1aec169
2019-05-06 22:35:45 -04:00
Jan Edmund Lazo 53d99b9657 vim-patch:8.1.1286: running tests leaves XTest_tabpage_cmdheight file behind
Problem:    Running tests leaves XTest_tabpage_cmdheight file behind.
Solution:   Delete the right file. (closes vim/vim#4350)
https://github.com/vim/vim/commit/4fa06870e5d347c30fe55290dab87e494c8aa06a
2019-05-06 22:35:45 -04:00
Jan Edmund Lazo 210d803777 vim-patch:8.1.1285: test17 is old style
Problem:    Test17 is old style.
Solution:   Turn into new style test. (Yegappan Lakshmanan, closes vim/vim#4347)
https://github.com/vim/vim/commit/f0ab01f6d868164ed0bb247b6f7b152e6929ef18
2019-05-06 22:35:45 -04:00
Justin M. Keyes 5a714c53f2 Merge #9977 from justinmk/pvs 2019-05-06 23:59:43 +02:00
Justin M. Keyes d83a7dc687 Merge #9798 'aucmd_prepbuf: Use floating window' 2019-05-06 23:10:16 +02:00
Juraj Fiala df9059d1a8 appdata: Include more info #9974
- Configuring the translation domain allows calculating and showing the translation states of each language
- OARS gives Neovim a nice ‘safe for children’ badge
- Releases allow displaying release info/update frequency
2019-05-06 22:11:59 +02:00
Marco Hinz b0e3b5cf2e aucmd_win: use a floating window 2019-05-06 16:31:58 +02:00
Justin M. Keyes 91547a80b6 lint 2019-05-06 10:02:15 +02:00
Justin M. Keyes e7a8908b11 PVS/V781: "maxlen" variable checked after use
False positive.
2019-05-06 10:02:08 +02:00
Justin M. Keyes fe299a82a6 PVS/V547: Expression is always true
Since 67bac681ea (see msg_multiline_attr()) msg_clr_eos() is always
called.
2019-05-06 10:02:00 +02:00
Justin M. Keyes a52e93dfd8 PVS/V547: Expression is always false 2019-05-06 10:01:57 +02:00