Commit graph

249 commits

Author SHA1 Message Date
Akib Azmain Turja
db6c64d029
Move to the input line automatically in line mode
* eat.el (eat-line-auto-move-to-input): New user option.
* eat.el (eat--line-move-to-input): New function.
* eat.el (eat--line-mode): Add/remove 'eat--line-move-to-input'
to 'pre-command-hook' locally.
* eat.texi (Line Mode): Document 'eat-line-auto-move-to-input'.
2023-09-23 12:40:23 +06:00
Akib Azmain Turja
44e9a6f5de
Rename prompt mode to line mode and generalize it
* eat.el: Rename prompt mode to line mode, also rename related
symbols to have 'eat-line-' or 'eat--line-' prefix.
* eat.el (eat-enable-native-shell-prompt-editing): Rename to
'eat-enable-auto-line-mode'.
* eat.el (eat--line-mode-enter-auto)
(eat--line-mode-exit-auto): New function.
* eat.el (eat--post-prompt, eat--post-cont-prompt): Call
'eat--line-mode-enter-auto' to enter line mode.
* eat.el (eat--pre-cmd): Call 'eat--line-mode-exit-auto'.
* eat.el (eat--get-shell-history): Populate input ring
unconditionally.
* eat.el (eat-emacs-mode, eat-semi-char-mode, eat-char-mode):
Call 'eat--line-mode-exit' to exit line mode.
* eat.el (eat--line-mode): Move all logic to 'eat-line-mode',
'eat--line-mode-exit' and 'eat--line-mode-exit-auto'.
* eat.el (eat-line-send): Make non-interactive.  Reset input
history cycling variables.
* eat.el (eat-line-send-input): New argument NO-NEWLINE.
* eat.el (eat-mode): Don't disable undo information recording.
* eat.el (eat--process-output-queue): Disable undo information
recording while process output.
* eat.texi (Line Mode): New section in chapter 'Input Modes'.
* eat.texi (Line Mode Integration): New section in chapter
'Shell Integration'.
* eat.texi (Native Shell Prompt Editing): Remove section.
* README.org (Usage): Avoid the term "keybinding mode", use
"input mode" instead as the manual uses it.  Document line
mode.
* README.org (NonGNU ELPA): Emacs 28 has NonGNU ELPA enabled by
default, so remove unnecessary instructions.
2023-09-23 02:15:45 +06:00
Akib Azmain Turja
3f4d4a9c36
Skip comments in Bash history file
* eat.el (eat--prompt-populate-input-ring): Skip Bash history
comments.
* eat.el: Add Compat as dependency; some functions from Emacs
29 are used.
2023-09-22 15:37:37 +06:00
Akib Azmain Turja
0fe5d5cb9d
Allow customizing Sixel rendering format
* eat.el (eat-sixel-render-formats): New user option.
* eat.el (eat-eshell-fallback-if-stty-not-available): Fix
customization type.
* eat.el (eat--t-term): Rename slot 'sixel-display-method' to
'sixel-render-format'.
All callers changed.
* eat.el (eat--t-sixel-flush-line): New support render format,
'none'.
* eat.el (eat-term-set-parameter): Rename parameter
'sixel-display-method' to 'sixel-render-format'.
All callers changed.
* eat.el (eat--sixel-render-format): New function.
* eat.el (eat-exec, eat--eshell-setup-proc-and-term): Set
'sixel-render-format' according to user customization.
2023-09-18 15:08:32 +06:00
Akib Azmain Turja
b2ad1be411
Add message passing support
* eat.el (eat-message-handler-alist): New user option.
* eat.el (eat--handle-message): New function.
* eat.el (eat--handle-uic, eat--eshell-handle-uic): Handle
message passing sequence.
* eat.texi (Message Passing): New section in chapter "Shell
Integration".
* integration/bash (__eat_enable_integration): Remove the
unnecessary complex code to update PROMPT_COMMAND.
* integration/bash (_eat_msg):
* integration/zsh (_eat_msg):
New function.
2023-09-17 21:58:40 +06:00
Akib Azmain Turja
9e129f33a2
Don't enter prompt mode after exit till new prompt
* eat.el (eat--inhibit-prompt-mode): New variable.
* eat.el (eat--post-prompt, eat--post-cont-prompt): Check
'eat--inhibit-prompt-mode' before switching to prompt mode.
* eat.el (eat--before-new-prompt): New function.
* eat.el (eat--handle-uic): Support "before new prompt"
sequence.
* eat.el (eat-emacs-mode, eat-semi-char-mode, eat-char-mode):
Set 'eat--inhibit-prompt-mode' to t if prompt mode is enabled.
* eat.el (eat-mode): Make 'eat--inhibit-prompt-mode'
buffer-local.
* integration/bash (__eat_prompt_command):
* integration/zsh (__eat_precmd):
Send the "before new prompt" sequence.
2023-09-16 19:13:16 +06:00
Akib Azmain Turja
268d7c57b8
Add history reporting in Zsh integration script
* eat.el (eat--get-shell-history): New argument FORMAT, pass it
to 'eat--prompt-populate-input-ring'.
* eat.el (eat--handle-uic): Accept FORMAT argument in input
history reporting sequence and pass it to
'eat--get-shell-history'.
* eat.el (eat--prompt-populate-input-ring): New argument
FORMAT.  Support Zsh extended history file format.
* integration/bash (__eat_enable_integration): Send "bash" as
the history file format.
* integration/zsh (__eat_enable_integration): Send shell
history.
2023-09-16 18:55:31 +06:00
Akib Azmain Turja
cbce601b8d
Fix input handling in Eshell
* eat.el (eat--eshell-local-mode): Make input processing
variables buffer-local.
2023-09-16 18:29:49 +06:00
Akib Azmain Turja
3fcf128840
; * eat.el (eat-mode): Fix mode line 2023-09-15 11:30:13 +06:00
Akib Azmain Turja
dd2a176820
* eat.el (eat-prompt-newline): Make ring if needed 2023-09-14 21:23:02 +06:00
Illia Ostapyshyn
7bff1c4974
* eat.el (eat-mode): Escape '%' character in title 2023-09-14 20:48:30 +06:00
Akib Azmain Turja
ccfccf016b
Fix recursive output processing
* eat.el (eat--pending-input-chunks)
(eat--process-input-queue-timer): New variable.
* eat.el (eat-mode): Make 'eat--pending-input-chunks' and
'eat--process-input-queue-timer' buffer-local.
* eat.el (eat--send-input): Queue input instead of sending
immediately.
* eat.el (eat--process-input-queue): New function.
2023-09-14 17:00:31 +06:00
Akib Azmain Turja
d83f53990f
Document prompt mode
* eat.texi (Shell Integration): Divide into sections.  Add new
section 'Native Shell Prompt Editing'.
* README.org (Usage): Document "prompt" mode.
* README.org (Comparison With Other Terminal Emulators): Update
comparison.
2023-09-14 15:43:24 +06:00
Akib Azmain Turja
89983b580c
Allow terminal text modification after it's killed
* eat.el (eat--sentinel): Remove 'read-only' and other text
properties from the terminal region.
2023-09-14 11:14:34 +06:00
Akib Azmain Turja
80ce477055
Fix Bash long startup when run from Eshell
* eat.el (eat--eshell-handle-uic): Acknowledge when input
history file is sent by the shell.
2023-09-13 21:53:13 +06:00
Akib Azmain Turja
48edc9befe
Disable native shell prompt editing by default
* eat.el (eat-enable-native-shell-prompt-editing): Set to nil.
2023-09-13 21:42:08 +06:00
Akib Azmain Turja
baf0bb7e5f
Add prompt mode and process OSC 51 as UI Command
* eat.el (eat-enable-native-shell-prompt-editing)
(eat-prompt-input-ring-size)
(eat-prompt-move-point-for-matching-input): New user option.
* eat.el (eat--t-term): Remove slots 'cwd', 'prompt-start-fn',
'prompt-end-fn', 'cont-prompt-start-fn', 'cont-prompt-end-fn',
'cmd-start-fn' and 'cmd-finish-fn'.  Add new slot 'ui-cmd-fn'.
* eat.el (eat--t-set-cwd): Support only the format used by OSC
7.
* eat.el (eat--t-prompt-start,  eat--t-prompt-end)
(eat--t-cont-prompt-start,  eat--t-cont-prompt-end)
(eat--t-set-cmd, eat--t-cmd-start, eat--t-cmd-finish): Remove
function.
* eat.el (eat--t-ui-cmd): New function.
* eat.el (eat--t-handle-output): Remove all specialized OSC 51
handlers and call 'eat--t-ui-cmd' to handle any OSC 51
sequence.
* eat.el (eat-term-set-parameter): Set 'ui-cmd-fn' slot of
terminal when 'ui-command-function' is set.
* eat.el (eat-term-cwd): Remove function.
* eat.el (eat-term-prompt-start-function)
(eat-term-prompt-end-function, eat-term-cmd-start-function)
(eat-term-cont-prompt-start-function)
(eat-term-cont-prompt-end-function, eat-term-set-cmd-function)
(eat-term-cmd-finish-function): Remove generalized variables.
* eat.el (eat-term-send-string): New function.
* eat.el (eat-send-string-as-yank): Rename to
'eat-term-send-string-as-yank'.
All callers changed.
* eat.el (eat--set-cwd-uic, eat--post-cont-prompt): New
function.
* eat.el (eat--pre-prompt, eat--post-prompt, eat--set-cmd)
(eat--pre-cmd, eat--set-cmd-status): Remove unused first
argument.
All callers changed.
* eat.el (eat--get-shell-history, eat--handle-uic): New
function.
* eat.el (eat-prompt-mode-map): New variable.
* eat.el (eat-emacs-mode, eat-semi-char-mode, eat-char-mode):
Handle the case when prompt mode is active.
* eat.el (eat--prompt-mode-previous-mode): New variable.
* eat.el (eat--prompt-mode): New non-interactive minor mode.
* eat.el (eat-prompt-send-default, eat-prompt-send)
(eat-prompt-newline, eat-prompt-delchar-or-eof)
(eat-prompt-send-interrupt): New command.
* eat.el (eat--prompt-input-ring, eat--prompt-input-ring-index)
(eat--prompt-stored-incomplete-input)
(eat--prompt-matching-input-from-input-string): New variable.
* eat.el (eat--prompt-populate-input-ring)
(eat--prompt-reset-input-ring-vars, eat--prompt-ask-for-regexp-arg)
(eat--prompt-search-arg, eat--prompt-search-start)
(eat--prompt-prev-input-string, eat--prompt-prev-matching-input-str)
(eat--prompt-delete-input, eat--prompt-prev-matching-input-str-pos):
New function.
* eat.el (eat-prompt-previous-input, eat-prompt-next-input)
(eat-prompt-restore-input, eat-prompt-previous-matching-input)
(eat-prompt-next-matching-input, eat-prompt-find-input)
(eat-prompt-previous-matching-input-from-input)
(eat-prompt-next-matching-input-from-input): New command.
* eat.el (eat-mode): Make 'eat--prompt-mode-previous-mode',
'eat--prompt-input-ring', 'eat--prompt-input-ring-index',
'eat--prompt-stored-incomplete-input' and
'eat--prompt-matching-input-from-input-string' buffer-local.
Record undo information if
'eat-enable-native-shell-prompt-editing' is enabled.  Set
'mode-line-process' properly so that prompt mode is shown when
enabled.
* eat.el (eat--process-output-queue): Remove any narrowing
temporarily when called.  Don't
* eat.el (eat--sentinel): Disable prompt mode.  Also fix the
bug where the point centers when the program exits, instead of
going to the end of buffer.
* eat.el (eat-exec): Don't set removed generalized variables
'eat-term-prompt-start-function', 'eat-term-set-cmd-function',
'eat-term-prompt-end-function', 'eat-term-cmd-start-function'
and 'eat-term-cmd-finish-function'.  Set terminal parameter
'ui-command-function' to 'eat--handle-uic'.
* eat.el (eat--eshell-handle-uic): New function.
* eat.el (eat--eshell-output-filter): Let-bind
'inhibit-read-only' only for required parts.
* eat.el (eat--eshell-setup-proc-and-term): Set terminal
parameter 'ui-command-function' to 'eat--eshell-handle-uic'.
* eat.el (eat--eshell-sentinel): Fix the bug where the point
centers when the program exits, instead of going to the end of
buffer.
* integration/bash (__eat_enable_integration): Send shell
history.
2023-09-13 21:34:00 +06:00
Akib Azmain Turja
b4595662d4
* eat.el (eat-project-other-window): New command 2023-09-03 11:00:28 +06:00
Akib Azmain Turja
8da6684841
Add command 'eat-other-window'
* eat.el (eat--1, eat-other-window): New function.
* eat.el (eat): Move all logic to 'eat--1' and call it.
2023-08-31 19:04:23 +06:00
Akib Azmain Turja
79a5c2dc94
Support Sixel properly in Eshell
* eat.el (eat--eshell-setup-proc-and-term): Set Sixel
attributes of the terminal object.
2023-08-27 01:42:52 +06:00
Akib Azmain Turja
6b5eafb31a
; Mention Sixel support in README.org 2023-08-25 23:16:36 +06:00
Akib Azmain Turja
88ed5d3ccb
Add experimental Sixel support
* eat.el (eat--t-cur): New slots 'sixel-x', 'sixel-y' and
'sixel-beg'.
* eat.el (eat--t-term): New slots 'sixel-buffer',
'sixel-buffer-size', 'sixel-palette', 'sixel-color',
'sixel-display-method', 'sixel-image-height',
'sixel-scroll-mode', 'sixel-initial-cursor-pos', 'char-width'
and 'char-height'.
* eat.el (eat--t-reset): Reset 'sixel-scroll-mode' to 't'.
* eat.el (eat--t-fix-partial-multi-col-char): Preserve original
face if PRESERVE-FACE is non-nil.
* eat.el (eat--t-send-device-attrs): Send correct attributes.
* eat.el (eat--t-report-foreground-color)
(eat--t-report-background-color): Use correct format.
* eat.el (eat--t-sixel-init, eat--t-send-graphics-attrs)
(eat--t-sixel-write, eat--t-sixel-flush-line)
(eat--t-sixel-newline, eat--t-sixel-set-color-reg)
(eat--t-sixel-cleanup, eat--t-sixel-enable-scrolling)
(eat--t-sixel-disable-scrolling): New function.
* eat.el (eat--t-set-modes, eat--t-reset-modes): Handle Sixel
scroll mode.
* eat.el (eat--t-handle-output): Update
'eat--t-send-device-attrs' call.  Handle 'send graphics
attributes' CSI function.  Parse and dispatch DCS sequence
properly.  Handle Sixel sequence.
* eat.el (eat-term-set-parameter): Handle 'char-dimensions',
'sixel-display-method', and 'sixel-image-height' parameters.
* eat.el (eat-exec): Set 'char-dimensions',
'sixel-display-method', and 'sixel-image-height' parameters.
2023-08-25 19:57:46 +06:00
Akib Azmain Turja
598c6827ba
; Fix typo in the menu of Info manual 2023-07-28 23:44:25 +06:00
Akib Azmain Turja
e0fbaf745f
; Fix wrong type error in 'eat-term-input-event' 2023-07-20 16:01:32 +06:00
Akib Azmain Turja
1a52dc1dff
Implement device status report function properly
* eat.el (eat--t-device-status-report): Implement properly.
Take an argument.
* eat.el (eat--t-handle-output): Update call to
'eat--t-device-status-report'.
2023-07-20 15:55:13 +06:00
Akib Azmain Turja
e26cc22643
Bind 'S-<insert>' to 'eat-yank'
* eat.el (eat--eshell-prepare-semi-char-mode-map)
(eat--prepare-semi-char-mode-map): Bind 'S-<insert>' to
'eat-yank'.
2023-07-12 17:06:29 +06:00
Akib Azmain Turja
79784b70ef
Bind keys 'DEL' and 'M-DEL' keys
* eat.el (eat-term-input-event): Handle 'DEL' and 'M-DEL' keys.
* eat.el (eat-term-make-keymap): Bind 'DEL' and 'M-DEL' keys.
2023-07-06 12:03:25 +06:00
Akib Azmain Turja
64dcbd2c07
Fix recursive load error
* eat.el (eat-semi-char-non-bound-keys)
(eat-eshell-semi-char-non-bound-keys): Let-bind
'after-load-alist' and 'after-load-functions' before reloading
Eat.
2023-07-03 19:48:35 +06:00
Akib Azmain Turja
d85744b48a
Yank active region with middle-click yank
* eat.el (eat-mouse-yank-primary): Select active region if
'select-active-regions' is non-nil.
2023-05-15 22:36:01 +06:00
Akib Azmain Turja
f01afd6c24
Fix middle-click yanking commands
* eat.el (eat-mouse-yank-primary): Switch to the window where
the event was initiated.
* eat.el (eat-mouse-yank-secondary): Switch to the window where
the event was initiated.  Ensure that the secondary selection
is non-empty before sending it.
2023-05-06 18:31:04 +06:00
Akib Azmain Turja
a1c4422f21
Support middle-click yank in terminal
* eat.el (eat-mouse-yank-primary, eat-mouse-yank-secondary):
New command.
* eat.el (eat--prepare-semi-char-mode-map)
(eat--eshell-prepare-semi-char-mode-map): Remap commands
'mouse-yank-primary' and 'mouse-yank-secondary' to
'eat-mouse-yank-primary' and 'eat-mouse-yank-secondary'
respectively.
2023-05-06 18:02:11 +06:00
Akib Azmain Turja
5a01e09cbb
Update documentation in commentary section
* README.org (Usage): List keybindings in semi-char mode to
switch to other keybinding modes.
* eat.el (Commentary): Put the documentation of semi-char mode
first as it is the default.  List keybindings in semi-char mode
to switch to other keybinding modes.  Update stale keybindings
listed in emacs mode documentation.
2023-04-17 17:49:15 +06:00
Akib Azmain Turja
092bdd9b95
; Release version 0.8
* eat.el:
* eat.texi:
Bump version.
* ChangeLog: Update.
2023-04-13 17:55:57 +06:00
Akib Azmain Turja
bf8639a34d
Pass process to eat-exec-hook and eat-exit-hook
* eat.el (eat-exec-hook, eat-exit-hook): Update docstring.
* eat.el (eat--sentinel): Pass process to 'eat-exit-hook'.
Delete process after running 'eat-exit-hook'.
* eat.el (eat--kill-buffer): New helper function.
* eat.el (eat-exec): Pass process to 'eat-exec-hook'.  Add or
remove 'eat--kill-process' from 'eat-exit-hook' instead of
'kill-buffer'.
2023-04-09 19:50:33 +06:00
Akib Azmain Turja
c51446bafb
New command 'eat-narrow-to-shell-prompt'
* eat.el (eat--post-prompt): Put the 'eat--shell-prompt-begin'
text property at the beginning of shell prompt.
* eat.el (eat--correct-shell-prompt-mark-overlays): Don't try
to go outside accessible portion of buffer when the buffer is
narrowed.
* eat.el (eat-narrow-to-shell-prompt): New command.
* eat.el (eat-mode-map): Bind key sequence 'C-x n d' to
'eat-narrow-to-shell-prompt'.
* eat.el (eat--filter-buffer-substring): Remove all text
properties added on UI side before passing buffer substring to
'eat-term-filter-string'.
* eat.texi (Shell Integration): Document
'eat-narrow-to-shell-prompt'.
2023-04-09 17:31:14 +06:00
Akib Azmain Turja
f7fd7694a9
Run hooks on terminal update and process exit
* eat.el (eat-exit-hook, eat-update-hook, eat-eshell-exit-hook)
(eat-eshell-update-hook): New user option.
* eat.el (eat-reset, eat--process-output-queue): Run
'eat-update-hook'.
* eat.el (eat--sentinel): Don't test 'eat-kill-buffer-on-exit',
run 'eat-exit-hook'.
* eat.el (eat--adjust-process-window-size): Run
'eat-update-hook' when the major mode is 'eat-mode'.  Run
'eat-eshell-update-hook' in 'eshell-mode' buffers.
* eat.el (eat-exec): Don't let-bind 'eat-kill-buffer-on-exit'
while killing old process, remove 'kill-buffer' from hook
'eat-exit-hook' instead.  When 'eat-kill-buffer-on-exit' is
non-nil, add 'kill-buffer' to 'eat-exit-hook' with priority 90.
Run 'eat-exec-hook' outside any let-block.
* eat.el (eat--eshell-output-filter): Run
'eat-eshell-update-hook'.
* eat.el (eat--eshell-cleanup): Run 'eat-eshell-exit-hook'.
2023-04-07 17:45:48 +06:00
Akib Azmain Turja
5c373094cc
Fix resizing when alternative display is enabled
* eat.el (eat--t-term): Fix error while resizing when
alternative display is enabled.
2023-04-05 20:39:05 +06:00
Akib Azmain Turja
5792c1b2e0
; Inform about unlisted semi-char mode exceptions
eat.el: Inform about unlisted semi-char mode exceptions in
Commentary section.
2023-04-04 17:13:49 +06:00
Akib Azmain Turja
a20c01e012
; Release version 0.7
* eat.el:
* eat.texi:
Bump version.
* ChangeLog: Update.
2023-04-02 20:01:51 +06:00
Akib Azmain Turja
69be16b565
Force directionality of paragraphs in Eat buffer
* eat.el (eat-mode): Set 'bidi-paragraph-direction' to
'left-to-right'.
2023-04-02 19:58:43 +06:00
Akib Azmain Turja
322e10c713
Inform about unlisted semi-char mode exceptions
* eat.texi (Input Modes): Inform about unlisted semi-char mode
exceptions.
* README.org: Inform about unlisted semi-char mode exceptions.
Add Zsh integration instructions.
2023-04-02 14:17:14 +06:00
Akib Azmain Turja
b986063994
Support DECSCUSR control function
* eat.el (eat-very-visible-vertical-bar-cursor-type)
(eat-vertical-bar-cursor-type, eat-horizontal-bar-cursor-type)
(eat-very-visible-horizontal-bar-cursor-type): New user
options.
* eat.el (eat--t-term): New slot 'cur-visible-p'.  Remove slot
'cur-blinking-p'.  Change the default value of 'cur-state' to
':block'.
* eat.el (eat--t-reset): Don't reset slot 'cur-blinking-p'.
Reset slot 'cur-visible-p'.  Reset 'cur-state' to ':block'.
Reset cursor state to ':block'.
* eat.el (eat--t-set-cursor-state): Set slot 'cur-visible-p' to
the current visibility of cursor.  Set slot 'cur-state' to the
shape of cursor, regardless of visibility.
* eat.el (eat--t-default-cursor): Rename to
'eat--t-show-cursor'.  Don't change any cursor state except
visibility.
* eat.el (eat--t-invisible-cursor): Rename to
'eat--t-hide-cursor'.  Don't change any cursor state except
visibility.
* eat.el (eat--t-set-cursor-style): New function.
* eat.el (eat--t-blinking-cursor, eat--t-non-blinking-cursor):
Update to handle new cursor shapes properly.
* eat.el (eat--t-set-modes): Call 'eat--t-show-cursor' instead
of 'eat--t-default-cursor'.
* eat.el (eat--t-reset-modes): Call 'eat--t-hide-cursor'
instead of 'eat--t-invisible-cursor'.
* eat.el (eat--t-handle-output): Handle DECSCUSR control
function.
* eat.el (eat-term-cursor-type): Return ':invisible' if cursor
is invisible, otherwise the value of slot 'cur-state'.  Update
the list of possible cursor states in the docstring.
* eat.el (eat-term-set-cursor-function): Update the list of
possible cursor states and fallback cursor state in the
docstring.
* eat.el (eat--cursor-blink-mode): Add
'eat--cursor-blink-stop-timers' to 'kill-buffer-hook'.
* eat.el (eat--set-cursor): Support new cursor states.  Update
the list of possible cursor states in the docstring.
* eat.texi (Cursor Types): Document new user options
'eat-vertical-bar-cursor-type',
'eat-very-visible-vertical-bar-cursor-type',
'eat-horizontal-bar-cursor-type' and
'eat-very-visible-horizontal-bar-cursor-type'.
2023-03-31 17:51:15 +06:00
chriselrod
644d01f6fd
; eat.texi (Hello Terminal): Fix typo 2023-03-31 11:42:24 +06:00
Akib Azmain Turja
cf011ad6b1
Capture keys 'M-backspace' and 'C-M-backspace'
* eat.el (eat-term-input-event): Support 'M-backspace' and
'C-M-backspace'.
* eat.el (eat-term-make-keymap): Bind 'M-backspace' and
'C-M-backspace'.
2023-03-31 11:27:12 +06:00
Akib Azmain Turja
48202c147b
Suggest to invoke 'eat-compile-terminfo' in manual
* eat.texi (Not Recognized, Garbled Text): Suggest to do
'M-x eat-compile-terminfo' when the Terminfo databases aren't
working properly.
2023-03-31 11:10:07 +06:00
Akib Azmain Turja
5c5711a97e
Fix directory tracking in Zsh
* integration/zsh (__eat_precmd): Use '$HOST' instead of
'$HOSTNAME'.
2023-03-31 10:36:56 +06:00
Akib Azmain Turja
792a98810e
Implement Zsh integration
* integration/zsh: New file.
* eat.texi (Shell Integration): Add instructions for Zsh.
* integration/bash: Always return zero on succuss.
2023-03-31 00:05:33 +06:00
Akib Azmain Turja
eab01e693b
Add new command 'eat-compile-terminfo'
* eat.el (eat-compile-terminfo): New command.
* eat.texi (Hello Terminal): Refer to 'Common Problems'.
* eat.texi (Common Problems): Add instructions to compile
Terminfo databases with 'eat-compile-terminfo'.
2023-03-30 13:25:16 +06:00
Akib Azmain Turja
26d83d04c1
Update manual to correctly describe command 'eat'
* eat.texi (Hello Terminal): Update to match with the current
behavior of command 'eat'.
2023-03-29 23:09:30 +06:00
Akib Azmain Turja
8ee08d2b22
Don't prompt for program in M-x eat by default
* eat.el (eat): Prompt for program to run only if double prefix
argument is given, otherwise use the default one.
2023-03-29 22:39:45 +06:00