[a / b / c / d / e / f / g / gif / h / hr / k / m / o / p / r / s / t / u / v / vg / vm / vmg / vr / vrpg / vst / w / wg] [i / ic] [r9k / s4s / vip / qa] [cm / hm / lgbt / y] [3 / aco / adv / an / bant / biz / cgl / ck / co / diy / fa / fit / gd / hc / his / int / jp / lit / mlp / mu / n / news / out / po / pol / pw / qst / sci / soc / sp / tg / toy / trv / tv / vp / vt / wsg / wsr / x / xs] [Settings] [Search] [Mobile] [Home]
Board
Settings Mobile Home
/g/ - Technology


Thread archived.
You cannot reply anymore.


[Advertise on 4chan]


File: emacs.png (153 KB, 1024x1024)
153 KB
153 KB PNG
for me it's
multithreading
non blocking LSP
more treesitter modes
better scrollbar (yes I use it)
ability to scroll without moving the point
the ability to hide the echo area when not in use
a few small minute fixes and changes to the default face

the following are very opinionated
vertico+marginalia+consult+orderless+embark included in core emacs
corfu included in core emacs
some structured navigation and editing package included in core emacs
>>
>>100070945
I want to see it rewritten in Rust instead of an outdated unsafe language like Lisp.
>>
>>100070987
YWNBAW
>>
Guile Emacs
https://www.emacswiki.org/emacs/GuileEmacs
>>
>>100070987
that's lame

>>100070995
based, that would be based af
elisp is rough
>>
>>100071017
>>100070995
The issue is it would need to keep around the elisp code along with the guile embed. Then again, that's not much of an issue because if you really needed they could just hide guile behind a compiler flag
>>
>>100070995
wow they've been trying to do that since 2000
and the last person who tried working on it has abandoned it
>>
The LSP situation is such a joke and hopefully it gets fixed someday, but I won't be holding my breath. The fact that the builtin LSP backend doesn't support half of the features to avoid lag is insane. Also don't forget to take your chinese LSP booster medicine. The only reason I didn't jump editors is due to xah-fly-keys
>>
>>100070945
>ability to scroll without moving the point


I assume you mean you want to scroll without keeping the point on the screen. This is impossible to fix. sorry.
>>
>>100070945
it needs to drop lisp and use javascript instead
>>
>>100070945
better bar
better terminal (fuck hardcoded bash even vim can support other shell in windows ootb)
better expand selection ootb
less writing when configuring something (emacs 29 is going in right decision in this part, i want to see we can get almost same level as vscode in next version)
>>
File: hello-hurd.gif (49 KB, 607x419)
49 KB
49 KB GIF
>>100072404
Yeah, but now Guix is a Thing™. I think it will happen at some point.
>>
vi/vim mode
>>
>>100074131
why is it impossible to fix?

>>100073611
can you elaborate? what's the issue with eglot besides being slow af?
what features aren't implemented yet?
>>
scheme emacs
>>
>>100074936
emacscheme?
>>
>>100076951
schemacs
>ack!
>>
File: file.png (100 KB, 236x250)
100 KB
100 KB PNG
>>100070945
what would be really fucking great, is if they moved to an actual forge and dropped the outdated, difficult to search, convoluted mailing list. it is 20 fucking 24.

i just discovered an old elisp package that makes my workflow like 20x easier and the only reason i couldnt find it was that the mailing list isn't parsed well by search engines because it's a fucking mailing list.
if this was an issue on codeberg/gitea/whatever the fuck i could find it instantly.

neovim is dominating the autist-programming-environment market and it's pretty much only because it's on a normal website
> lua is harder to understand than lisp
> most nvim packages have a superior direct analog in emacs
> evil is virtually flawless so muh keybinding differences dont matter anymore
> better package managers

