summaryrefslogtreecommitdiffstats
path: root/src/terminal.c
AgeCommit message (Collapse)Author
2024-03-16patch 9.1.0184: Cursor pos wrong when clicking with conceal and wrapv9.1.0184zeertzjq
Problem: Cursor position wrong when clicking with conceal and wrap. Solution: Use the virtual column of the last char for ScreenCols[] in boguscols. Remove use of MAXCOL in ScreenCols[]. Rename third argument of wlv_screen_line() to "clear_end" as that's clearer what it does (zeertzjq). related: 14192 closes: #14200 Signed-off-by: zeertzjq <zeertzjq@outlook.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-01-04patch 9.1.0006: is*() and to*() function may be unsafev9.1.0006Keith Thompson
Problem: is*() and to*() function may be unsafe Solution: Add SAFE_* macros and start using those instead (Keith Thompson) Use SAFE_() macros for is*() and to*() functions The standard is*() and to*() functions declared in <ctype.h> have undefined behavior for negative arguments other than EOF. If plain char is signed, passing an unchecked value from argv for from user input to one of these functions has undefined behavior. Solution: Add SAFE_*() macros that cast the argument to unsigned char. Most implementations behave sanely for negative arguments, and most character values in practice are non-negative, but it's still best to avoid undefined behavior. The change from #13347 has been omitted, as this has already been separately fixed in commit ac709e2fc0db6d31abb7da96f743c40956b60c3a (v9.0.2054) fixes: #13332 closes: #13347 Signed-off-by: Keith Thompson <Keith.S.Thompson@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-10-14patch 9.0.2025: no cmdline completion for ++opt argsv9.0.2025Yee Cheng Chin
Problem: no cmdline completion for ++opt args Solution: Add cmdline completion for :e ++opt=arg and :terminal [++options] closes: #13319 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Yee Cheng Chin <ychin.git@gmail.com>
2023-09-21patch 9.0.1927: patch 1916 (fixed terminal size) not optimalv9.0.1927Christian Brabandt
Problem: patch 1916 (fixed terminal size) not optimal Solution: Add defines to make it easier changeable later Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-09-19patch 9.0.1916: Crash when allocating large terminal screenv9.0.1916Christian Brabandt
Problem: Crash when allocating large terminal screen Solution: Don't allow values > 1000 for terminal screen columns and rows closes: #13126 Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-08-11patch 9.0.1687: mapset() not properly handling script IDv9.0.1687zeertzjq
Problem: mapset() not properly handling script ID Solution: replace_termcodes() may accept a script ID closes: #12699 closes: #12697 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: zeertzjq <zeertzjq@outlook.com>
2023-05-20patch 9.0.1572: error messages are not translatedv9.0.1572Bram Moolenaar
Problem: Error messages are not translated. Solution: Add _().
2023-05-05patch 9.0.1509: error message lacks mentioning the erroneous argumentv9.0.1509Bram Moolenaar
Problem: Error message lacks mentioning the erroneous argument. Solution: Specify the argument that the error is for.
2023-04-29patch 9.0.1498: in a terminal window the cursor may jump aroundv9.0.1498Bram Moolenaar
Problem: In a terminal window the cursor may jump around. (Kenny Stauffer) Solution: Do not move the cursor to the position for terminal-normal mode. (closes #12312)
2023-04-22patch 9.0.1479: small source file problems; outdated list of distrib. filesv9.0.1479Bram Moolenaar
Problem: Small source file problems; outdated list of distributed files. Solution: Small updates to source files and list of distributed files.
2023-02-21patch 9.0.1336: functions without arguments are not always declared properlyv9.0.1336Yegappan Lakshmanan
Problem: Functions without arguments are not always declared properly. Solution: Use "(void)" instead of "()". (Yegappan Lakshmanan, closes #12031)
2023-01-25patch 9.0.1245: code is indented more than necessaryv9.0.1245Yegappan Lakshmanan
Problem: Code is indented more than necessary. Solution: Use an early return where it makes sense. (Yegappan Lakshmanan, closes #11879)
2022-11-28patch 9.0.0965: using one window for executing autocommands is insufficientv9.0.0965Bram Moolenaar
Problem: Using one window for executing autocommands is insufficient. Solution: Use up to five windows for executing autocommands.
2022-11-25patch 9.0.0949: crash when unletting a variable while listing variablesv9.0.0949Bram Moolenaar
Problem: Crash when unletting a variable while listing variables. Solution: Disallow changing a hashtable while going over the entries. (closes #11435)
2022-11-24patch 9.0.0940: crash when typing a letter in a terminal windowv9.0.0940Bram Moolenaar
Problem: Crash when typing a letter in a terminal window. (Shane-XB-Qian) Solution: Use the "vterm" variable instead of getting the terminal pointer from the current buffer. (closes #11608)
2022-11-24patch 9.0.0934: various code formatting issuesv9.0.0934Bram Moolenaar
Problem: Various code formatting issues. Solution: Improve code formatting.
2022-11-23patch 9.0.0930: cannot debug the Kitty keyboard protocol with TermDebugv9.0.0930Bram Moolenaar
Problem: Cannot debug the Kitty keyboard protocol with TermDebug. Solution: Add Kitty keyboard protocol support to the libvterm fork. Recognize the escape sequences that the protocol generates. Add the 'keyprotocol' option to allow the user to specify for which terminal what protocol is to be used, instead of hard-coding this. Add recognizing the kitty keyboard protocol status.
2022-11-19patch 9.0.0912: libvterm with modifyOtherKeys level 2 does not match xtermv9.0.0912Bram Moolenaar
Problem: libvterm with modifyOtherKeys level 2 does not match xterm. Solution: Adjust key code escape sequences to be the same as what xterm sends in modifyOtherKeys level 2 mode. Check the value of no_reduce_keys before using it.
2022-11-02patch 9.0.0828: various typosv9.0.0828dundargoc
Problem: Various typos. Solution: Correct typos. (closes #11432)
2022-10-16patch 9.0.0774: the libvterm code is outdatedv9.0.0774Bram Moolenaar
Problem: The libvterm code is outdated. Solution: Include libvterm changes from revision 802 to 817. Revert some changes made for C89.
2022-10-15patch 9.0.0756: no autocmd event for changing text in a terminal windowv9.0.0756Shougo Matsushita
Problem: No autocmd event for changing text in a terminal window. Solution: Add TextChangedT. (Shougo Matsushita, closes #11366)
2022-10-13patch 9.0.0747: too many #ifdefsv9.0.0747Martin Tournoij
Problem: Too many #ifdefs. Solution: Gradudate the +cmdline_info feature. (Martin Tournoij, closes #11330)
2022-10-09patch 9.0.0708: :confirm does not work properly for a terminal bufferv9.0.0708Yee Cheng Chin
Problem: :confirm does not work properly for a terminal buffer. Solution: Handle :confirm for a terminal buffer differently. (Yee Cheng Chin, closes #11312)
2022-10-04patch 9.0.0657: too many #ifdefsv9.0.0657Martin Tournoij
Problem: Too many #ifdefs. Solution: Graduate the +cmdwin feature. Now the tiny and small builds are equal, drop the small build. (Martin Tournoij, closes #11268)
2022-09-01patch 9.0.0345: error message for list argument could be clearerv9.0.0345Bram Moolenaar
Problem: Error message for list argument could be clearer. Solution: Include the argument number. (Yegappan Lakshmanan, closes #11027)
2022-08-30patch 9.0.0335: checks for Dictionary argument often give a vague errorv9.0.0335Yegappan Lakshmanan
Problem: Checks for Dictionary argument often give a vague error message. Solution: Give a useful error message. (Yegappan Lakshmanan, closes #11009)
2022-08-21patch 9.0.0235: 'autoshelldir' does not work with chunked resposev9.0.0235Bram Moolenaar
Problem: 'autoshelldir' does not work with chunked respose. Solution: Collect chunks before parsing OSC 7. (closes #10949)
2022-08-14patch 9.0.0206: redraw flags are not named specificallyv9.0.0206Bram Moolenaar
Problem: Redraw flags are not named specifically. Solution: Prefix "UPD_" to the flags, for UPDate_screen().
2022-07-23patch 9.0.0063: too many type casts for dict_get functionsv9.0.0063Bram Moolenaar
Problem: Too many type casts for dict_get functions. Solution: Change the key argument from "char_u *" to "char *".
2022-07-04patch 9.0.0037: build errorv9.0.0037Bram Moolenaar
Problem: Build error. Solution: Add missing change.
2022-06-04patch 8.2.5055: statusline is not updated when terminal title changesv8.2.5055LemonBoy
Problem: Statusline is not updated when terminal title changes. Solution: Redraw the status line when the title changes. (issue #10425)
2022-05-29patch 8.2.5041: cannot close a terminal popup with "NONE" jobv8.2.5041Bram Moolenaar
Problem: Cannot close a terminal popup with "NONE" job. Solution: Adjust the conditions for whether a job is running. (closes #10498)
2022-05-26patch 8.2.5021: build fails with normal features and +terminalv8.2.5021Bram Moolenaar
Problem: Build fails with normal features and +terminal. (Dominique Pellé) Solution: Add #ifdefs. (closes #10484)
2022-05-20patch 8.2.4982: colors in terminal window are not 100% correctv8.2.4982LemonBoy
Problem: Colors in terminal window are not 100% correct. Solution: Use g:terminal_ansi_colors as documented. (closes #10429, closes #7227 closes #10347)
2022-05-09patch 8.2.4928: various white space and cosmetic mistakesv8.2.4928Bram Moolenaar
Problem: Various white space and cosmetic mistakes. Solution: Change spaces to tabs, improve comments.
2022-05-07patch 8.2.4911: the mode #defines are not clearly namedv8.2.4911Bram Moolenaar
Problem: The mode #defines are not clearly named. Solution: Prepend MODE_. Renumber them to put the mapped modes first.
2022-05-07patch 8.2.4909: MODE_ enum entries names are too genericv8.2.4909Bram Moolenaar
Problem: MODE_ enum entries names are too generic. Solution: use CH_MODE_.
2022-04-13patch 8.2.4745: using wrong flag for using bell in the terminalv8.2.4745Bram Moolenaar
Problem: Using wrong flag for using bell in the terminal. Solution: Change to use BO_TERM.
2022-04-13patch 8.2.4744: a terminal window can't use the bellv8.2.4744LemonBoy
Problem: A terminal window can't use the bell. Solution: Add bell support for the terminal window. (closes #10178)
2022-04-09patch 8.2.4723: the ModeChanged autocmd event is inefficientv8.2.4723LemonBoy
Problem: The ModeChanged autocmd event is inefficient. Solution: Avoid allocating memory. (closes #10134) Rename trigger_modechanged() to may_trigger_modechanged().
2022-04-04patch 8.2.4683: verbose check with dict_find() to see if a key is presentv8.2.4683Yegappan Lakshmanan
Problem: Verbose check with dict_find() to see if a key is present. Solution: Add dict_has_key(). (Yegappan Lakshmanan, closes #10074)
2022-02-25patch 8.2.4468: Coverity warns for uninitialized struct memberv8.2.4468Bram Moolenaar
Problem: Coverity warns for uninitialized struct member. Solution: Set color.index to zero.
2022-01-20patch 8.2.4157: terminal test fails because Windows sets the titlev8.2.4157ichizok
Problem: Terminal test fails because Windows sets the title. Solution: Add the "vterm_title" testing override and use it in the test. (Ozaki Kiichi, closes #9556)
2022-01-15patch 8.2.4099: Vim9: cannot use Vim9 syntax in mappingv8.2.4099Bram Moolenaar
Problem: Vim9: cannot use Vim9 syntax in mapping. Solution: Add <ScriptCmd> to use the script context for a command.
2022-01-08patch 8.2.4043: using int for second argument of ga_init2()v8.2.4043Bram Moolenaar
Problem: Using int for second argument of ga_init2(). Solution: Remove unnessary type cast (int) when using sizeof().
2022-01-05patch 8.2.4012: error messages are spread outv8.2.4012Bram Moolenaar
Problem: Error messages are spread out. Solution: Move the last error messages to errors.h.
2022-01-01patch 8.2.3977: error messages are spread outv8.2.3977Bram Moolenaar
Problem: Error messages are spread out. Solution: Move more error messages to errors.h.
2022-01-01patch 8.2.3967: error messages are spread outv8.2.3967Bram Moolenaar
Problem: Error messages are spread out. Solution: Move more errors to errors.h.
2021-12-31patch 8.2.3961: error messages are spread outv8.2.3961Bram Moolenaar
Problem: Error messages are spread out. Solution: Move more errors to errors.h.
2021-12-27patch 8.2.3914: various spelling mistakes in commentsv8.2.3914Dominique Pelle
Problem: Various spelling mistakes in comments. Solution: Fix the mistakes. (Dominique Pellé, closes #9416)