emacs

Consider also joining #cider, #lsp and #inf-clojure, where most of the tool-specific discussions are happening.
Gleb Posobin 2020-09-26T05:05:02.003200Z

@ericdallo How do you deal with inserting in the end of the function? When I have (let [x 10] (* x 10 |)) on the top level, where | is the position of the cursor, and I am trying to insert e.g. 20 on a new line, I press enter but the cursor just moves outside the parentheses instead of moving the closing parentheses onto the new line.

robert-stuttaford 2020-09-26T06:13:56.003700Z

asking here, just in case someone's won this battle: https://twitter.com/RobStuttaford/status/1309737412931837952

2020-09-26T06:21:15.004700Z

it's not an answer to your situation, but having tried ivy after helm, i went on to try selectrum + prescient (by the author of straight). i have been pretty happy with the result.

robert-stuttaford 2020-09-26T07:00:10.005700Z

minibuffer: that tiny section bottom of screen. full buffer: where you edit your code. i use a left+right full-height buffer system, so i want the candidate list to appear in whichever one my cursor focus isn't in, just like helm does it

2020-09-26T07:07:57.005900Z

i don't think there is built in functionality for completions to appear in anything other than the minibuffer (but i'm new to selectrum). it appears there is some external package to display completions in a child frame mentioned in this section: https://github.com/raxod502/selectrum#complementary-extensions but that doesn't sound like what you describe.

robert-stuttaford 2020-09-26T07:15:10.006400Z

ok, thank you for responding!

2020-09-26T07:28:41.006600Z

good luck in your quest :)

robert-stuttaford 2020-09-26T06:38:16.004800Z

thanks! does it support showing candidates in a full buffer?

robert-stuttaford 2020-09-26T06:38:52.005Z

because basically i love what ivy is doing, i just want it in a full buffer

2020-09-26T06:52:33.005200Z

not sure i quite get what you mean by a full buffer. don't know if this answers your question but there are some images here of what selection can look like: https://github.com/raxod502/selectrum#what-is-it

practicalli-john 2020-09-26T11:26:45.010800Z

I'm still using helm as surprsingly it still works even without a maintainer and some how there are still updated packages coming through, so for a project that has lost its author it still seems active. I'll be sticking with helm for the rest of the year and probably much longer as I would miss many of the features not present in Ivy or other simpler approaches. Spacemacs also has a good Ivy setup, so its only one configuration value to change if I ever need to. I've tried Ivy before but I miss the features and approach that helm takes.

2020-09-26T11:44:23.014900Z

if i had known about selectrum / presicent sooner i think i would have switched regardless of whatever is happening with helm. anywhere / helm is one of the key things that helped me to start using emacs again some time back, but it's nice to see that others are also providing similar takes on the basic idea. i am happy there are alternatives -- i had not experienced ivy nor selectrum before recent events, but i'm glad i tried both out.

Gleb Posobin 2020-09-26T13:24:40.017400Z

When I have `(let [x 10] (* x 10 |))` on the top level, where `|` is the position of the cursor, and I am trying to insert e.g. 20 on a new line, I press enter but the cursor just moves outside the parentheses instead of moving the closing parentheses onto the new line, so the new state looks like:

(let [x 10] (* x 10))
|
instead of the expected
(let [x 10] (* x 10
              |))
How do I disable this behavior? I am not sure what package is responsible for that, maybe parinfer? How do I figure such stuff out by myself?

Gleb Posobin 2020-09-26T13:29:57.018Z

I am using doom emacs with clojure mode, I think those lines are the relevant ones from the config I am using: https://github.com/ericdallo/dotfiles/blob/master/.doom.d/config.el#L128-L134

Gleb Posobin 2020-09-26T13:37:12.019Z

Yeah, ok, it's parinfer's fault. How do I add last elements of lists then?

Gleb Posobin 2020-09-26T13:52:53.021100Z

So apparently after entering a new line, I need to use C-f and C-b to position the cursor at the right indentation level and enter the form I want to add, according to the entry for smart-tabs here: https://github.com/DogLooksGood/parinfer-mode But when I do C-f, cursor indeed moves to the next indentation level, but quickly resets back to the start of the line.

2020-09-26T13:54:33.022200Z

i'm not really all that experienced with parinfer, but recently tried out this other implementation: https://github.com/justinbarclay/parinfer-rust-mode -- don't know if that will be any better, but fwiw. btw, there is also a #parinfer

Gleb Posobin 2020-09-26T14:15:12.023300Z

Ugh why is everything so painful with emacs... Have spent a couple of hours on this now.

dpsutton 2020-09-26T14:17:55.024400Z

Parinfer sounds like the culprit here. I’ve never seen the appeal

Gleb Posobin 2020-09-26T14:22:39.024800Z

I can't even understand where it is being added.

2020-09-26T14:22:59.025200Z

if you are using doom i highly recommend asking at the discord server

2020-09-26T14:23:07.025600Z

the maintainer gives great support

2020-09-26T16:21:15.026400Z

I would recommend that you consider disabling parinfer and trying that out for a while.