the only reason people dont use emacs is because they have no idea what the fuck it is, i'm convinced. and the reason for that is there is no centralized repository on a platform of the style standardized by almost every other open source project by now. if the project is really supposed to be "open source" and democratically managed, it should be on a platform the people prefer. that platform is not and has not been mailing lists for decades, period.
>>
>>100070945
>multithreading
Yes, but good luck. Emacs uses shared mutated state everywhere, so making it multithreaded would be as strenuous as a rewrite.
>non-blocking LSP
That would certainly be great
>more treesitter modes
I don't use treesitter, I have no opinion
>better scrollbar
emacs has a scrollbar? I can't remember even disabling it in my config. I guess I did many years ago
>ability to scroll without moving the point
I assume you mean with the mouse, again I have no opinion
>the ability to hide the echo area when not in use
I never even thought of this. I don't like the idea of it opening as another window though, because it would constantly change the size of the bottom window/s. That would be jarring. Is there some other way you were thinking of implementing this?
But I can see why someone would want it, cool idea
>a few small minute fixes and changes to the default face
I don't even notice desu. If you pointed stuff out to me I might agree with you

opinionated stuff:
>vertico+marginalia+consult+orderless+embark included in core emacs
I disagree, I'm glad they are external packages.
I use ivy now, but I think the options should be external to emacs. It keeps the core smaller.
>corfu included in core emacs
Same as above, should be external to keep the core manageable
>some structured navigation and editing package included in core emacs
Again, probably just make it an external package.


These are the things I want:
Extremely long lines completely fixed
Native comp improvements so that everything actually works like it should
The ability to pipe standard input into emacs without creating a temporary file in order to make a temporary buffer. Emacs being able to understand OS pipes would be amazing.
The default interface of emacs should be updated. Everyone knows it should, nobody is doing it.
>>
>>100070945
>multithreading
Don't hold your breath
>non blocking LSP
While not the same, you can check out lsp-booster. And Emacs 30 has faster json parsing.
>more treesitter modes
Coming. TS is being pushed pretty hard desu.
>the ability to hide the echo area when not in use
Test writeroom mode
>a few small minute fixes and changes to the default face
Just do it yourself
>vertico+marginalia+consult+orderless+embark included in core emacs
Agreed. This will probably come at some point, or similar packages. Emacs is lagging in these areas. They are also things that most people use (or similar packages) and they can be annoying to set up.
>corfu included in core emacs
Isn't corfu buggy shit? I use Company.
>some structured navigation and editing package included in core emacs
Which one(s)? There are many and people use different ones. I disagree here, too difficult to find common ground and many people don't need it.
>>
>>100077672
> evil is virtually flawless so muh keybinding differences dont matter anymore
Cope, neovim's strength is that the keybindings are universal across plugins. evil-collection doesn't even work if you bind a motion key to non-motion key (lmao). I mean look at this shit
https://github.com/emacs-evil/evil-collection?tab=readme-ov-file#guidelines
Extensible my ass.

