0
0
mirror of https://github.com/vim/vim.git synced 2025-07-04 23:07:33 -04:00

334 Commits

Author SHA1 Message Date
Bram Moolenaar
aa5df7e312 patch 8.1.0870: Vim doesn't use the new ConPTY support in Windows 10
Problem:    Vim doesn't use the new ConPTY support in Windows 10.
Solution:   Use ConPTY support, if available. (Nobuhiro Takasaki, closes #3794)
2019-02-03 14:53:10 +01:00
Bram Moolenaar
9172d23d05 patch 8.1.0847: may use terminal after it was cleaned up
Problem:    May use terminal after it was cleaned up.
Solution:   Use the job pointer.
2019-01-29 23:06:54 +01:00
Bram Moolenaar
2a4857a1fc patch 8.1.0845: having job_status() free the job causes problems
Problem:    Having job_status() free the job causes problems.
Solution:   Do not actually free the job or terminal yet, put it in a list and
            free it a bit later. Do not use a terminal after checking the job
            status.  (closes #3873)
2019-01-29 22:29:07 +01:00
Bram Moolenaar
1ecc5e4a99 patch 8.1.0824: SunOS/Solaris has a problem with ttys
Problem:    SunOS/Solaris has a problem with ttys.
Solution:   Add mch_isatty() with extra handling for SunOS. (Ozaki Kiichi,
            closes #3865)
2019-01-26 15:12:55 +01:00
Bram Moolenaar
113e10721f patch 8.1.0785: depending on the configuration some functions are unused
Problem:    Depending on the configuration some functions are unused.
Solution:   Add more #ifdefs, remove unused functions. (Dominique Pelle,
            closes #3822)
2019-01-20 15:30:40 +01:00
Bram Moolenaar
617d7ef046 patch 8.1.0760: no proper test for using 'termencoding'
Problem:    No proper test for using 'termencoding'.
Solution:   Add a screendump test.  Fix using double width characters in a
            screendump.
2019-01-17 13:04:30 +01:00
Bram Moolenaar
f9e3e09fdc patch 8.1.0743: giving error messages is not flexible
Problem:    Giving error messages is not flexible.
Solution:   Add semsg().  Change argument from "char_u *" to "char *", also
            for msg() and get rid of most MSG macros. (Ozaki Kiichi, closes
            #3302)  Also make emsg() accept a "char *" argument.  Get rid of
            an enormous number of type casts.
2019-01-13 23:38:42 +01:00
Bram Moolenaar
f2d79fa92d patch 8.1.0685: get_buf_tv() is named inconsistently
Problem:    get_buf_tv() is named inconsistently.
Solution:   Rename it to tv_get_buf(). (Yegappan Lakshmanan, closes #3759)
2019-01-03 22:19:27 +01:00
Bram Moolenaar
06d6260323 patch 8.1.0645: Coverity warns for possible use of NULL pointer
Problem:    Coverity warns for possible use of NULL pointer.
Solution:   Check return value of vterm_obtain_screen().
2018-12-27 21:27:03 +01:00
Bram Moolenaar
cd929f7ba8 patch 8.1.0633: crash when out of memory while opening a terminal window
Problem:    Crash when out of memory while opening a terminal window.
Solution:   Handle out-of-memory more gracefully.
2018-12-24 21:38:45 +01:00
Bram Moolenaar
528ccfbaa1 patch 8.1.0618: term_getjob() does not return v:null as documented
Problem:    term_getjob() does not return v:null as documented.
Solution:   Do return v:null. (Damien)  Add a test.
2018-12-21 20:55:22 +01:00
Bram Moolenaar
d155d7a851 patch 8.1.0615: get_tv function names are not consistent
Problem:    Get_tv function names are not consistent.
Solution:   Rename to tv_get.
2018-12-21 16:04:21 +01:00
Bram Moolenaar
a79fd56923 patch 8.1.0611: crash when using terminal with long composing characters
Problem:    Crash when using terminal with long composing characters.
Solution:   Make space for all characters. (Yasuhiro Matsumoto, closes #3619,
            closes #3703)
2018-12-20 20:47:32 +01:00
Bram Moolenaar
8f66717a1f patch 8.1.0583: using illogical name for get_dict_number()/get_dict_string()
Problem:    Using illogical name for get_dict_number()/get_dict_string().
Solution:   Rename to start with dict_.
2018-12-14 15:38:31 +01:00
Bram Moolenaar
f3aea59afa patch 8.1.0522: :terminal does not show trailing empty lines
Problem:    :terminal does not show trailing empty lines.
Solution:   Add empty lines. (Hirohito Higashi, closes #3605)
2018-11-11 22:18:21 +01:00
Bram Moolenaar
0fd6be77de patch 8.1.0491: if a terminal dump has CR it is considered corrupt
Problem:    If a terminal dump has CR it is considered corrupt.
Solution:   Ignore CR characters. (Nobuhiro Takasaki, closes #3558)
2018-10-23 21:42:59 +02:00
Bram Moolenaar
29e7fe55be patch 8.1.0481: when "Terminal" highlight is reverted cursor doesn't show
Problem:    When "Terminal" highlight is reverted cursor doesn't show.
Solution:   Get the colors of the "Terminal" group. (closes #3546)
2018-10-16 22:13:00 +02:00
Bram Moolenaar
a5c48c2698 patch 8.1.0358: crash when using term_dumpwrite() after the job finished
Problem:    Crash when using term_dumpwrite() after the job finished.
Solution:   Check for a finished job and give an error message.
2018-09-09 19:56:07 +02:00
Bram Moolenaar
98fc8d7b6c patch 8.1.0326: screen dump does not consider NUL and space equal
Problem:    Screen dump does not consider NUL and space equal.
Solution:   Use temp variables instead of character from cell.
2018-08-24 21:30:28 +02:00
Bram Moolenaar
5db7eec423 patch 8.1.0243: using :term ++close ++hidden closes a window
Problem:    Using :term ++close ++hidden closes a window. (Marcin Szamotulski)
Solution:   Don't close the window if only using it temporarily for unloading
            the terminal buffer. (closes #3287)
2018-08-07 16:33:18 +02:00
Bram Moolenaar
7da1fb5532 patch 8.1.0238: 'buftype' is cleared when using ":term ++hidden cat"
Problem:    'buftype' is cleared when using ":term ++hidden cat". (Marcin
            Szamotulski)
Solution:   Set the "options initialized" flag earlier. (closes #3278)
2018-08-04 16:54:11 +02:00
Bram Moolenaar
875cf87894 patch 8.1.0171: typing CTRL-W n in a terminal window causes ml_get error
Problem:    Typing CTRL-W n in a terminal window causes ml_get error.
Solution:   When resizing the terminal outside of terminal_loop() make sure
            the snapshot is complete.
2018-07-08 20:49:07 +02:00
Bram Moolenaar
e0be167a80 patch 8.1.0166: using dict_add_nr_str() is clumsy
Problem:    Using dict_add_nr_str() is clumsy.
Solution:   Split into two functions. (Ozaki Kiichi, closes #3154)
2018-07-08 16:50:37 +02:00
Bram Moolenaar
f9c3883b11 patch 8.1.0087: v:shell_error is always zero when using terminal for "!cmd"
Problem:    v:shell_error is always zero when using terminal for "!cmd".
Solution:   Use "exitval" of terminal-job. (Ozaki Kiichi, closes #2994)
2018-06-19 19:59:20 +02:00
Bram Moolenaar
0ce7413a83 patch 8.1.0076: command getting cleared with CTRL-W : in a terminal window
Problem:    Command getting cleared with CTRL-W : in a terminal window. (Jason
            Franklin)
Solution:   Call redraw_after_callback() when editing the command line.
2018-06-18 22:15:50 +02:00
Bram Moolenaar
dcdeaaf150 patch 8.1.0072: use of 'termwinkey' is inconsistent
Problem:    Use of 'termwinkey' is inconsistent.
Solution:   Change the documentation and the behavior. (Ken Takata)
2018-06-17 22:19:12 +02:00
Bram Moolenaar
493359eb3b patch 8.1.0050: $VIM_TERMINAL is also set when not in a terminal window
Problem:    $VIM_TERMINAL is also set when not in a terminal window.
Solution:   Pass a flag to indicate whether the job runs in a terminal.
2018-06-12 20:25:52 +02:00
Bram Moolenaar
6b810d92a9 patch 8.1.0032: BS in prompt buffer starts new line
Problem:    BS in prompt buffer starts new line.
Solution:   Do not allows BS over the prompt.  Make term_sendkeys() handle
            special keys. Add a test.
2018-06-04 17:28:44 +02:00
Bram Moolenaar
d45aa55d42 patch 8.1.0016: possible crash in term_wait()
Problem:    Possible crash in term_wait(). (Dominique Pelle)
Solution:   Check for a valid buffer after ui_delay(). (closes #2944)
2018-05-21 22:50:29 +02:00
Bram Moolenaar
05af9a4191 patch 8.1.0015: cursor color wrong when closing a terminal window
Problem:    Cursor color wrong when closing a terminal window, ending up in
            another terminal window. (Dominique Pelle)
Solution:   Bail out of terminal_loop() when the buffer changes.
            (closes #2942)
2018-05-21 18:48:12 +02:00
Bram Moolenaar
4f7fd56b42 patch 8.1.0013: using freed memory when changing terminal cursor color
Problem:    Using freed memory when changing terminal cursor color.
Solution:   Make a copy of the color. (Dominique Pelle, closes #2938,
            closes #2941)
2018-05-21 14:55:28 +02:00
Bram Moolenaar
03998f606a patch 8.0.1850: todo items in source code not visible for users
Problem:    Todo items in source code not visible for users.
Solution:   Move the todo items to the help file.
2018-05-17 13:20:45 +02:00
Bram Moolenaar
4d6cd291ce patch 8.0.1848: 'termwinscroll' does not work properly
Problem:    'termwinscroll' does not work properly. (Dominique Pelle)
Solution:   Subtract removed scrollback from the scrollback count.  Add a test
            for 'termwinscroll'. (closes #2909)
2018-05-15 23:53:26 +02:00
Bram Moolenaar
620020eb1d patch 8.0.1838: cursor in wrong pos when switching to Terminal-Normal mode
Problem:    Cursor in wrong position when switching to Terminal-Normal mode.
            (Dominique Pelle)
Solution:   Move to the end of the line if coladvance() fails.  Do not take a
            snapshot a second time.
2018-05-13 19:06:12 +02:00
Bram Moolenaar
05c4a471d2 patch 8.0.1830: switching to Terminal-Normal mode does not redraw
Problem:    Switching to Terminal-Normal mode does not redraw. (Dominique
            Pelle)
Solution:   Also redraw when not updating the snapshot. (closes #2904)
2018-05-13 15:15:43 +02:00
Bram Moolenaar
73dd1bd54e patch 8.0.1824: Coverity warns for variable that may be uninitialized
Problem:    Coverity warns for variable that may be uninitialized.
Solution:   Initialize the variable.
2018-05-12 21:16:25 +02:00
Bram Moolenaar
2bc799579d patch 8.0.1821: cursor in terminal window moves when pressing CTRL-W
Problem:    Cursor in terminal window moves when pressing CTRL-W. (Dominique
            Pelle)
Solution:   Do not more the cursor or redraw when not in Terminal-Normal mode.
            (closes #2904)
2018-05-12 20:36:24 +02:00
Bram Moolenaar
3f1a53c434 patch 8.0.1818: lines remove from wrong buffer when using terminal window
Problem:    Lines remove from wrong buffer when using terminal window.
Solution:   Make sure to use tl_buffer.
2018-05-12 16:55:14 +02:00
Bram Moolenaar
0cb8ac71ae patch 8.0.1815: crash with terminal window and with 'lazyredraw' set
Problem:    Still a crash with terminal window and with 'lazyredraw' set.
            (Antoine)
Solution:   Do not wipe out the buffer when updating the screen.
2018-05-11 22:01:51 +02:00
Bram Moolenaar
a10ae5e323 patch 8.0.1814: crash with terminal window and with 'lazyredraw' set
Problem:    Crash with terminal window and with 'lazyredraw' set. (Antoine)
Solution:   Check the terminal still exists after update_screen().
2018-05-11 20:48:29 +02:00
Bram Moolenaar
56bc8e299c patch 8.0.1810: buffer of a terminal only updated in Terminal-Normal mode
Problem:    Buffer of a terminal only updated in Terminal-Normal mode.
Solution:   Copy the terminal window content to the buffer when in
            Terminal-Job mode.
2018-05-10 18:05:56 +02:00
Bram Moolenaar
9b50f36e40 patch 8.0.1803: warning for uninitialized variable
Problem:    Warning for uninitialized variable. (Tony Mechelynck)
Solution:   Initialize it.
2018-05-07 20:10:17 +02:00
Bram Moolenaar
402c83921e patch 8.0.1802: MS-Windows: terminal test fails
Problem:    MS-Windows: terminal test fails.
Solution:   Close redirected output file earlier.
2018-05-06 22:01:42 +02:00
Bram Moolenaar
f25329cb94 patch 8.0.1801: MS-Windows: redirecting terminal output does not work
Problem:    MS-Windows: redirecting terminal output does not work.
Solution:   Intercept the text written to the terminal and write it to the
            file.
2018-05-06 21:49:32 +02:00
Bram Moolenaar
6eddadff13 patch 8.0.1797: terminal window is redrawn too often
Problem:    Terminal window is redrawn too often and scrolling is repeated.
Solution:   Don't scroll immediately but only when redrawing.  Avoid redrawing
            the whole terminal window on every change.
2018-05-06 16:40:16 +02:00
Bram Moolenaar
231a2db1b3 patch 8.0.1796: GUI: click on tab fails when the focus is in a terminal
Problem:    GUI: click on tab fails when the focus is in a terminal window.
Solution:   Handle K_TABLINE.
2018-05-06 13:53:50 +02:00
Bram Moolenaar
b0b98d5230 patch 8.0.1795: lose contact with jobs when :gui forks
Problem:    Lose contact with jobs when :gui forks.
Solution:   Don't fork when there is a running job. Make log message for a
            died job clearer.  Also close the terminal when stderr and stdout
            are the same FD.
2018-05-05 21:01:00 +02:00
Bram Moolenaar
b833c1ef7b patch 8.0.1794: duplicate term options after renaming
Problem:    Duplicate term options after renaming.
Solution:   Remove the old names 'termkey', 'termsize' and 'terminalscroll'.
2018-05-05 16:36:06 +02:00
Bram Moolenaar
606cb8b08e patch 8.0.1789: BufWinEnter does not work well for a terminal window
Problem:    BufWinEnter does not work well for a terminal window.
Solution:   Do not trigger BufWinEnter when opening a terminal window.
2018-05-03 20:40:20 +02:00
Bram Moolenaar
b2ac14c0b5 patch 8.0.1786: no test for 'termwinkey'
Problem:    No test for 'termwinkey'.
Solution:   Add a test.  Make feedkeys() handle terminal_loop() returning
            before characters are consumed.
2018-05-01 18:47:59 +02:00