spacemacs

Spacemacs docs: http://develop.spacemacs.org/doc/DOCUMENTATION.html http://develop.spacemacs.org/layers/+lang/clojure/README.html https://practicalli.github.io/spacemacs/
Gleb Posobin 2021-02-05T03:19:33.072300Z

You can send a SIGUSR2 to emacs, it might stop what it's doing and print out a trace, but not guaranteed though if it is stuck in some C-code.

caumond 2021-02-05T07:30:10.072500Z

@viebel, maybe I wasn't clear. I experience the same issues as you. A few weeks ago I had a blinking issues with the emacsformacosx version, and @jr0cket found other people with the same issue. So I moved to the brew version. The first I tried recommended by spacemacs for macos lead me also to the same issue, emacs not responsive at all, until I kill the process. I didn't spend time to try to find out where it come from. The bug seems random to me. My spacemacs.d directory is a fork with small changes from the practicalli's one, quite standard. All that details to tell, there may be other solutions, maybe the other emacs brew version.

Yehonathan Sharvit 2021-02-05T07:57:50.072700Z

Thank you for the clarification

Yehonathan Sharvit 2021-02-05T07:59:00.072900Z

I found a workaround for the case where the irresponsiness is caused by CIDER Repl buffer. Run emacsclient to open a new emacs frame. Kill the REPL buffer

mccraigmccraig 2021-02-05T11:08:35.078300Z

so, frustrated by spac/emacs instability (generally poor performance, occasional crashes, and hangs on wide files and large repl output), i went as far as trying vscode for a couple of weeks, and it's not bad. it's certainly a lot more stable, and there are loads of good extensions. but CIDER is quite a lot better than calva, and pervasive helm is so much better than vscode's grab-bag of different UI for different nav tasks, and emacs windows and layouts are just great &c so i'm wondering - has anyone had any success with making spac/emacs (on macos) more stable ? e.g. are some versions better than others wrt crashing and wide files, are there any helpful tricks ?

☝️ 2
prnc 2021-02-06T15:49:44.096700Z

I’ve seen reports of DOOM Emacs being better in those areas, haven’t tried myself

emilaasa 2021-02-07T07:43:22.101700Z

Conjure and neovim works well on a tortured macbook pro at the moment.

emilaasa 2021-02-07T07:44:27.101900Z

I haven't played around with lsp too much yet, we'll see what happens in a large codebase with lsp.

emilaasa 2021-02-07T07:45:02.102100Z

The primary reason I use neovim instead of spacemacs or cursive is the performance which is great.

Yehonathan Sharvit 2021-02-09T19:21:00.104900Z

How could it be that Emacs is not stable?

practicalli-john 2021-02-09T19:24:00.105100Z

For me, Emacs has stable on Linux for the last decade. Even running nightly builds of Emacs 28 last year was stable for the few months I used them. I wonder if it's some other factor?

practicalli-john 2021-02-09T19:36:09.105600Z

Emacs has been stable on Linux for me for the last decade, not sure how much more stable you are looking for. Most likely causes of instability are packages or the distribution of Emacs used conflicting with changes to an operating system. Its not that surprising to see issues with those running the new hardware and software for MacOSX, as thats a really big change. As MacOSX is a commercial operating system, its probably not surprising that less testing gets done upon it. This could be a source of issues.

mccraigmccraig 2021-02-09T20:09:17.119300Z

@viebel :man-shrugging: i was having hard crashes every week or so, not sure why. performance is awful when a repl dumps a load of stuff, leading to pauses and sometimes crashes, and wide lines also lead to very poor performance

mccraigmccraig 2021-02-09T20:10:14.119500Z

I'm trying a different build now... i was on railwaycats, now trying brew/emacs+ ... will see if that's any better

Yehonathan Sharvit 2021-02-09T20:13:55.119700Z

@jr0cket is there a way to limit the size of the REPL buffer size?

practicalli-john 2021-02-09T20:14:37.119900Z