>>100074765
>can you elaborate? what's the issue with eglot besides being slow af?
what features aren't implemented yet?
You can't search for symbols or even get a list of symbols. It's very useful if you want an outline of classes and their methods. Another benefit is that it's much more effective than grep at finding classes/methods/variables etc.
>>
>>100078508
> doesn't know about the global map
> didn't even understand the first paragraph of the linked post
you are a perfect example of my point. maybe reading comprehension is what's preventing emacs's adoption.
>>
>>100078612
except in neovim they ARE applied universally, which is my point. Dired doesn't work with arbitrary rebinds, but oil.nvim does.
>>
>>100070945
global modeline
>>
>>100077672
Evil is so trash, what the fuck are you smoking? It just makes emacs inconsistent as fuck.
>>
>>100078176
>Isn't corfu buggy shit? I use Company.
it's not, I use it every day with cape. company is great too just less modular.
corfu, cape, vertico, consult, marginalia are made from the same guy (he also heavily contributed to orderless and embark) so it's pretty lean.
>>
>>100080106
can you recommend more similar modular plugins from the same guy/community?
I know about tempel for snippets. but nothing else
>>
File: 1709025568773732.gif (194 KB, 404x416)
194 KB
194 KB GIF
>>100070945
>multithreading
Meme
>non blocking LSP
Already a thing, use eglot
>more treesitter modes
You can literally write them yourself or use anything you find on the internet
>better scrollbar (yes I use it)
meh okay
Learn how to modify faces pleb
>ability to scroll without moving the point
Already a thing, noob
>the ability to hide the echo area when not in use
Already a thing
>a few small minute fixes and changes to the default face
Irrelevant
>vertico+marginalia+consult+orderless+embark included in core emacs
Get on it, then. It's not going to happen unless you get a FSF thingy from every contributor ever
>corfu included in core emacs
same
>some structured navigation and editing package included in core emacs
meme
Just use MELPA nigger and complete the fucking tutorial
>>
File: 1656695687560.jpg (104 KB, 704x536)
104 KB
104 KB JPG
>>100074447
>better bar
>better terminal (fuck hardcoded bash even vim can support other shell in windows ootb)
>better expand selection ootb
>less writing when configuring something (emacs 29 is going in right decision in this part, i want to see we can get almost same level as vscode in next version)
noob issues
Use vterm, I don't know "bar" is, install something for expanding selection and go learn elisp, it's been stable for 30 years
>>100074655
Already included in core emacs
>>100079318
>>100078508
Evil works pretty well you're just nolispers
>>100077672
Being afraid of mailing lists is for noobs
what package did you find?
>>100079285
Use the info bar
>>100077952
>Extremely long lines completely fixed
There's no issue there
>Native comp improvements so that everything actually works like it should
Everything works perfectly, PEBCAK.
>The ability to pipe standard input into emacs without creating a temporary file in order to make a temporary buffer. Emacs being able to understand OS pipes would be amazing.
Why? Seriously.
>The default interface of emacs should be updated. Everyone knows it should, nobody is doing it.
Meme shit, means nothing. "Default interface", what the fuck does that mean? UI? Keyboard access? Mouse events?
>>100074632
>>100070995
There's no fucking point elisp is fast enough
>>
>>100080706
https://github.com/minad
>>
>>100082782
>non blocking lsp is already a thing
no. eglot and lsp-mode are both painfully slow
>write your own treesitter modes or download them
the less packages I have to download the better
>modify scrollbar face
the modifications are very limited and you can't control it that much (on linux at least)
>the ability to scroll without moving the point is already a thing
false. I am not talking about smooth scrolling
>the ability to hide the echo area is already a thing
false. there are packages that display the stuff usually shown on the modeline in the echo area and hide the modeline. but that's not what I want
>small minute face changes are irrelevant
no. for literally decades emacs used a horrible background color for selection and it was only fixed the last release.
>try get vmcoei an corfu into core emacs
I am not an emacs maintainer, the guys who make those plugins are. and they are not interested in pushing them on emacs devs.
>structured navigation and editing is a meme
no. it's one of the most useful features in a code editor.

