blob: 93c6ab53c6cad7645f38d831488c17fd7361cafe [file] [log] [blame]
Bram Moolenaare4f25e42017-07-07 11:54:15 +02001/* terminal.c */
Bram Moolenaar13568252018-03-16 20:46:58 +01002void init_job_options(jobopt_T *opt);
3buf_T *term_start(typval_T *argvar, char **argv, jobopt_T *opt, int flags);
Bram Moolenaare4f25e42017-07-07 11:54:15 +02004void ex_terminal(exarg_T *eap);
Bram Moolenaar4d8bac82018-03-09 21:33:34 +01005int term_write_session(FILE *fd, win_T *wp);
6int term_should_restore(buf_T *buf);
Bram Moolenaard85f2712017-07-28 21:51:57 +02007void free_terminal(buf_T *buf);
Bram Moolenaarcb8bbe92017-07-16 13:48:22 +02008void write_to_term(buf_T *buffer, char_u *msg, channel_T *channel);
Bram Moolenaar94053a52017-08-01 21:44:33 +02009int term_job_running(term_T *term);
Bram Moolenaar3c518402017-09-08 20:47:00 +020010int term_none_open(term_T *term);
Bram Moolenaar25cdd9c2018-03-10 20:28:12 +010011int term_try_stop_job(buf_T *buf);
Bram Moolenaar56bc8e22018-05-10 18:05:56 +020012int term_check_timers(int next_due_arg, proftime_T *now);
Bram Moolenaar6d819742017-08-06 14:57:49 +020013int term_in_normal_mode(void);
14void term_enter_job_mode(void);
Bram Moolenaar98fd66d2017-08-05 19:34:47 +020015int send_keys_to_term(term_T *term, int c, int typed);
Bram Moolenaar69fbc9e2017-09-14 20:37:57 +020016int terminal_is_active(void);
Bram Moolenaar3d9bdfe2017-08-12 22:55:58 +020017cursorentry_T *term_get_cursor_shape(guicolor_T *fg, guicolor_T *bg);
Bram Moolenaar6d819742017-08-06 14:57:49 +020018int term_use_loop(void);
Bram Moolenaar6eddadf2018-05-06 16:40:16 +020019void term_win_entered(void);
Bram Moolenaar69fbc9e2017-09-14 20:37:57 +020020int terminal_loop(int blocking);
Bram Moolenaarc6df10e2017-07-29 20:15:08 +020021void term_job_ended(job_T *job);
Bram Moolenaard85f2712017-07-28 21:51:57 +020022void term_channel_closed(channel_T *ch);
Bram Moolenaar6eddadf2018-05-06 16:40:16 +020023int term_do_update_window(win_T *wp);
24void term_update_window(win_T *wp);
Bram Moolenaar63ecdda2017-07-28 22:29:35 +020025int term_is_finished(buf_T *buf);
Bram Moolenaar423802d2017-07-30 16:52:24 +020026int term_show_buffer(buf_T *buf);
Bram Moolenaar63ecdda2017-07-28 22:29:35 +020027void term_change_in_curbuf(void);
28int term_get_attr(buf_T *buf, linenr_T lnum, int col);
Bram Moolenaar21554412017-07-24 21:44:43 +020029char_u *term_get_status_text(term_T *term);
Bram Moolenaara2c45a12017-07-27 22:14:59 +020030int set_ref_in_term(int copyID);
Bram Moolenaara7c54cf2017-12-01 21:07:20 +010031void set_terminal_default_colors(int cterm_fg, int cterm_bg);
Bram Moolenaard96ff162018-02-18 22:13:29 +010032void f_term_dumpwrite(typval_T *argvars, typval_T *rettv);
33int term_swap_diff(void);
34void f_term_dumpdiff(typval_T *argvars, typval_T *rettv);
35void f_term_dumpload(typval_T *argvars, typval_T *rettv);
Bram Moolenaare41e3b42017-08-11 16:24:50 +020036void f_term_getaltscreen(typval_T *argvars, typval_T *rettv);
Bram Moolenaarc6df10e2017-07-29 20:15:08 +020037void f_term_getattr(typval_T *argvars, typval_T *rettv);
Bram Moolenaar97870002017-07-30 18:28:38 +020038void f_term_getcursor(typval_T *argvars, typval_T *rettv);
Bram Moolenaarc6df10e2017-07-29 20:15:08 +020039void f_term_getjob(typval_T *argvars, typval_T *rettv);
40void f_term_getline(typval_T *argvars, typval_T *rettv);
Bram Moolenaar82b9ca02017-08-08 23:06:46 +020041void f_term_getscrolled(typval_T *argvars, typval_T *rettv);
Bram Moolenaarc6df10e2017-07-29 20:15:08 +020042void f_term_getsize(typval_T *argvars, typval_T *rettv);
Bram Moolenaara42d3632018-04-14 17:05:38 +020043void f_term_setsize(typval_T *argvars, typval_T *rettv);
Bram Moolenaarb000e322017-07-30 19:38:21 +020044void f_term_getstatus(typval_T *argvars, typval_T *rettv);
45void f_term_gettitle(typval_T *argvars, typval_T *rettv);
Bram Moolenaar7c9aec42017-08-03 13:51:25 +020046void f_term_gettty(typval_T *argvars, typval_T *rettv);
Bram Moolenaarc6df10e2017-07-29 20:15:08 +020047void f_term_list(typval_T *argvars, typval_T *rettv);
Bram Moolenaarc6df10e2017-07-29 20:15:08 +020048void f_term_scrape(typval_T *argvars, typval_T *rettv);
49void f_term_sendkeys(typval_T *argvars, typval_T *rettv);
Bram Moolenaara42d3632018-04-14 17:05:38 +020050void f_term_getansicolors(typval_T *argvars, typval_T *rettv);
Bram Moolenaarf59c6e82018-04-10 15:59:11 +020051void f_term_setansicolors(typval_T *argvars, typval_T *rettv);
Bram Moolenaar25cdd9c2018-03-10 20:28:12 +010052void f_term_setrestore(typval_T *argvars, typval_T *rettv);
53void f_term_setkill(typval_T *argvars, typval_T *rettv);
Bram Moolenaar423802d2017-07-30 16:52:24 +020054void f_term_start(typval_T *argvars, typval_T *rettv);
Bram Moolenaarc6df10e2017-07-29 20:15:08 +020055void f_term_wait(typval_T *argvars, typval_T *rettv);
Bram Moolenaar3c518402017-09-08 20:47:00 +020056void term_send_eof(channel_T *ch);
Bram Moolenaara83e3962017-08-17 14:39:07 +020057int terminal_enabled(void);
Bram Moolenaare4f25e42017-07-07 11:54:15 +020058/* vim: set ft=c : */