aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/message.c
Commit message (Collapse)AuthorAge
...
* ui: implement ext_messagesBjörn Linse2019-02-10
| | | | Co-Author: Dongdong Zhou <dzhou121@gmail.com>
* screen: cleanup allocation, clearing and validationBjörn Linse2019-02-07
| | | | | | grid_xx functions shouldn't randomly be called when the screen is not valid. Nvim deterministically initializes a default screen early in main(), so the default grid can be assumed to be allocated.
* screen: simplify scrolling codeBjörn Linse2019-02-07
| | | | | Since the separation between internal screen and TUI, internal scroll cannot FAIL. Delete the conditions for this.
* multigrid: reset win scrolling after swap messageBjörn Linse2019-02-02
|
* vim-patch:8.1.0759: showing two characters for tab is limitedMarco Hinz2019-01-26
| | | | | | | | Problem: Showing two characters for tab is limited. Solution: Allow for a third character for "tab:" in 'listchars'. (Nathaniel Braun, Ken Takata, closes vim/vim#3810) https://github.com/vim/vim/commit/83a52171ba00b2b9fd2d1d22a07e38fc9fc69c1e
* linter: fix issuesMarco Hinz2019-01-26
|
* options: make 'fillchars'/'listchars' local to windowMarco Hinz2019-01-26
| | | | | | | | | | Using 'listchars' is a nice way to highlight tabs that were included by accident for buffers that set 'expandtab'. But maybe one does not want this for buffers that set 'noexpandtab', so now one can use: autocmd FileType go let &l:listchars .= ',tab: '
* cleanup: reduce some duplicate code, avoid function pointers for a conditionBjörn Linse2019-01-23
| | | | | | | Add 'multiline' flag to history for correct :messages output Use larger buffer size for multiline messages. if this turns out to not be enough, we could do size calculation like api_set_error
* ex_echo: reuse code from message.c to show arg to userAlexandre Dubray2019-01-22
|
* message.c: add msg_echo_attr functions, use it for lua error messagesAlexandre Dubray2019-01-22
| | | | | The added function behaves like the non-echo function but display message in a echo-style way (i.e. tab and newline are preserved)
* multigrid: add msg_scroll_start and msg_scroll_reset eventsBjörn Linse2018-12-31
|
* multigrid: Fix lint errorsUtkarsh Maheshwari2018-12-31
|
* multigrid: Change screen_* functions to grid_* functionsUtkarsh Maheshwari2018-12-31
|
* Merge #9291 'vim-patch:8.1.{550,551}'Justin M. Keyes2018-12-02
|\
| * vim-patch:8.1.0550: expression evaluation may repeat an error messageJan Edmund Lazo2018-11-30
| | | | | | | | | | | | | | | | Problem: Expression evaluation may repeat an error message. (Jason Franklin) Solution: Increment did_emsg and check for the value when giving an error for the echo command. https://github.com/vim/vim/commit/76a6345433bc2a600689397fb28165a2e5793720
* | VimL/confirm(): Show dialog even if :silentJustin M. Keyes2018-12-01
|/ | | | | closes #8788 related #9034
* UI/TUI: improvements and cleanups for scrolling and clearingBjörn Linse2018-11-11
| | | | | | | | | | | | - TUI: _never_ rely on BCE for implicit clearing, only explicit commands. - TUI: use unibi_erase_chars when possible. - TUI: use end-exclusive ranges for invalid and cleared areas - screen: scrolling leaves scrolled in aree undefined. This is a conservative change, a client assuming the old semantics will still behave correctly. - screen: factor out vsep handling from line drawing. This is needed anyway for the multigrid refactor. - screen: simplifications of win_do_lines
* ui: disable clearing almost everywhereBjörn Linse2018-10-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Avoid clearing the screen in most situations. NOT_VALID should be equivalent to CLEAR unless some external force messed up the terminal, for these situations <c-l> and :mode will still clear the screen. Also eliminate some obsolete code in screen.c, that dealt with that in vim drawing window 1 can mess up window 2, but this never happens in nvim. But what about slow terminals? There is two common meanings in which a terminal is said to be "slow": Most commonly (and in the sense of vim:s nottyfast) it means low bandwidth for sending bytes from nvim to the terminal. If the screen is very similar before and after the update_screen(CLEAR) this change should reduce bandwidth. If the screen is quite different, but there is no new regions of contiguous whitespace, clearing doesn't reduce bandwidth significantly. If the new screen contains a lot of whitespace, it will depend of if vsplits are used or not: as long as there is no vsplits, ce is used to cheaply clear the rest of the line, so full-screen clear is not needed to reduce bandwith. However a left vsplit currently needs to be padded with whitespace all the way to the separator. It is possible ec (clear N chars) can be used to reduce bandwidth here if this is a problem. (All of this assumes that one doesn't set Normal guibg=... on a non-BCE terminal, if you do you are doomed regardless of this change). Slow can also mean that drawing pixels on the screen is slow. E-ink screens is a recent example. Avoiding clearing and redrawing the unchanged part of the screen will always improve performance in these cases.
* fix warning: null pointer dereferenceJustin M. Keyes2018-10-21
| | | | Found by clang scan-build 5.0
* vim-patch:8.1.0466: autocmd test failsJan Edmund Lazo2018-10-08
| | | | | | Problem: Autocmd test fails. Solution: Do call inchar() when flushing typeahead. https://github.com/vim/vim/commit/6a2633b00bb00bcf0d994f08d1c54ace2c221b58
* add func_attr_printf in :MichaHoffmann2018-09-24
| | | | | | | | | | | | | | | | | | | | | | log.c message.c strings.c fixed some printf warnings in: src/nvim/undo.c src/nvim/eval.c src/nvim/eval/encode.c src/nvim/eval/typval.c src/nvim/ex_getln.c src/nvim/fileio.c src/nvim/lua/executor.c src/nvim/main.c src/nvim/regexp_nfa.c src/nvim/shada.c src/nvim/spellfile.c src/nvim/tui/terminfo.c src/nvim/garray.h
* lintJan Edmund Lazo2018-09-21
|
* vim-patch:8.0.1215: newer gcc warns for implicit fallthroughJan Edmund Lazo2018-09-20
| | | | | | Problem: Newer gcc warns for implicit fallthrough. Solution: Consistently use a FALLTHROUGH comment. (Christian Brabandt) https://github.com/vim/vim/commit/2f40d129bf45cd35976e4120336ae6d504f5a5dd
* Refactor: Remove occurences of mb_char2bytesZviRackover2018-09-09
|
* Remove has_mbytes from lines local to parent commitZviRackover2018-08-31
|
* Refactor: remove mb_ptr2len_len, mb_ptr2cells and mb_ptr2cells_lenZviRackover2018-08-31
| | | | Remove occurences of these macros.
* globals: cmd_silent is boolJan Edmund Lazo2018-08-29
|
* vim-patch:8.0.1468: illegal memory access in del_bytes()Jan Edmund Lazo2018-08-24
| | | | | | Problem: Illegal memory access in del_bytes(). Solution: Check for negative byte count. (Christian Brabandt, closes vim/vim#2466) https://github.com/vim/vim/commit/191f18bad0b5c48afa05c3e8a00f3ced993f6a38
* style: fixing minor issues noted in code review.ZviRackover2018-08-06
|
* lint: clean-up after parent commitZviRackover2018-08-06
|
* Remove all occurences of the mb_ptr2char macroZviRackover2018-08-06
| | | | | | | First step towards implemening issue #7401. The same can be done for all deprecated mb_ functions in follow-up patches.
* ui: use line-based rather than char-based updates in screen.cBjörn Linse2018-07-21
| | | | | | | | | | | | | Add ext_newgrid and ext_hlstate extensions. These use predefined highlights and line-segment based updates, for efficiency and simplicity.. The ext_hlstate extension in addition allows semantic identification of builtin and syntax highlights. Reimplement the old char-based updates in the remote UI layer, for compatibility. For the moment, this is still the default. The bulitin TUI uses the new line-based protocol. cmdline uses curwin cursor position when ext_cmdline is active.
* vim-patch: finish port of 8.0.0{654,663,667}Jan Edmund Lazo2018-07-07
| | | | | Fix ex_function so that :endfunction passes the test. Remove variables, added in 60c025267265ba4bfc2abd34ea02b13bd5c0e63f.
* vim-patch:8.0.0468: g< after aborting an Ex command (#7941)KunMing Xie2018-06-21
| | | | | | | | Problem: After aborting an Ex command g< does not work. (Marcin Szamotulski) Solution: Postpone clearing scrollback messages to until the command line has been entered. Also fix that the screen isn't redrawn if after g< the command line is cancelled. https://github.com/vim/vim/commit/f2405ed2321da4a879fe0b0703af780fc0432c63
* vim-patch:8.0.0451: some macros are in lower caseJan Edmund Lazo2018-06-12
| | | | | | | Problem: Some macros are in lower case. Solution: Make a few more macros upper case. Avoid lower case macros use an argument twice. https://github.com/vim/vim/commit/91acfffc1e6c0d8c2abfb186a0e79a5bf19c3f3f
* Merge #7679 'startup: treat stdin as text instead of commands'Justin M. Keyes2018-06-10
|\
| * lintJustin M. Keyes2018-06-04
| |
* | vim-patch:8.0.0520: using a function pointer while the function is known (#8513)KunMing Xie2018-06-10
| | | | | | | | | | | | | | Problem: Using a function pointer instead of the actual function, which we know. Solution: Change mb_ functions to utf_ functions when already checked for Unicode. (Dominique Pelle, closes vim/vim#1582) https://github.com/vim/vim/commit/ace95989ed81929a84e205b26d0972cb9d6b4b19
* | vim-patch:8.0.0466: still macros that should be all-caps (#8510)Jan Edmund Lazo2018-06-10
|/ | | | | Problem: There are still a few macros that should be all-caps. Solution: Make a few more macros all-caps. https://github.com/vim/vim/commit/8820b48654b62472821d9b155fe03ab7ac13a05c
* Merge #8218 'Fix errors reported by PVS'Justin M. Keyes2018-04-27
|\ | | | | closes #4983
| * message: Fix PVS/V547: c is never equal to KS_ZEROZyX2018-04-15
| | | | | | | | | | | | | | | | | | | | | | | | | | Since `c` there is a result of evaluating `TO_SPECIAL` macros it may be only one of the following three things: 1. K_SPECIAL 2. K_ZERO (note: not KS_ZERO) 3. negative integer resulting from evaluating TERMCAP2KEY macro. All variants here are negative and thus fail next !IS_SPECIAL(c) check (negative is special). If `c` was really NUL it would fall into the `!IS_SPECIAL(c)` block and use whatever character is third in `<80>{a}{b}` combo. For `<Nul>` it is X (`<80><ff>X`).
* | Merge branch 'master' into s-dash-stdinb-r-o-c-k2018-04-14
|\|
| * msg: do not scroll entire screen (#8088)Björn Linse2018-03-31
| |
| * vim-patch:8.0.0184: fix ex-mode exit code #7943sohnryang2018-03-24
| | | | | | | | | | | | | | | | | | Problem: When in Ex mode and an error is caught by try-catch, Vim still exits with a non-zero exit code. Solution: Don't set ex_exitval when inside a try-catch. (partly by Christian Brabandt) https://github.com/vim/vim/commit/2b7bc567b9238aaac682236cb4f727d0376e1302
| * message: don't output unprintable chars to screenBjörn Linse2018-03-04
| | | | | | | | fixes #7586 #8070
| * vim-patch:8.0.0074Michael Schupikov2017-12-15
| | | | | | | | | | | | | | | | | | | | Problem: Cannot make Vim fail on an internal error. Solution: Add IEMSG() and IEMSG2(). (Domenique Pelle) Avoid reporting an internal error without mentioning where. https://github.com/vim/vim/commit/95f096030ed1a8afea028f2ea295d6f6a70f466f Signed-off-by: Michael Schupikov <michael@schupikov.de>
| * msg_outtrans_special(): handle NULLJustin M. Keyes2017-12-05
| | | | | | | | This is convenient for terminfo_info_msg().
| * msg_outtrans_special(): `const` some stringsJustin M. Keyes2017-12-05
| |
| * str2specialbuf(): fix comparisonJustin M. Keyes2017-12-05
| | | | | | | | regression by 832c158a663c
* | Merge branch 'master' into s-dash-stdinZyX2017-12-03
|\|