diff options
| author | jixiuf <jixiuf@qq.com> | 2019-10-20 23:11:35 +0800 |
|---|---|---|
| committer | jixiuf <jixiuf@qq.com> | 2019-11-17 14:58:31 +0800 |
| commit | 0df4686645a9783e49cffbf4b79a55afab27753b (patch) | |
| tree | a00dd3f41f6fdfcfee336fe82687ba169f988b7a /vterm-module.h | |
| parent | 19a6c027e7e29a0b16ca4ca9ae6991abe27ef856 (diff) | |
support compilation-shell-minior-mode
Diffstat (limited to 'vterm-module.h')
| -rw-r--r-- | vterm-module.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/vterm-module.h b/vterm-module.h index 005d5b5..93c657e 100644 --- a/vterm-module.h +++ b/vterm-module.h @@ -17,11 +17,18 @@ int plugin_is_GPL_compatible; #define MAX(X, Y) ((X) > (Y) ? (X) : (Y)) #endif +typedef struct LineInfo { + char *directory; /* working directory */ + +} LineInfo; + typedef struct ScrollbackLine { size_t cols; + LineInfo *info; VTermScreenCell cells[]; } ScrollbackLine; + enum { VTERM_PROP_CURSOR_BLOCK = VTERM_PROP_CURSORSHAPE_BLOCK, VTERM_PROP_CURSOR_UNDERLINE = VTERM_PROP_CURSORSHAPE_UNDERLINE, @@ -67,8 +74,13 @@ typedef struct Term { char *elisp_code; bool elisp_code_changed; + /* the size of dirs almost = window height,value = directory of that line */ + LineInfo **lines; + int lines_len; + int width, height; int height_resize; + bool resizing; int pty_fd; } Term; @@ -105,6 +117,9 @@ emacs_value Fvterm_set_pty_name(emacs_env *env, ptrdiff_t nargs, emacs_value Fvterm_get_icrnl(emacs_env *env, ptrdiff_t nargs, emacs_value args[], void *data); +emacs_value Fvterm_get_pwd(emacs_env *env, ptrdiff_t nargs, + emacs_value args[], void *data); + int emacs_module_init(struct emacs_runtime *ert); #endif /* VTERM_MODULE_H */ |
