summaryrefslogtreecommitdiff
path: root/src/channel.c
Commit message (Collapse)AuthorAgeFilesLines
* patch 8.1.0069: cannot handle pressing CTRL-C in a prompt bufferv8.1.0069Bram Moolenaar2018-06-171-1/+25
| | | | | Problem: Cannot handle pressing CTRL-C in a prompt buffer. Solution: Add prompt_setinterrupt().
* patch 8.1.0050: $VIM_TERMINAL is also set when not in a terminal windowv8.1.0050Bram Moolenaar2018-06-121-2/+6
| | | | | 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.
* patch 8.1.0027: difficult to make a plugin that feeds a line to a jobv8.1.0027Bram Moolenaar2018-06-031-0/+34
| | | | | Problem: Difficult to make a plugin that feeds a line to a job. Solution: Add the nitial code for the "prompt" buftype.
* patch 8.0.1828: get no clue why :gui does not forkv8.0.1828Bram Moolenaar2018-05-131-0/+3
| | | | | Problem: Get no clue why :gui does not fork. Solution: Add a channel log message.
* patch 8.0.1827: compiler warning for signed/unsigned char pointersv8.0.1827Bram Moolenaar2018-05-131-4/+4
| | | | | Problem: Compiler warning for signed/unsigned char pointers. (Cesar Romani) Solution: Change the type of jv_argv.
* patch 8.0.1795: lose contact with jobs when :gui forksv8.0.1795Bram Moolenaar2018-05-051-13/+47
| | | | | | | 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.
* patch 8.0.1775: MS-Windows: warning for unused variablev8.0.1775Bram Moolenaar2018-04-301-1/+1
| | | | | Problem: MS-Windows: warning for unused variable. Solution: Move declaration inside #ifdef. (Mike Williams)
* patch 8.0.1761: job in terminal window with no output channel is killedv8.0.1761Bram Moolenaar2018-04-241-8/+38
| | | | | | Problem: Job in terminal window with no output channel is killed. Solution: Keep the job running when the input is a tty. (Ozaki Kiichi, closes #2734)
* patch 8.0.1747: MS-Windows: term_start() does not set job_info() cmdv8.0.1747Bram Moolenaar2018-04-211-32/+4
| | | | | Problem: MS-Windows: term_start() does not set job_info() cmd. Solution: Share the code from job_start() to set jv_argv.
* patch 8.0.1746: MS-Windows: channel tests failv8.0.1746Bram Moolenaar2018-04-211-2/+10
| | | | | Problem: MS-Windows: channel tests fail. Solution: Make a copy of the command before splitting it.
* patch 8.0.1745: build failure on MS-Windowsv8.0.1745Bram Moolenaar2018-04-211-29/+32
| | | | | Problem: Build failure on MS-Windows. Solution: Build job arguments for MS-Windows. Fix allocating job twice.
* patch 8.0.1742: cannot get a list of all the jobsv8.0.1742Bram Moolenaar2018-04-211-1/+50
| | | | | | | | Problem: Cannot get a list of all the jobs. Cannot get the command of the job. Solution: When job_info() is called without an argument return a list of jobs. Otherwise, include the command that the job is running. (Yegappan Lakshmanan)
* patch 8.0.1709: some non-C89 code may slip throughv8.0.1709Bram Moolenaar2018-04-141-3/+3
| | | | | | Problem: Some non-C89 code may slip through. Solution: Enforce C89 in configure. Fix detected problems. (James McCoy, closes #2735)
* patch 8.0.1685: can't set ANSI colors of a terminal windowv8.0.1685Bram Moolenaar2018-04-101-0/+44
| | | | | | Problem: Can't set ANSI colors of a terminal window. Solution: Add term_setansicolors(), term_getansicolors() and g:term_ansi_colors. (Andy Massimino, closes #2747)
* patch 8.0.1681: the format attribute fails with MinGWv8.0.1681Bram Moolenaar2018-04-101-2/+2
| | | | | Problem: The format attribute fails with MinGW. (John Marriott) Solution: Don't use the format attribute with MinGW.
* patch 8.0.1676: no compiler warning for wrong printf formatv8.0.1676Bram Moolenaar2018-04-081-5/+15
| | | | | | Problem: No compiler warning for wrong printf format. Solution: Add a printf attribute for gcc. Fix reported problems. (Dominique Pelle, closes #2789)
* patch 8.0.1671: crash when passing non-dict argument as env to job_start()v8.0.1671Bram Moolenaar2018-04-071-1/+7
| | | | | Problem: Crash when passing non-dict argument as env to job_start(). Solution: Check for valid argument. (Ozaki Kiichi, closes #2765)
* patch 8.0.1657: crash when reading a channelv8.0.1657Bram Moolenaar2018-04-031-1/+2
| | | | | | Problem: Crash when reading a channel. Solution: Clear the write flag before writing. (idea by Shinya Ohyanagi, closes #2769).
* patch 8.0.1609: shell commands in the GUI use a dumb terminalv8.0.1609Bram Moolenaar2018-03-161-2/+12
| | | | | | Problem: Shell commands in the GUI use a dumb terminal. Solution: Add the "!" flag to 'guioptions' to execute system commands in a special terminal window. Only for Unix now.
* patch 8.0.1593: :qall never exits with an active terminal windowv8.0.1593Bram Moolenaar2018-03-101-8/+15
| | | | | Problem: :qall never exits with an active terminal window. Solution: Add a way to kill a job in a terminal window.
* patch 8.0.1592: terminal windows in a session are not properly restoredv8.0.1592Bram Moolenaar2018-03-091-0/+8
| | | | | | Problem: Terminal windows in a session are not properly restored. Solution: Add "terminal" in 'sessionoptions'. When possible restore the command running in a terminal.
* patch 8.0.1516: errors for job options are not very specificv8.0.1516Bram Moolenaar2018-02-131-17/+17
| | | | | Problem: Errors for job options are not very specific. Solution: Add more specific error messages.
* patch 8.0.1496: clearing a pointer takes two linesv8.0.1496Bram Moolenaar2018-02-101-4/+3
| | | | | | Problem: Clearing a pointer takes two lines. Solution: Add VIM_CLEAR() and replace vim_clear(). (Hirohito Higashi, closes #2629)
* patch 8.0.1449: slow redrawing with DirectXv8.0.1449Bram Moolenaar2018-01-311-8/+1
| | | | | | Problem: Slow redrawing with DirectX. Solution: Avoid calling gui_mch_flush() unnecessarily, especially when updating the cursor. (Ken Takata, closes #2560)
* patch 8.0.1381: ch_readraw() waits for NL if channel mode is NLv8.0.1381Bram Moolenaar2017-12-091-7/+19
| | | | | Problem: ch_readraw() waits for NL if channel mode is NL. Solution: Pass a "raw" flag to channel_read_block(). (Yasuhiro Matsumoto)
* patch 8.0.1286: occasional crash when using a channelv8.0.1286Bram Moolenaar2017-11-111-2/+2
| | | | | Problem: Occasional crash when using a channel. (Marek) Solution: Decrement reference count later. (closes #2315)
* patch 8.0.1170: using termdebug results in 100% CPU timev8.0.1170Bram Moolenaar2017-10-011-9/+55
| | | | | Problem: Using termdebug results in 100% CPU time. (tomleb) Solution: Use polling instead of select().
* patch 8.0.1101: channel write fails if writing to log failsv8.0.1101Bram Moolenaar2017-09-131-6/+5
| | | | | Problem: Channel write fails if writing to log fails. Solution: Ignore return value of fwrite(). (Ozaki Kiichi, closes #2081)
* patch 8.0.1083: leaking memory in input part of channelv8.0.1083Bram Moolenaar2017-09-091-1/+2
| | | | | | | Problem: Leaking memory in input part of channel. Solution: Clear the input part of channel. Free the entry. Move failing command test to a separate file to avoid bogus leak reports clouding tests that should not leak.
* patch 8.0.1081: memory leak for the channel write queuev8.0.1081Bram Moolenaar2017-09-091-12/+22
| | | | | Problem: Memory leak for the channel write queue. Solution: Free the write queue when clearing a channel.
* patch 8.0.1076: term_start() does not take callbacksv8.0.1076Bram Moolenaar2017-09-081-6/+5
| | | | | | | | Problem: term_start() does not take callbacks. When using two terminals without a job only one is read from. A terminal without a window returns the wrong pty. Solution: Support "callback", "out_cb" and "err_cb". Fix terminal without a window. Fix reading from multiple channels.
* patch 8.0.1074: ":term NONE" does not work on MS-Windowsv8.0.1074Bram Moolenaar2017-09-081-4/+39
| | | | | | Problem: ":term NONE" does not work on MS-Windows. Solution: Make it work. Split "pty" into "pty_in" and "pty_out". (Yasuhiro Matsumoto, closes #2058, closes #2045)
* patch 8.0.1036: ++eof argument for terminal only available on MS-Windowsv8.0.1036Bram Moolenaar2017-09-021-5/+2
| | | | | Problem: ++eof argument for terminal only available on MS-Windows. Solution: Also support ++eof on Unix. Add a test.
* patch 8.0.1035: sending buffer lines to terminal doesn't work on MS-Windowsv8.0.1035Bram Moolenaar2017-09-021-4/+9
| | | | | | Problem: Sending buffer lines to terminal doesn't work on MS-Windows. Solution: Use CR instead of NL after every line. Make the EOF text work properly. Add the ++eof argument to :terminal.
* patch 8.0.1034: sending buffer lines to terminal doesn't work on MS-Windowsv8.0.1034Bram Moolenaar2017-09-021-0/+23
| | | | | | Problem: Sending buffer lines to terminal doesn't work on MS-Windows. Solution: Send CTRL-D to mark the end of the text. (Yasuhiro Matsumoto, closes #2043) Add the "eof_chars" option.
* patch 8.0.1005: terminal without job updates slowly in GUIv8.0.1005Bram Moolenaar2017-08-271-0/+16
| | | | | Problem: Terminal without job updates slowly in GUI. Solution: Poll for input when a channel has the keep_open flag.
* patch 8.0.1003: 64 bit compiler warningv8.0.1003Bram Moolenaar2017-08-271-1/+1
| | | | | Problem: 64 bit compiler warning Solution: Add type cast. (Mike Williams)
* patch 8.0.1002: unnecessarily updating screen after timer callbackv8.0.1002Bram Moolenaar2017-08-261-3/+3
| | | | | Problem: Unnecessarily updating screen after timer callback. Solution: Check if calling the timer sets must_redraw.
* patch 8.0.1000: cannot open a terminal without running a job in itv8.0.1000Bram Moolenaar2017-08-261-8/+21
| | | | | Problem: Cannot open a terminal without running a job in it. Solution: Make ":terminal NONE" open a terminal with a pty.
* patch 8.0.0969: Coverity warning for unused return valuev8.0.0969Bram Moolenaar2017-08-191-1/+1
| | | | | Problem: Coverity warning for unused return value. Solution: Add (void) to avoid the warning.
* patch 8.0.0964: channel write buffer does not work with poll()v8.0.0964Bram Moolenaar2017-08-191-8/+4
| | | | | Problem: Channel write buffer does not work with poll(). Solution: Use the same mechanism as with select().
* patch 8.0.0959: build failure on MS-Windowsv8.0.0959Bram Moolenaar2017-08-181-8/+5
| | | | | Problem: Build failure on MS-Windows. Solution: Use ioctlsocket() instead of fcntl().
* patch 8.0.0957: a terminal job can deadlock when sending many keysv8.0.0957Bram Moolenaar2017-08-181-37/+185
| | | | | | Problem: When term_sendkeys() sends many keys it may get stuck in writing to the job. Solution: Make the write non-blocking, buffer keys to be sent.
* patch 8.0.0928: MS-Windows: passing arglist to job has escaping problemsv8.0.0928Bram Moolenaar2017-08-131-29/+108
| | | | | Problem: MS-Windows: passing arglist to job has escaping problems. Solution: Improve escaping. (Yasuhiro Matsumoto, closes #1954)
* patch 8.0.0916: cannot specify properties of window for terminal openv8.0.0916Bram Moolenaar2017-08-121-0/+22
| | | | | | Problem: Cannot specify properties of window for when opening a window for a finished terminal job. Solution: Add "term_opencmd".
* patch 8.0.0912: cannot run a job in a hidden terminalv8.0.0912Bram Moolenaar2017-08-121-0/+7
| | | | | Problem: Cannot run a job in a hidden terminal. Solution: Add option "hidden" and ++hidden.
* patch 8.0.0910: cannot create a terminal in the current windowv8.0.0910Bram Moolenaar2017-08-111-0/+7
| | | | | Problem: Cannot create a terminal in the current window. Solution: Add option "curwin" and ++curwin.
* patch 8.0.0909: channel test failsv8.0.0909Bram Moolenaar2017-08-111-2/+3
| | | | | Problem: Channel test fails. Solution: Allow for "cwd" and "env" arguments.
* patch 8.0.0908: cannot set terminal size with optionsv8.0.0908Bram Moolenaar2017-08-111-10/+31
| | | | | Problem: Cannot set terminal size with options. Solution: Add "term_rows", "term_cols" and "vertical".
* patch 8.0.0902: cannot specify directory or environment for a jobv8.0.0902Bram Moolenaar2017-08-111-0/+22
| | | | | | Problem: Cannot specify directory or environment for a job. Solution: Add the "cwd" and "env" arguments to job options. (Yasuhiro Matsumoto, closes #1160)