this post was submitted on 12 May 2024
29 points (91.4% liked)

Emacs

2200 readers
8 users here now

Our infinitely powerful editor.

founded 4 years ago
MODERATORS
 

I've been using konsole (and iterm2 on my work mac) for most of my working career, but on the linux side, I've recently switched to Kitty, but now I'm wondering if I can finally get used to just using emacs on both.

Does anyone use emacs as their main terminal? Is there one better than ansi-term that supports modern features like libsixel?

I still can't quite get used to the keybindings (like C-c twice for ^C) and some other weirdness.

top 18 comments
sorted by: hot top controversial new old
[–] [email protected] 8 points 6 months ago (2 children)

I haven't fully moved my terminal needs to Emacs (though I'd like to) for the same little niggles you mentioned. Just wanted to recommend another option amongst the good ones already suggested here.

https://codeberg.org/akib/emacs-eat/

[–] [email protected] 4 points 6 months ago (1 children)
[–] [email protected] 4 points 6 months ago

niggle (plural niggles)

A minor complaint or problem.

https://en.wiktionary.org/wiki/niggle

[–] [email protected] 1 points 6 months ago (1 children)

How do u toggle eat? Just a keybind to open it and close it with q?

[–] [email protected] 1 points 6 months ago (1 children)

I'm not sure I understand your question.

Eat has its own major mode which is used when you open a standalone buffer via the eat function.

When it's embedded in Eshell it mostly just does the right thing whenever you invoke a command that uses terminal control codes (e.g. htop) -- and many of those can be closed with q, yes.

I assume Eat is activated for any program listed in the eshell-visual-commands variable (but I'll admit I don't really understand how that works). The notable new minor modes present when I run htop in eshell are Eat--Eshell-Local and Eat--Eshell-Process-Running.

[–] [email protected] 1 points 6 months ago

Yeah i was just asking if you close your eat buffer with q. I really like having one button to open and close my terminal so thats why i asked. Thanks for the extensive awnser tho

[–] [email protected] 6 points 6 months ago

I more or less live in emacs on my development machine, so vterm is my main terminal

[–] [email protected] 4 points 6 months ago (1 children)

@kelvie hm... I rarely use terminal emulators anymore, I mostly use Eshell nowadays.

[–] [email protected] 4 points 6 months ago (1 children)

@kelvie many people use vterm which is in many aspects better than ansi-term.

[–] [email protected] 3 points 6 months ago (2 children)

Thanks for the rec, my first impression is that it doesn't really work well with evil-mode, but that may be my configuration error (as it is with emacs).

[–] [email protected] 8 points 6 months ago (1 children)

Vterm not working well with evil was actually my motivation to drop evil completely and embrace emacs key bindings.

It was the best decision I made. I don't perceive a any measurable impact on my ability to efficiently write code or edit text, but I've seen a significant improvement on my ability to use emacs in general

[–] [email protected] 3 points 6 months ago (1 children)

I went the other way, I've used emacs key bindings for over a decade and switched to evil because it appears most things in doom emacs worked better.

Magit is still a bit of a mess with evil, though, but is manageable.

Maybe one day I'll switch back again, but my fingers know both.

[–] [email protected] 2 points 6 months ago

If you like modal but find evil a little bit weird, try https://github.com/meow-edit/meow. Its a bit of work to set up, but once you made it yours its great!

[–] [email protected] 1 points 6 months ago

It's probably a configuration error.

As far as I remember it was working fine like a year ago when I was trying to make my own config (just vterm and evil packages were required). At the time the Doom people were saying it was impossible due to how terminal emulation works. Now it's mostly working in Doom unless you go over 1 line. If you do, you're not in a good place since you can't use ESC to jump between words.

[–] [email protected] 1 points 6 months ago (1 children)

This is a problem that I face too. I have not yet figured out how to smoothly move over my terminal workflows to vterm (running ZSH in vi mode).

I even made a post here asking for suggestions but I have not found a graceful solution to it yet.

[–] [email protected] 0 points 6 months ago

@AusatKeyboardPremi @kelvie If you use doom-Emacs, you just hit C-z to go to Emacs-state and hit it back again to go back to Evil-mode after working in a mode you think Emacs-state is more productive...

[–] [email protected] 1 points 5 months ago

Main terminal emulator, heck Emacs is my entire Window Manager!!

[–] [email protected] 1 points 6 months ago

Yes, I have been using eshell exclusively for the last 7 years. It does have a few drawbacks, but for me it's definitely a win overall due to a) everything being in a buffer, b) being able to run both elisp functions and executables from the command line, and c) tramp.

P.s. I chuckled a bit when you mentioned sixel graphics support as modern. :) Jokes aside, I have my own toy implementation of sixel graphics in elisp, so decent emacs support is probably out there already.