0
0
mirror of https://github.com/vim/vim.git synced 2025-09-23 03:43:49 -04:00

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)
This commit is contained in:
Bram Moolenaar
2019-02-03 14:53:10 +01:00
parent 01a6c21691
commit aa5df7e312
17 changed files with 694 additions and 73 deletions

View File

@@ -282,6 +282,8 @@ typedef struct
# define w_p_twk w_onebuf_opt.wo_twk /* 'termwinkey' */
char_u *wo_tws;
# define w_p_tws w_onebuf_opt.wo_tws /* 'termwinsize' */
char_u *wo_tmod;
# define w_p_tmod w_onebuf_opt.wo_tmod /* 'termmode' */
#endif
#ifdef FEAT_EVAL
@@ -1728,13 +1730,15 @@ struct channel_S {
int ch_keep_open; /* do not close on read error */
int ch_nonblock;
job_T *ch_job; /* Job that uses this channel; this does not
* count as a reference to avoid a circular
* reference, the job refers to the channel. */
int ch_job_killed; /* TRUE when there was a job and it was killed
* or we know it died. */
job_T *ch_job; // Job that uses this channel; this does not
// count as a reference to avoid a circular
// reference, the job refers to the channel.
int ch_job_killed; // TRUE when there was a job and it was killed
// or we know it died.
int ch_anonymous_pipe; // ConPTY
int ch_killing; // TerminateJobObject() was called
int ch_refcount; /* reference count */
int ch_refcount; // reference count
int ch_copyID;
};
@@ -1787,6 +1791,7 @@ struct channel_S {
#define JO2_NORESTORE 0x2000 /* "norestore" */
#define JO2_TERM_KILL 0x4000 /* "term_kill" */
#define JO2_ANSI_COLORS 0x8000 /* "ansi_colors" */
#define JO2_TERM_MODE 0x10000 /* "term_mode" */
#define JO_MODE_ALL (JO_MODE + JO_IN_MODE + JO_OUT_MODE + JO_ERR_MODE)
#define JO_CB_ALL \
@@ -1859,6 +1864,7 @@ typedef struct
# if defined(FEAT_GUI) || defined(FEAT_TERMGUICOLORS)
long_u jo_ansi_colors[16];
# endif
int jo_term_mode; // first character of "term_mode"
#endif
} jobopt_T;