3 ms·
I wonder whether there's any discussion around addressing the elephant in the room: big config files. Is there any work towards making Emacs be usable immediat
by k_bx 6y ago
I wonder whether there's any discussion around addressing the elephant in the room: big config files.
Is there any work towards making Emacs be usable immediately, while config being loaded asynchronously in background, adding features like syntax highlighting without blocking the main editing experience?
- fiddlerwoaroof 6y agouse-package already has a way to defer configuration until it’s needed.
- k_bx 6y agoYes, I'm certainly using that, but it's far from being enough to make emacs-with-config a usable replacement for the in-terminal editor.
- fiddlerwoaroof 6y agoIt’s probably not what you want to hear, but I just use emacsclient for that. I agree that the startup time is annoying, though.
- k_bx 6y agoYes, I just use "emacs -nw -q" (aliased as eq) when in terminals, and it's surprisingly good most of the time. But having good startup time always would make a huge difference imho, including Emacs's popularity.
- natrys 6y agoParent is talking about using "emacsclient". Basically you start Emacs in daemon mode (e.g. add "(server-start)" at end of config), and you never kill it. You just pay slow startup cost once, any subsequent client invocation after that is instantaneous.
- k_bx 6y agoI understand. I use it for my git commit editing in my “master” emacs. It’s just not usable when you want multiple instances in different tmux windows
- fiddlerwoaroof 6y agoI have this little handy shell function for that: semacs () { emacs --eval "(setq server-name \"$1\")" --daemon } `semacs foo` then starts an emacs server named foo and and `emacsclient -s foo -c` attaches to it.
- zelly 6y agoI've used use-package to get my startup time from 10-20 seconds to <500 ms. (But to be fair I did trim a lot of useless cruft.)
- jmnicolas 6y agoI don't use Emacs but is loading perf still a concern in this age of SSD ubiquity ?
- k_bx 6y agoWould be nice to know some stats, of course. I suspect that for most people it’s pretty bad and disk isn’t the limiting factor.
- slightwinder 6y agoNot really. The dominent solution nowadays is to use starterpacks/distributions of emacs-configurations. Spacemacs and doom-emacs are pretty popular. Emacs-Project itself is rather conservative in that regard. Vanilla-Emacs is still ugly has hell and not much different from decades ago. There are voices who demand to lean more toward VS Code in that aspect, so maybe in another 10+ years emacs will finally innovate itself there.
- k_bx 6y agoMain use-case here is to open emacs in terminal (emacs -nw) for a quick edit. Emacs in terminal doesn't look ugly at all (because of lack of GUI), and is quite usable without config actually (that's how I'm using it for quick edits, "emacs -nw -q"), but modes and configurations would be definitely helpful to have without sacrificing time-to-edit.
- zarkov99 6y agoemacs --daemon/emacsclient solves that for me. Emacs doom, which is sort of custom distribution of emacs, also solves this problem in another way by carefully optimizing startup times. Either way, its a solved problem.
- sufyanadam 6y agoThis elephant was addressed long ago by Jon Wiegly's use-package.
- k_bx 6y agoI’d bet my money that most people (esp those using spacemacs) have multi-second time-till-edit still.