Fork me on GitHub
#emacs
<
2022-10-15
>
lilactown16:10:10

anyone use doom and have a replacement for spacemac's "lisp state"?

respatialized16:10:14

https://github.com/syl20bnr/evil-lisp-state It seems like it's available as a standalone library

lilactown17:10:30

the setup wasn't straightforward. looks like others are confused how to configure it https://github.com/syl20bnr/evil-lisp-state/issues/48

lilactown17:10:41

so I'm looking for if there's a "blessed" way

ag17:10:00

@U4YGF4NGM scroll through #doom-emacs there was a discussion not long ago

lilactown17:10:07

I'm trying to figure out how to use the "lispy" doom module but, the documentation is lacking

Benjamin18:10:19

I made a home inside lispy. There is also symex and a few others

Benjamin18:10:04

David Wilson recently made a stream about paredit https://www.youtube.com/watch?v=FiFMZwQbgOM

Benjamin18:10:00

here is also a list https://systemcrafters.net/live-streams/september-30-2022/ I didn't check out Puni myself yet

anonimitoraf09:10:02

I personally use symex and found it more intuitive than evil-lisp-state (but each to their own)

vemv22:10:47

I agree on the problem being solved. last Spring I came up with a different approach: https://clojurians.slack.com/archives/C099W16KZ/p1649608080276719 no need to compare of course, but I'm happy with mine because otherwise I'd end up with many useless files (at least for my usage patterns)

👍 2
lilactown21:10:20

anyone tried out meow?

catjam 1
👀 1
fedreg23:10:17

yes, it's really good!! much more lightweight than evil. Used it for a while while i was getting used to vanilla keybindings

lilactown01:10:29

I'm trying to get it to work using straight.el. for some reason, the setup code isn't working for me

