aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/screen.c
Commit message (Collapse)AuthorAge
* vim-patch:7.4.1147 (#5005)prollings2016-07-10
| | | | | | | Problem: Conflict for "chartab". (Kazunobu Kuriyama) Solution: Rename the global one to something less obvious. Move it into src/chartab.c. https://github.com/vim/vim/commit/88e8f9f14434a7cd538d0c159dc432bea869a5bd
* screen.c: Fix listchars hl for space/nbsp in visual mode.Yichao Zhou2016-05-20
|
* lintYichao Zhou2016-05-20
|
* Let the highlight of listchars override cursorlineYichao Zhou2016-05-20
| | | | Closes #3670
* Merge pull request #4628 from brcolow/vim-7.4.1101Justin M. Keyes2016-05-10
|\ | | | | vim-patch: 7.4.1101
| * vim-patch: 7.4.1101Michael Ennen2016-04-26
| | | | | | | | | | | | | | | | | | Problem: With 'rightleft' and concealing the cursor may move to the wrong position. Solution: Compute the column differently when 'rightleft' is set. (Hirohito Higashi) https://github.com/vim/vim/commit/e39b3d9fb4e4006684c33847d1ef6a0d742699dd
* | *: Fix new linter errorsZyX2016-05-01
|/ | | | Originally there were 128 new errors, so I thought this is a good idea to fix all of them. Of course, this commit also fixes many suppressed errors.
* Merge #4265 'vim-patch:7.4.925'.Justin M. Keyes2016-03-02
|\
| * vim-patch:7.4.925watiko2016-02-17
| | | | | | | | | | | | | | | | Problem: User may yank or put using the register being recorded in. Solution: Add the recording register in the message. (Christian Brabandt, closes vim/vim#470) https://github.com/vim/vim/commit/a0ed84a26897c994512873a895b9fc54e90c6845
* | bufhl: new mechanism for plugins to add highlights to a bufferBjörn Linse2016-02-23
|/
* Merge pull request #4234 from watiko/vim-7.4.977Justin M. Keyes2016-02-17
|\ | | | | vim-patch:7.4.{818,883,977}
| * vim-patch:7.4.977watiko2016-02-11
| | | | | | | | | | | | | | | | Problem: 'linebreak' does not work properly when using "space" in 'listchars'. Solution: (Hirohito Higashi, Christian Brabandt) https://github.com/vim/vim/commit/9bc01ebb957d2b30d57bd30d7aee6f1df2a336b0
* | vim-patch:7.4.792watiko2016-02-11
|/ | | | | | | Problem: Can only conceal text by defining syntax items. Solution: Use matchadd() to define concealing. (Christian Brabandt) https://github.com/vim/vim/commit/6561d52ecbe6e24d1b90403078cc8b76c53c42fc
* coverity/135004: Null pointer dereferencesNikolai Aleksandrovich Pavlov2016-02-03
|
* tabline: Switch to functions, handle different click typesZyX2016-02-01
|
* tabline: Add %[] atom to the tabline, for random commands on clickZyX2016-02-01
| | | | Currently untested and undocumented.
* vim-patch:7.4.949watiko2016-01-28
| | | | | | | | Problem: When using 'colorcolumn' and there is a sign with a fullwidth character the highlighting is wrong. (Andrew Stewart) Solution: Only increment vcol when in the right state. (Christian Brabandt) https://github.com/vim/vim/commit/32a214e78df0120f92fe049eab1385c60f0cdb0b
* vim-patch:7.4.639watiko2016-01-28
| | | | | | | Problem: Combination of linebreak and conceal doesn't work well. Solution: Fix the display problems. (Christian Brabandt) https://github.com/vim/vim/commit/8fc6bc71266e342d339c851b3ee472357f917597
* vim-patch:7.4.722Jurica Bradaric2016-01-24
| | | | | | | Problem: 0x202f is not recognized as a non-breaking space character. Solution: Add 0x202f to the list. (Christian Brabandt) https://github.com/vim/vim/commit/73284b973a013692dd1055cf210f3138a7f3c497
* Merge pull request #4012 from jbradaric/vim-7.4.729Justin M. Keyes2016-01-21
|\ | | | | vim-patch:7.4.729
| * screen: Fix linting errorsJurica Bradaric2016-01-19
| |
| * vim-patch:7.4.729Jurica Bradaric2016-01-19
| | | | | | | | | | Problem: Occasional crash with 'list' set. Solution: Fix off-by-one error. (Christian Brabandt)
* | vim-patch:7.4.603watiko2016-01-20
|/ | | | | | | | | Problem: 'foldcolumn' may be set such that it fills the whole window, not leaving space for text. Solution: Reduce the foldcolumn width when there is not sufficient room. (idea by Christian Brabandt) https://github.com/vim/vim/commit/1c93429c48c59e22aa8e9cd76f102063799db938
* vim-patch:7.4.721Michael Ennen2016-01-13
| | | | | | | | Problem: When 'list' is set Visual mode does not highlight anything in empty lines. (mgaleski) Solution: Check the value of lcs_eol in another place. (Christian Brabandt) https://github.com/vim/vim/commit/d59c099120919d2d77b431308e390f86c594c825
* screen.c: Remove out of date commentMichael Reed2016-01-07
| | | | This was forgotten in 10b2a0e52980aba2d1efc072368fcaf1f33e7512
* Merge pull request #3851 from brcolow/vim-7.4.682Justin M. Keyes2015-12-16
|\ | | | | vim-patch:7.4.682
| * vim-patch:7.4.682brcolow2015-12-16
| | | | | | | | | | | | | | | | Problem: The search highlighting and match highlighting replaces the cursorline highlighting, this doesn't look good. Solution: Combine the highlighting. (Yasuhiro Matsumoto) https://github.com/vim/vim/commit/09deeb7c945d2677722df5b40959f97b646b6092
* | vim-patch:7.4.665, 671Shougo Matsushita2015-12-16
|/ | | | | | | | | | | | | Problem: 'linebreak' does not work properly with multi-byte characters. Solution: Compute the pointer offset with mb_head_off(). (Yasuhiro Matsumoto) https://github.com/vim/vim/commit/76feaf1bfed170d2fc5c34e7e758885554ecc794 Problem: Warning for shadowing a variable. Solution: Rename off to mb_off. (Kazunobu Kuriyama) https://github.com/vim/vim/commit/4df702999d14955255fcdfb820511767dcfec463
* src/*: Remove `VIM - Vi improved ...` headerMichael Reed2015-11-27
| | | | | | | | | | | | | | | | | | | Regarding the individual items in the header: `Vim - Vi improved by Bram Moolenar` Bram Moolenar is already mentioned throughout the documentation, as well as the intro screen. `:help uganda` It's already shown to all users who don't use `shortmess+=I` upon starting nvim, and is already placed prominently in help.txt, i.e., `:help` run with no arguments. `:help credits` Already mentioned near the top of help.txt. `README.md` Already mentioned in develop.txt.
* Remove unnecessary includes for errno.hRui Abreu Ferreira2015-11-25
|
* src: README.txt -> README.mdMichael Reed2015-11-23
| | | | | The former no longer exists in this repo; see the top of src/nvim/README.md.
* win_T.w_cline_folded from int to boolNicolas Cornu2015-09-07
|
* screen.c: remove `screen_char_attr` #3235Justin M. Keyes2015-08-25
| | | | | | | screen_char_attr is always 0, it was obviated by 3baba1e7bc6698e6bc9f1d37fce88b30d6274bc9. References #1889
* vim-patch:7.4.667 #3043Marco Hinz2015-07-18
| | | | | | | | | | | | Problem: 'colorcolumn' isn't drawn in a closed fold while 'cursorcolumn' is. (Carlos Pita) Solution: Make it consistent. (Christian Brabandt) Original patch: https://github.com/vim/vim/commit/v7-4-667 Discussion: https://groups.google.com/forum/#!topic/vim_dev/Lidb7s4xn3Q
* vim-patch:7.4.719 #2817Andrea Cedraro2015-06-14
| | | | | | | Problem: Overflow when adding MAXCOL to a pointer. Solution: Subtract pointers instead. (James McCoy) https://github.com/vim/vim/commit/v7-4-719
* vim-patch:7.4.579 #2652David Bürgin2015-05-26
| | | | | | | | | Problem: Wrong cursor positioning when 'linebreak' is set and lines wrap. Solution: (Christian Brabandt) https://github.com/vim/vim/commit/v7-4-579 See https://groups.google.com/d/msg/vim_dev/Eh3N9L68Ajw/4dB5x1RTQJQJ
* Cleanup misc.Michael Reed2015-05-18
| | | | | | | | | | | | | | | Regarding debugger.txt (which was Spotted by @Hettomei): The third section was empty, and the second section is very outdated. Nvim doesn't have things like Balloon Evalutation and Sun Visual workshop integration, so just remove the section. Regarding everything else: - term.[ch] and term_defs.h don't exist anymore, so remove refs to them - Add ttybuiltin to vim_diff.txt. It should have been done before, but vim_diff.txt didn't exist when ttybuiltin was removed (done in 3baba1e7bc6698e6bc9f1d37fce88b30d6274bc9,) Helped-by: Justin M. Keyes <justinkz@gmail.com>
* vim-patch:7.4.562 #2593David Bürgin2015-05-16
| | | | | | | Problem: Segfault with wide screen and error in 'rulerformat'. (Ingo Karkat) Solution: Check there is enough space. (Christian Brabandt) https://github.com/vim/vim/commit/v7-4-562
* vim-patch:7.4.587 #2622David Bürgin2015-05-13
| | | | | | | Problem: Conceal does not work properly with 'linebreak'. (cs86661) Solution: Save and restore boguscols. (Christian Brabandt) https://github.com/vim/vim/commit/v7-4-587
* src: Misc. cleanupMichael Reed2015-05-01
| | | | | These macros (and global) haven't been used since 3baba1e7bc6698e6bc9f1d37fce88b30d6274bc9
* Enable -Wconversion: normal.c.Eliseo Martínez2015-04-27
| | | | | | | | | | | | | | | | | | | | | | | | Refactor summary: - extern int opcount --> extern long opcount - bool find_decl(..., int len, ...) --> bool find_decl(..., size_t len, ...) * int find_ident_under_cursor(...) --> size_t find_ident_under_cursor(...) - int find_ident_at_pos(...) --> size_t find_ident_at_pos(...) - int modify_fname(..., int *usedlen, ..., int *fnamelen) --> int modify_fname(..., size_t *usedlen, ..., size_t *fnamelen) * char_u *eval_vars(..., int *usedlen, ...) --> char_u *eval_vars(..., size_t *usedlen, ...) - int find_cmdline_var(..., int *usedlen) --> ssize_t find_cmdline_var(..., size_t *usedlen) - static char_u *repl_cmdline(..., int srclen, ...) --> static char_u *repl_cmdline(..., size_t srclen, ...) - bool get_visual_text(..., int *lenp) --> bool get_visual_text(..., size_t *lenp) * char_u *find_file_name_in_path(..., int len, ...) --> char_u *find_file_name_in_path(..., size_t len, ...) - static char_u *eval_includeexpr(..., int len) --> static char_u *eval_includeexpr(..., size_t len) - char_u *find_file_in_path(..., int len, ...) --> char_u *find_file_in_path(..., size_t len, ...) * char_u *find_file_in_path_option(..., int len, ...) --> char_u *find_file_in_path_option(..., size_t len, ...) - char_u *find_directory_in_path(..., int len, ...) --> char_u *find_directory_in_path(..., size_t len, ...) * int spell_move_to(...) --> size_t spell_move_to(...) - int spell_check(...) --> size_t spell_check(...) - static int spell_bad_len --> static size_t spell_bad_len - void find_pattern_in_path(..., int len, ...) --> void find_pattern_in_path(..., size_t len, ...) Helped-by: Justin M. Keyes <justinkz@gmail.com>
* vim-patch:7.4.710David Bürgin2015-04-27
| | | | | | | | | Problem: It is not possible to make spaces visibible in list mode. Solution: Add the "space" item to 'listchars'. (David Bürgin, issue 350) https://github.com/vim/vim/releases/tag/v7-4-710 Closes #2485.
* Replace VIM_ISDIGIT() and vim_isdigit() with ascii_isdigit() defined in ascii.hFelipe Oliveira Carvalho2015-04-24
|
* Replace vim_iswhite with ascii_iswhite() defined in ascii.hFelipe Oliveira Carvalho2015-04-24
|
* memory: Add `free` wrapper and refactor project to use itThiago de Arruda2015-04-13
| | | | | | We already use wrappers for allocation, the new `xfree` function is the equivalent for deallocation and provides a way to fully replace the malloc implementation used by Neovim.
* terminal: New module that implements a terminal emulatorThiago de Arruda2015-03-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit integrates libvterm with Neovim and implements a terminal emulator with nvim buffers as the display mechanism. Terminal buffers can be created using any of the following methods: - Opening a file with name following the "term://[${cwd}//[${pid}:]]${cmd}" URI pattern where: - cwd is the working directory of the process - pid is the process id. This is just for use in session files where a pid would have been assigned to the saved buffer title. - cmd is the command to run - Invoking the `:terminal` ex command - Invoking the `termopen` function which returns a job id for automating the terminal window. Some extra changes were also implemented to adapt with terminal buffers. Here's an overview: - The `main` function now sets a BufReadCmd autocmd to intercept the term:// URI and spawn the terminal buffer instead of reading the file. - terminal buffers behave as if the following local buffer options were set: - `nomodifiable` - `swapfile` - `undolevels=-1` - `bufhidden=hide` - All commands that delete buffers(`:bun`, `:bd` and `:bw`) behave the same for terminal buffers, but only work when bang is passed(eg: `:bwipeout!`) - A new "terminal" mode was added. A consequence is that a new set of mapping commands were implemented with the "t" prefix(tmap, tunmap, tnoremap...) - The `edit` function(which enters insert mode) will actually enter terminal mode if the current buffer is a terminal - The `put` operator was adapted to send data to the terminal instead of modifying the buffer directly. - A window being resized will also trigger a terminal resize if the window displays the terminal.
* ui: Replace cursor_{on,off} by busy_{stop,start}Thiago de Arruda2015-03-15
| | | | | | | | | | | | | | | | | | | | | | | | Switching cursor off is only necessary in two occasions: - When redrawing to avoid terminal flickering - When the editor is busy The first can now be handled by the TUI, so most calls to ui_cursor_off can be removed from the core. So, before this commit it was only necessary to switch the cursor off to notify the user that nvim was running some long operation. Now the cursor_{on,off} functions have been replaced by busy_{stop,start} which can be handled in a UI-specific way(turning the cursor off or showing a busy indicator, for example). To make things even more simpler, nvim is always busy except when waiting for user input or other asynchronous events: It automatically switches to a non-busy state when the event loop is about to be entered for more than 100 milliseconds. `ui_busy_start` can be called when its not desired to change the busy state in the event loop (As its now done by functions that perform blocking shell invocations).
* Remove redundant castsAnton Ovchinnikov2015-03-09
|
* Macro cleanup: UNICODE16Michael Reed2015-03-05
| | | | Fix clint warnings as well.
* Fix warnings: screen.c: screen_puts_len(): Various (4): FP/MI.Eliseo Martínez2015-02-21
| | | | | | | | | | | | | | | | Problems : Assigned value is garbage or undefined @ 5363. Result of operation is garbage or undefined @ 5356. Result of operation is garbage or undefined @ 5320. Result of operation is garbage or undefined @ 5192. Diagnostic : False positives / Multithreading issues. Rationale : Suggested error paths contain incoherent values for has_mbyte, enc_utf8, and enc_dbcs, which should always hold the relationship has_mbyte = enc_utf8 || enc_dbcs, with enc_utf8 and enc_dbcs being mutually exclusive. Asserting on the globals, though, fails, because checker believes they could be modified by other threads in between. Resolution : Make local copy of globals and assert relationship on them.