aboutsummaryrefslogtreecommitdiff
path: root/vterm-module.h
diff options
context:
space:
mode:
authorLukas Fürmetz <fuermetz@mailbox.org>2019-07-31 14:46:30 +0200
committerGitHub <noreply@github.com>2019-07-31 14:46:30 +0200
commit0632e6874252aad7501aeba86c9d3b80ab7938c2 (patch)
tree3099870bad1fbe481c01f7db174b34aed1b20d73 /vterm-module.h
parent4d34280d6001faf8c4035c51083f94f7f0bb3620 (diff)
parentb1d9218b731a5e9e89e3ef681926cc68741b828c (diff)
Merge pull request #105 from akermu/use_termios
Fixes for key handling
Diffstat (limited to 'vterm-module.h')
-rw-r--r--vterm-module.h27
1 files changed, 17 insertions, 10 deletions
diff --git a/vterm-module.h b/vterm-module.h
index 356a6dd..ca0bcb5 100644
--- a/vterm-module.h
+++ b/vterm-module.h
@@ -59,6 +59,8 @@ typedef struct Term {
bool is_title_changed;
int width, height;
+
+ int pty_fd;
} Term;
static bool compare_cells(VTermScreenCell *a, VTermScreenCell *b);
@@ -74,18 +76,23 @@ static void term_redraw(Term *term, emacs_env *env);
static void term_flush_output(Term *term, emacs_env *env);
static void term_process_key(Term *term, unsigned char *key, size_t len,
VTermModifier modifier);
-static void term_put_caret(Term *term, emacs_env *env, int row, int col,
- int offset);
static void invalidate_terminal(Term *term, int start_row, int end_row);
static void refresh_size(Term *term);
-static void term_finalize(void *object);
-
-static emacs_value Fvterm_new(emacs_env *env, ptrdiff_t nargs,
- emacs_value args[], void *data);
-static emacs_value Fvterm_update(emacs_env *env, ptrdiff_t nargs,
- emacs_value args[], void *data);
-static emacs_value Fvterm_redraw(emacs_env *env, ptrdiff_t nargs,
- emacs_value args[], void *data);
+void term_finalize(void *object);
+
+emacs_value Fvterm_new(emacs_env *env, ptrdiff_t nargs, emacs_value args[],
+ void *data);
+emacs_value Fvterm_update(emacs_env *env, ptrdiff_t nargs, emacs_value args[],
+ void *data);
+emacs_value Fvterm_redraw(emacs_env *env, ptrdiff_t nargs, emacs_value args[],
+ void *data);
+emacs_value Fvterm_write_input(emacs_env *env, ptrdiff_t nargs,
+ emacs_value args[], void *data);
+emacs_value Fvterm_set_size(emacs_env *env, ptrdiff_t nargs, emacs_value args[],
+ void *data);
+emacs_value Fvterm_set_pty_name(emacs_env *env, ptrdiff_t nargs,
+ emacs_value args[], void *data);
+
int emacs_module_init(struct emacs_runtime *ert);
#endif /* VTERM_MODULE_H */