(use-package meow
  :config
  (require 'meow)
  (meow-setup)
  (meow-global-mode 1))

lilactown01:10:50

Error (use-package): meow/:config: Symbol's function definition is void: meow-setup

lilactown01:10:58

ooohhh I'm an idiot, I'm supposed to define that myself

lilactown01:10:56

@U5J5ME2NQ what do you use for window management?

fedreg02:10:14

yeah.. you define your own meow-setup but it's kind of nice because all the config is right there explicitly defined in that one fn in your config. ... no magic no WM at the moment b/c I'm on Mac. i3 in the past on linux

lilactown04:10:49

sorry I meant managing windows in emacs

lilactown04:10:04

I've come pretty far in the last 3 hrs. it's a big change from spacemacs

lilactown04:10:33

I'm dissatisfied with the whole keypad thing. specifically, I can't figure out how to get it to show the name of the variable that a prefix is bound to

lilactown04:10:15

I wish I could replace the keypad with something like general.el, but there doesn't seem to be any way to turn it off

fedreg16:10:44

> sorry I meant managing windows in emacs Ah, yes, of course 😊 as for keypad I also didn't use it much, but did you see there is a discussions on the repo? They're really responsive and the lead dev, DogLooksGood is/was a clj dev so is really helpful with any cider issues as well

lilactown14:10:23

interesting, do you mainly use key chords then?

fedreg14:10:56

IIRC, keypad is just the thing that lets you replace C-x or C-c prefixes, right? And by default you get the spacebar as a replacement? I used that but just stuck a few common functions in that mapping, with the space leader. For everything else I was trying to use the vanilla keybindings. Here's the meow-setup I used back then

(defun meow-setup ()
  (setq meow-cheatsheet-layout meow-cheatsheet-layout-qwerty)
  (meow-motion-overwrite-define-key
   '("j" . meow-next)
   '("k" . meow-prev))
  (meow-leader-define-key
   ;; SPC j/k will run the original command in MOTION state.
   '("j" . "H-j")
   '("k" . "H-k")
   ;; Use SPC (0-9) for digit arguments.
   '("1" . meow-digit-argument)
   '("2" . meow-digit-argument)
   '("3" . meow-digit-argument)
   '("4" . meow-digit-argument)
   '("5" . meow-digit-argument) 
   '("6" . meow-digit-argument)
   '("7" . meow-digit-argument)
   '("8" . meow-digit-argument)
   '("9" . meow-digit-argument)
   '("0" . meow-digit-argument)
   '("/" . meow-keypad-describe-key)
   '("b" . ido-switch-buffer)
   '("f" . ag-project)
   '("g" . magit-status)
   '("G" . magit-blame-echo)
   '("l" . switch-to-previous-buffer)
   '("o" . other-window)
   '("z" . fzf-find-file)
   '(";" . comment-line)
   '(">" . sp-forward-slurp-sexp)
   '("<" . sp-forward-barf-sexp)
   '("?" . meow-cheatsheet))
  (meow-normal-define-key
   '("0" . meow-expand-0)
   '("9" . meow-expand-9)
   '("8" . meow-expand-8)
   '("7" . meow-expand-7)
   '("6" . meow-expand-6)
   '("5" . meow-expand-5)
   '("4" . meow-expand-4)
   '("3" . meow-expand-3)
   '("2" . meow-expand-2)
   '("1" . meow-expand-1)
   '("," . meow-inner-of-thing)
   '("." . meow-bounds-of-thing)
   '("[" . meow-beginning-of-thing)
   '("]" . meow-end-of-thing)
   '("/" . isearch-forward)
   '(";" . meow-reverse)
   '("'" . repeat)
   '("a" . meow-append)
   '("A" . meow-open-below)
   '("b" . meow-back-word)
   '("B" . meow-back-symbol)
   '("c" . meow-kill)
   '("e" . meow-find)
   '("f" . meow-next-word)
   '("g" . meow-cancel-selection)
   '("G" . meow-grab)
   '("h" . meow-left)
   '("H" . meow-left-expand)
   '("i" . meow-insert)
   '("I" . meow-open-above)
   '("j" . meow-next)
   '("J" . meow-next-expand)
   '("k" . meow-prev)
   '("K" . meow-prev-expand)
   '("l" . meow-right)
   '("L" . meow-right-expand)
   '("n" . meow-search)
   '("o" . meow-block)
   '("O" . meow-to-block)
   '("p" . meow-yank)
   '("q" . meow-quit)
   '("Q" . meow-goto-line)
   '("r" . meow-replace)
   '("t" . meow-till)
   '("u" . meow-undo)
   '("U" . meow-undo-in-selection)
   '("v" . meow-visit)
   '("w" . meow-mark-word)
   '("W" . meow-mark-symbol)
   '("x" . meow-delete)
   '("V" . meow-line)
    '("<escape>" . mode-line-other-buffer))) 
(now I use God mode instead)

fedreg14:10:11

I thought there was some advanced usage of keypad but I never dabbled in it. Didn't have a use for it, I guess

lilactown15:10:42

cool, thanks!

lilactown15:10:10

I've started my journey building my own emacs config, based around meow and straight.el

lilactown15:10:03

I've been using spacemacs for a few years now. never used god mode

lilactown15:10:34

what led you to choose god mode?

fedreg15:10:23

I also started with spacemacs about 5 years ago (coming from Vim) but pretty quickly made my own config with heavy use of evil, general, etc... This worked great for a while but eventually I got sick of all the places where evil wasn't supported (even with evil-collection...) or where I needed to debug something.. and so wanted to get more familiar with native Emacs bindings.. It was too hard to go full on vanilla emacs after so long with vim bindings so tried Meow for a while (having also played with kakoune for a bit...) which I really enjoyed but it was always just going to be a stepping stone on the path to vanilla bindings. God-mode is a tiny package (maybe 600 loc..) that just makes it so you don't have to hold down modifier keys... So instead of doing C-f, C-b to move, i just do f or b etc.. And it's somewhat modal in that you go in and out of it to insert text but light enough that you always learn the underlying native keybindings. Keeps my config pretty small and makes it easier to pair with non-evil teammates