Commit graph

25 commits

Author SHA1 Message Date
Piotr Stefański
5aaad960c8
; README.org: Fix wrong keybinding 2023-11-08 23:41:31 +06:00
Akib Azmain Turja
957fdb4a8f
Support Emacs 26.1
* eat.el: Depend on Emacs 26.1.
* eat.el (eat--t-handle-output, eat--handle-uic)
(eat--eshell-handle-uic): Don't use '(not CHAR)' form in 'rx'
forms.
* eat.el (eat--eshell-process-output-queue): Use
'combine-change-calls' if available.
* README.org: Update to reflect support for Emacs 26.
2023-10-07 20:48:53 +06:00
Akib Azmain Turja
0e1af38de9
Support Emacs 27.1
* eat.el: Depend on Emacs 27.1.  Require 'compat' and 'term'.
* eat.el (eat-term-color-*): Inherit 'term-color-*' in Emacs
27.
* eat.el (eat--t-sixel-render-bitmap): Call 'mapconcat' with
three arguments.
* eat.el (eat-yank-from-kill-ring): Signal error in Emacs 27.
* eat.el (eat--eshell-setup-proc-and-term): Don't error if
process mark is invalid.
* eat.el (eat-eshell-mode): Properly revert
'eshell-variable-aliases-list' when disabling the mode.
* eat.el (eat--trace-exec)
(eat--trace-eshell-adjust-make-process-args): Make sure
'lisp-data-mode' is defined before calling.
2023-10-07 15:12:52 +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
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
6b5eafb31a
; Mention Sixel support in README.org 2023-08-25 23:16:36 +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
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
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
6cf6db86c9
Fix bugs in selection data manipulation code
* eat.el (eat--t-term): Put a vector of length 8 (instead of
10) in 'cut-buffers' slot.
* eat.el (eat--t-manipulate-selection): Don't process the
targets '8' and '9', since they are not in the protocol.
Return correct list of queried targets to the client.  Make
sure base64 encoded data doesn't contain line breaks.
* eat.el (eat--t-handle-output): Tolerate invalid targets in
OSC 52 (manipulate selection data).
* eat.el (eat--manipulate-kill-ring): Handle 'nil' correctly.
2023-03-28 14:05:35 +06:00
Akib Azmain Turja
135a562a20
; * README.org (Usage): Improve and link to manual 2023-01-15 22:15:44 +06:00
Akib Azmain Turja
63f23b3e50
* README.org (Straight.el): New section 2022-12-22 21:11:40 +06:00
Akib Azmain Turja
403a1d4b5d
; * README.org (Quelpa): Fix recipe ':url' 2022-12-21 01:40:35 +06:00
Akib Azmain Turja
764b075255
Fix terminfo path on case-insensitive filesystems
* eat.el (eat--terminfo-path): New variable.
* eat.el (eat-term-terminfo-directory): Change default value to
'PACKAGE-ROOT/terminfo/'.
* Makefile (terminfo): Don't depend on other targets.  Make
directory 'terminfo'.  Write terminfo to both 'e' and
'65' (hexadecimal number of ASCII 'e') directories.
* Makefile (e/eat-mono e/eat-color eat-256color e/eat-truecolor):
Remove target.
* README.org (Quelpa): Update recipe.
2022-12-21 01:05:36 +06:00
Akib Azmain Turja
94e56712e3
; * README.org (Usage): Fix Eshell instructions 2022-12-10 02:28:13 +06:00
Akib Azmain Turja
e05931d7e9
Document annotation correction delay user option
* eat.texi (Performance Tuning): Document the purpose and the
use of 'eat-shell-prompt-annotation-correction-delay' user
option.
2022-12-07 12:00:41 +06:00
Akib Azmain Turja
693940c733
* README.org: Add shell integration instructions 2022-12-07 00:29:20 +06:00
Akib Azmain Turja
226ff56932
* README.org (Quelpa): Update recipe. 2022-12-04 13:00:18 +06:00
Akib Azmain Turja
85c0c16380
Refer to NonGNU ELPA in README
* README.org (NonGNU ELPA Devel): Rename to NonGNU ELPA.
Change the code-snippet to use NonGNU ELPA (stable).
2022-12-04 01:22:47 +06:00
Akib Azmain Turja
0121c3747f
; * README.org: Fix typo. 2022-12-01 01:41:21 +06:00
Akib Azmain Turja
499c9dd911
* README.org (NonGNU ELPA Devel): New section 2022-11-28 11:39:15 +06:00
Akib Azmain Turja
0cf652a591
; Fix :url in Quelpa recipe in README.org 2022-11-25 12:30:45 +06:00
Akib Azmain Turja
ed4d4ea6de
; Fix outdated key sequences in README.org 2022-11-24 19:15:48 +06:00
Akib Azmain Turja
469b457238
; Fix typo in code in Quelpa section in README.org 2022-11-24 19:13:06 +06:00
Akib Azmain Turja
06e45d68b9
Implement the terminal
This includes everything written from 2022-08-15 up to now.
* .dir-locals.el:
* CONTRIBUTE:
* COPYING:
* Makefile:
* NEWS:
* README.org:
* eat-tests.el:
* eat.el:
* eat.texi:
* eat.ti:
* fdl.texi:
* gitlog-to-changelog:
* gpl.texi:
* make-changelog:
* texinfo.tex:
New file.
2022-11-24 14:26:03 +06:00