cider-repl-buffer-size-limit with an integer value will limit the repl output. 1000 should be okay. I have it set to 100 as I dont use the REPL buffer in Cider directly It can either be a setq in dotspacemacs/user-config or add it as a clojure layer variable

(clojure :variables
              clojure-backend 'cider
              clojure-enable-linters 'clj-kondo
              clojure-toplevel-inside-comment-form t
              cider-overlays-use-font-lock t
              cider-repl-buffer-size-limit 100)

practicalli-john 2021-02-09T20:22:03.120300Z

Avoid sending logs to the REPL buffer, especially if the logs generate proper log objects or very long strings... It wont take many lines of those to start to slow down Emacs.

Yehonathan Sharvit 2021-02-10T06:40:58.121100Z

1. cider-repl-buffer-size-limit doesn’t work 2. How do we avoid sending logs to the REPL buffer?

practicalli-john 2021-02-11T09:10:18.123400Z

There is a suggestion in #emacs as to stable versions to use on MacOSX https://clojurians.slack.com/archives/C099W16KZ/p1613009517053300

mccraigmccraig 2021-02-11T09:17:14.123700Z

thanks @jr0cket - i've been using the brew/emacs+ bottled version for the past few days, and haven't had any crashes yet

👍 1
grazfather 2021-02-05T18:49:04.080300Z

I am with you. I like emacs but the hangs, crashes, and general slowness are hard to deal with. I still find if i need to get something edited quickly it’s a lot nicer just using Vim

👍 2
2021-02-05T18:52:30.080400Z

Thanks for the report on vscode. I was thinking about trying that out for similar reasons. I know a lot of the Clojure community is using intellij. I don't know if that's because it's really good or just people coming from java are familiar with it. Have you tried that one?

mccraigmccraig 2021-02-05T19:02:24.082Z

i've used intellij for java plenty... it has great refactoring support, but i don't like it 😃

mccraigmccraig 2021-02-05T19:07:45.084800Z

i've gone back to spacemacs for now - the CIDER test loop is so much better i'm just more productive. i'm also trying a new emacs build - https://github.com/d12frosted/homebrew-emacs-plus from homebrew (i was previously on railwaycat) so we'll see how that goes

2021-02-05T20:42:07.085300Z

Too bad, I was hoping Cursive would be as good as cider. fwiw, I haven't had too many performance issues with https://emacsformacosx.com/. Or, at least, I blame my performance issues on the number of web browser tabs I have open. 🙂

practicalli-john 2021-02-05T22:13:23.094600Z

Cursive seems relevant if you have a deep knowledge of using IntellJ and mostly code by static analysis of code rather than REPL. I have met quite a few developers using Cursive that never used the REPL. Calva is focusing a lot more on static analysis as it's building on LSP. I wonder if the repl will be used less with Calva too. I haven't found anything better than Cider for doing REPL driven development, although Conjure plugin for NeoVim is very good. So apparently is vim-iced.

mccraigmccraig 2021-02-05T22:37:46.095400Z

i haven't tried to use cursive @bmaddy, so i can't comment on it - i'm pretty clear i don't want to use intellij, so i've not bothered with it. others may feel differently ofc

👍 1
mccraigmccraig 2021-02-05T22:38:40.095600Z

i'm generallly very happy with CIDER's functionality - it's just emacs instability that winds me up sometimes

mccraigmccraig 2021-02-05T22:42:28.095800Z

calva does use lsp, but lots of stuff still seems to require a repl @jr0cket . its repl is ok, and code navigation through definitions and references etc is really nice. i tried to use it for a test driven workflow though, and the test runner feedback is quite deficient compared to CIDER's

mccraigmccraig 2021-02-05T22:44:50.096Z

i might give conjure and vim-iced a spin... i've never really tried serious editing with vim, but stuff like this makes me want to try it out : http://takac.github.io/2013/01/30/vim-grammar/