aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/terminal.c
Commit message (Collapse)AuthorAge
...
| * chore: move check for paste sizeDylan Armstrong2021-04-02
| |
* | api: allow open non-current buffer as terminal (+ xmas bonus)Björn Linse2021-03-12
| | | | | | | | vim.api.nvim_chan_send(vim.api.nvim_open_term(0), io.open("/path/to/smile.cat", "r"):read("*a"))
* | state: throttle batched event processing when input is availableBjörn Linse2021-03-08
|/ | | | | | | before, calling vim.schedule() from inside an event would execute the scheduled callback immediately after this event without checking for user input in between. Break event processing whenever user input or an interrupt is available.
* Add termpastefilter optionerw72021-02-04
| | | | | Change to specify a character to be filtered as an option when pasting on the terminal.
* Change to filter control characters when pasting a terminal windowerw72021-02-04
| | | | | | | Change to filter the following control characters in the same way as xterm. \x00-\x07, \x0b-\x0c, \x0e-\x1f
* Add support for bracketed paste mode in terminal windowserw72021-02-04
|
* api: add API for themesBjörn Linse2020-11-01
| | | | | | | | | | co-author: hlpr98 <hlpr98@gmail.com> (dict2hlattrs function) orange is sus?? NOVEMBER DAWN erase the lie that is redraw_later()
* terminal: fix terminal attribute overflowerw72020-07-29
| | | | fixes #11548
* terminal: preserve mode when using <Cmd>wincmd in terminal mode (#12254)Ghjuvan Lacambre2020-06-22
|
* terminal: disable 'scrolloff' (fixes flicker)Justin M. Keyes2020-05-04
| | | | | | | | | | Besides the special-case in get_scrolloff_value(), it makes sense for 'scrolloff' and 'sidescrolloff' to reflect the correct values (for plugins, scripts, …). ref 53d607af9c53accfd634435908fb79061f1212b9 ref #11915 ref #12230
* Merge #12155 ':ls filter by terminal, lastused'Justin M. Keyes2020-04-26
|\
| * vim-patch:8.0.1651: cannot filter :ls output for terminal buffersRob Pilling2020-04-19
| | | | | | | | | | | | Problem: Cannot filter :ls output for terminal buffers. Solution: Add flags for terminal buffers. (Marcin Szamotulski, closes vim/vim#2751) https://github.com/vim/vim/commit/0751f51a5b428805a8c1e9fe529693d032bec991
* | terminal: Fix mouse coordinates issue (#12158)erw72020-04-21
|/ | | | | | Offsets of window were not taken into account when sending mouse coordinates to the terminal. Therefore, when nu or rnu is set, the mouse coordinates sent to the terminal were not correct. Change it to send the correct coordinates by subtract window offset from col.
* terminal: preserve support for g:terminal_color_X = "#1234ab"Björn Linse2019-11-02
|
* terminal: enable pass through indexed colors to TUIBjörn Linse2019-11-02
|
* Remove "highbright bold" conversion. Fixes #11190Björn Linse2019-10-10
| | | | | | When using TUI host terminal should take care of this (regardless if 'termguicolors' is active or not). For GUI the behavior doesn't make sense (GUI should display bold attr as bold always).
* autocmds: TermEnter, TermLeave #8550Usama Hameed2019-09-14
| | | fix #8428
* syntax, TUI: support "strikethrough"Jaskaran Singh2019-09-13
| | | | | | fix #3436 Includes: vim-patch:8.0.1038: strike-through text not supported
* terminal: fix rgb rendering of palette colorsBjörn Linse2019-09-10
| | | | | | | | | | simplify handling of default colors nvim is always true color internally, remove ui_rgb_attached() check. Fix "runtime termguicolors" test. The test actually reflected broken behavior in (parent) nvim: nvim_ui_set_option("rgb", true) was not respected by existing :terminal instances, so all 16-palette colors became dark blue.
* lint / test groupingDaniel Hahler2019-09-10
|
* Changes for new VTermColor structPaul "LeoNerd" Evans2019-09-10
|
* paste: WIP #4448Justin M. Keyes2019-08-27
|
* ui: transmit "blend=" property of highlight attributesBjörn Linse2019-08-18
|
* Merge pull request #10171 from blueyed/vim-8.1.1318Daniel Hahler2019-08-09
|\ | | | | vim-patch:8.1.1318: code for text changes is in a "misc" file
| * includesDaniel Hahler2019-08-07
| |
* | :terminal : update buffer when switching tabpage #10700Adrien Fabre2019-08-09
|/ | | fix #10696
* Merge pull request #9883 from bfredl/termredrawBjörn Linse2019-05-14
|\ | | | | make terminal state redraw like any other state
| * ui/terminal: make terminal state redraw like any other stateBjörn Linse2019-05-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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).
* | terminal.c: remove unnecessary macroJustin M. Keyes2019-05-02
| |
* | Reset stop_insert_mode in terminal_enter rather than terminal_checkglacambre2019-04-20
|/ | | | | | | | | | | Problem: Using `:stopinsert` while in normal mode in a terminal buffer prevents neovim from entering insert mode. Solution: Move `stop_insert_mode = false` from terminal_check to terminal_enter to be consistent with edit.c, as suggested by bfredl in #9889. Closes https://github.com/neovim/neovim/issues/9889.
* :stopinsert should leave terminal-mode #9856glacambre2019-04-08
| | | | | | | | | Problem: Calling :stopinsert from RPC while in terminal-mode does not go back to normal-mode. Solution: Implement a check() handler for state_enter(), adapted from insert_check(). Fix #7807
* coverity/183543: Null pointer dereference #9836Justin M. Keyes2019-04-03
| | | Window may disappear, see e7e2115de5c1.
* keymap, terminal: more keycodes #9810Olivier G-R2019-03-31
| | | | | | | | | - input: recognize <kEqual>, <kComma> - terminal.c: If we need to support function key, a change must be made in libvtermkey. Currently, it emulates strictly VT220 terminal, and returning numeric value in 'normal' mode is the expected behaviour. closes #9810
* buffer: use aucmd_prepbuf() instead of switch_to_win_for_buf()Björn Linse2019-03-05
|
* terminal: Fix potential invalid local 'scrollback' (#9605)Justin M. Keyes2019-02-17
| | | | | | TermOpen autocmd may set local 'scrollback' to -1, this needs to be adjusted as in on_scrollback_option_changed(). fixes #9588 (OOM, out of memory)
* options: set 'scrollback' to -1 by default #9563Marco Hinz2019-02-04
| | | | | | | | | Makes the 'scrollback' option more consistent (same default for all buffers) and future-proof. - Default to -1 for all buffers, but treat it as an implementation detail. - Document range of 1 - 100_000. - New terminal buffer by default sets scrollback=10_000 if the global default is -1. - Existing terminal buffer: On entering terminal-mode or on refresh, if the user explicitly did `:set[local] scbk=-1`, the local value goes to 100_000 (max). (This is undocumented on purpose. Users should work with explicit values in the range of 1-100_000.)
* :terminal : set topline based on window height #8325Andrew Pyatkov2019-01-29
| | | | | closes #8324 closes #8556
* terminal: handle size when switching buffers in windowBjörn Linse2019-01-27
|
* window/ui: reorganize size variables, fix terminal window size with multigrid.Björn Linse2019-01-27
| | | | | | | wp->w_height_inner now contains the "inner" size, regardless if the window has been drawn yet or not. It should be used instead of wp->w_grid.Rows, for stuff that is not directly related to accessing the allocated grid memory, such like cursor movement and terminal size
* terminal: simplify sizing logicBjörn Linse2019-01-27
|
* ui: multigrid mouse supportBjörn Linse2019-01-20
|
* build: enable -WshadowJustin M. Keyes2019-01-02
| | | | | | | | | | Note about shada.c: - shada_read_next_item_start was intentionally shadowing `unpacked` and `i` because many of the macros (e.g. ADDITIONAL_KEY) implicitly depended on those variable names. - Macros were changed to parameterize `unpacked` (but not `i`). Macros like CLEAR_GA_AND_ERROR_OUT do control-flow (goto), so any other approach is messy.
* highlight: Fix missing .rgb_sp_color in initializers (#9287)Justin M. Keyes2018-11-30
| | | | | | | terminal_get_line_attributes() had this bug for a long time, though it likely had no effect visible to users. ref #9028 ref 60f845ca55a1
* refactor: Rename get_term_attr_entryJustin M. Keyes2018-11-27
| | | | | Rename get_term_attr_entry to hl_get_term_attr, similar to hl_get_syn_attr, hl_get_ui_attr.
* terminal: Redraw statusline on title change #8973Josh Triplett2018-09-25
| | | | | | | | The statusline may incorporate b:term_title, so redraw it when that title changes. Introduce a new function status_redraw_buf to redraw windows associated with the current buffer.
* replace fallthrough comment with macroJan Edmund Lazo2018-09-21
| | | | Follow-up of vim-patch:8.0.1215
* highlight: refactor to use stateful representationBjörn Linse2018-07-21
| | | | | This allows us to keep track of the source higlight groups, and not only the final combined highlights.
* highlight: extract low-level highlight logic from syntax, uiBjörn Linse2018-07-21
|
* API: emit nvim_buf_lines_event from :terminal #8616KillTheMule2018-07-01
| | | | closes #8575
* Merge #7917 'API: buffer updates'Justin M. Keyes2018-06-08
|\