Idea: next generation emacs: Difference between revisions
(Created page with "I'm not the first to think of this, but it's worth putting down on paper my thoughts here. Let's start with a problem statement. You open emacs, it takes a while, then it sho...") |
No edit summary |
||
Line 3: | Line 3: | ||
Let's start with a problem statement. You open emacs, it takes a while, then it shows this super tiny ui that has a janky button feel and confusing keyboard nav. The keyboard shortcuts are totally out of line with OS-standard keys. The customization language is emacs lisp. |
Let's start with a problem statement. You open emacs, it takes a while, then it shows this super tiny ui that has a janky button feel and confusing keyboard nav. The keyboard shortcuts are totally out of line with OS-standard keys. The customization language is emacs lisp. |
||
[[File:Emacs default UI on windows.png|thumb|look at this shit]] |
[[File:Emacs default UI on windows.png|thumb|look at this shit]]Yet it's the best IDE I've used, because it's so configurable. |
||
Let's focus on a couple specific issues. |
|||
Date representation. For example you call `(current-time)` and you get a list of 4 numbers, `(25598 19903 350786 0)`. Like what a simple object representation system. (simple is good tho right? ;) Ok but actually date representation doesn't matter much, it's an editor after all... |
|||
Since emacs lisp is such a bespoke language, it doesn't have a standalone interpreter support / library for evaluating expressions. You gotta open up emacs itself. |
|||
But you can access a standalone emacs repl like so: |
|||
`emacs -nw --eval '(ielm)'` |
|||
but then the standard keybindings to get to the last input etc don't work, you have to use m-n and m-p (https://lists.gnu.org/archive/html/help-gnu-emacs/2020-12/msg00678.html) or you can rebind it. So we start looking down the rabbit hole of emacs customization just like that! |
Latest revision as of 23:55, 28 February 2023
I'm not the first to think of this, but it's worth putting down on paper my thoughts here.
Let's start with a problem statement. You open emacs, it takes a while, then it shows this super tiny ui that has a janky button feel and confusing keyboard nav. The keyboard shortcuts are totally out of line with OS-standard keys. The customization language is emacs lisp.
Yet it's the best IDE I've used, because it's so configurable.
Let's focus on a couple specific issues.
Date representation. For example you call `(current-time)` and you get a list of 4 numbers, `(25598 19903 350786 0)`. Like what a simple object representation system. (simple is good tho right? ;) Ok but actually date representation doesn't matter much, it's an editor after all...
Since emacs lisp is such a bespoke language, it doesn't have a standalone interpreter support / library for evaluating expressions. You gotta open up emacs itself.
But you can access a standalone emacs repl like so:
`emacs -nw --eval '(ielm)'`
but then the standard keybindings to get to the last input etc don't work, you have to use m-n and m-p (https://lists.gnu.org/archive/html/help-gnu-emacs/2020-12/msg00678.html) or you can rebind it. So we start looking down the rabbit hole of emacs customization just like that!