summaryrefslogtreecommitdiffstats
path: root/2023/talks/eat.md
blob: 9d7d14d8688c6ae7dd0b98856e9066d1f7716c63 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
[[!meta title="Eat and Eat powered Eshell, fast featureful terminal inside Emacs"]]
[[!meta copyright="Copyright © 2023 Akib Azmain Turja"]]
[[!inline pages="internal(2023/info/eat-nav)" raw="yes"]]

<!-- Initially generated with emacsconf-publish-talk-page and then left alone for manual editing -->
<!-- You can manually edit this file to update the abstract, add links, etc. --->


# Eat and Eat powered Eshell, fast featureful terminal inside Emacs
Akib Azmain Turja (he/him) - IRC: akib, <https://akib.codeberg.page>
Fediverse: akib@hostux.social, <mailto:akib@disroot.org>

[[!inline pages="internal(2023/info/eat-before)" raw="yes"]]

Eat is a terminal emulator for Emacs, written in pure Emacs Lisp.  It
can run most (if not all) terminal programs.  Despite being implemented
in Emacs Lisp, it is fast enough for day-to-day uses.

In this talk, I'll give an overview of Eat, its features and
configuration.  I'll show the most useful features and the features that
make Eat unique (e.g. shell integration, mouse tracking, Sixel support).
(This may include features that hasn't been implemented yet but will be
implemented and stable enough by the time of the recording of the talk.)
Most of the features require no configuration to use, but are
configurable with user options.  I'll also show the most useful
customization options available that users may want to customize or
tinker with.

Thanks to the architecture of Eat, Eat can emulate terminal within any
region of a buffer.  Therefore, Eat can be integrated with Eshell.  I'll
show how to integrate Eat with Eshell, and the useful Eshell-specific
features and configuration.

Then, I'll compare Eat with other terminal emulators available for
Emacs, and I'll show which feature that Eat has but the other doesn't,
and which feature Eat lacks.  I'll show why Eat is good or bad for some
users/use cases.  For example, why Shell mode users may prefer Coterm (a
terminal emulator for Comint) over Eat, why Eat is better Term mode in
the most cases, or why Vterm should be prefered for huge bursts of
outputs, etc.

Then I'll give pointers to the documentation available like the Info
manual or README and what they contain.  And I'll also discuss what to
do when you hit a problem.  I'll discuss about the common problems or
misconfiguration, and also discuss where and how to report bugs
properly.  I won't go into much details in this part, since the manual
covers this topic completely, and the users are expected to not
encounter problems.

Then I'll discuss the future plans of the project.  And finally, I'll
conclude the talk with a summary of the whole talk.

Outline:

-   Introduction: What's Eat and why?
-   Installing Eat from NonGNU ELPA
-   Demonstrating Eat's features and configuring them
-   Eshell integration
-   Comparison with other terminal emulators
-   Shortcomings and common (fixable) problems
-   Future plans
-   Conclusion



[[!inline pages="internal(2023/info/eat-after)" raw="yes"]]

[[!inline pages="internal(2023/info/eat-nav)" raw="yes"]]