>use melpa
no thanks. all i need is gnu elpa and nongnu elpa
>tutorial
completed years ago
>>
I wish ELPA/MELPA packages had actual names rather than puns and jokes.
This is ok:
>web-mode
It tells you exactly what the package does and its purpose.
>bbyac
What the fuck does it do? If you type <M-x> and see this what would you think it is?
Even RMS himself complained about this autism. Thanks to those neovim baseddevs we are now full of shitty packages that does basically nothing other than puns and jokes.
>>100077672
>the only reason people dont use emacs is because they have no idea what the fuck it is
We don't need new users making a mess of the MELPA repos.
>>
File: 1634918353331.gif (1.88 MB, 231x255)
1.88 MB
1.88 MB GIF
>>100084185
>s''oy''devs now filters to baseddevs
Ok, maybe it is time for me to leave this place. It was good until 2011, anons.
>>
>>100084332
>now
It's been almost six years anon
>>100083779
eglot is pretty fast.
You can just download packages once. It's called the internet and a SSD.
Disable scrollbar.
I wasn't talking about smooth scrolling either.
Just use the echo area modeline package. Disable the modeline.
Themes have been pretty consistent in emacs, backgrounds have forever been customizable
I never said they're a meme. I mean your refusal to use free software that solves your issues is a meme.
>>
File: file.png (445 KB, 720x900)
445 KB
445 KB PNG
>>100070995
>Guile
In Guile-Emacs it is possible to launch any number of threads executing Scheme, but this doesn’t solve the problem that Emacs is full of thread-unsafe data structures and global resources, so programming an Emacs extension using concurrent Scheme code might prove to be full of unexpected roadblocks and pitholes. Some Elisp functions even abuse the single-threaded nature of Emacs, mutating global resources then mutating them back to give the illusion of referential transparency, so nonchalant usage of Elisp APIs from concurrent code remains problematic.
>>
>>100078756
>Dired doesn't work with arbitrary rebinds, but oil.nvim does.
But they do. Show me your code.
>>
>>100070945
the main thing is multthreading, it would make exwm (and any future exwc) viable
also i want all the treesitter modes to be replaced with a global minor mode
>>
>>100085041
>also i want all the treesitter modes to be replaced with a global minor mode
Do you mean you want treesit-auto?
>>
>>100085377
i suppose but i don't like messing with auto mode alist, feels "dirty" to me since i have to move custom hooks over as well
it also feels redundant to have a c-ts-mode when we already have a c-mode, why not just add ts as a global minor mode and hook it in as needed?
i think the old treesitter package worked like that
>>
>>100070945
I dropped Emacs about a year ago after I got tired of sluggish LSP performance. If I used Corfu/eglot with a low enough delay/prefix length, there would be noticeable stutter frequently throughout my coding.
Not anymore. Some rando posted this absolute godsend setting:

(fset #'jsonrpc--log-event #'ignore)

I have Corfu delay set to 0, and prefix set to 1, and there is absolutely zero stutter when using LSP. It looks like the log events were adding a crazy amount of overhead.
gonna take me a bit of time to get used to it again but feelsgood. I actually enjoyed my time using helix/wezterm, but it's not a true replacement for a customizable IDE like Emacs. Especially now that Dape is a thing and I can use debug adapters with Eglot.
>>
>>100077952
who doesn't hide the default interface? it's literally useless
>>
>>100079318
this, just learn the vanilla bindings. palm press ctrl and you're chillin
>>
Why are you guys even using LSP, just stop programming in blublangs and fully embrace Lisp. All problems solved.
>>
>>100086156
But Cider + lsp is peak
>>
File: file.png (1.19 MB, 1280x720)
1.19 MB
1.19 MB PNG
>>100086156
I need to work in order to get money. I can't NEET all day.
>>
>>100086017
Wow, that'll be useful. Thanks anon
>>
Dedicated render thread

>>100070987
Some troops already tried and abandoned it
>>
>>100086049
I don't. I like the menu bar and scroll bar.
the menu bar is contextual (changes depending on the mode) and very useful. I discovered many obscure emacs features through it.

the tool bar is not useful for me. so i disable that.
>>
>>100088758
np anon, hope it's as useful to you as it was to me
>>
>>100070945
Rewrite in C++. Fuck lisp. Even though I like the syntax.
>>
>>100094419
the core is already in C
>>
I want a UI to bind keys like which-key, showing current bindings and free keys, but allowing binding and saving the bindinds permanently.
>>
>>100070945
No need for fancy new shit, just keep ironing out existing bugs and improve performance. Quality is better than quantity.
>>
>>100086551
If you only program for a paycheck, your opinion on any programming topic is irrelevant.
>>
>>100077672
>neovim is dominating the autist-programming-environment market and it's pretty much only because it's on a normal website
???
https://www.gnu.org/software/emacs/
>>
>>100070945
Try out lsp booster / eglot booster anon, it is very helpful in preventing random deadlocks

Also, increase your GC threshold
>>
>>100077672
Doom Emacs is great and should be shilled more.



[Advertise on 4chan]

Delete Post: [File Only] Style:
[Disable Mobile View / Use Desktop Site]

[Enable Mobile View / Use Mobile Site]

All trademarks and copyrights on this page are owned by their respective parties. Images uploaded are the responsibility of the Poster. Comments are owned by the Poster.