On 2024-11-05 13:43, jgart@disroot.org wrote:
> Hi Andrew,
>
> Hope all is well with you! :)
>
> Below follows some initial discussion and questions I have before I
> start hacking on a v2 for this feature.
>
>> I think meow deserves it's own module, so layouts, feature and all
> related stuff can be defined in it.
>
> Sounds good. I'll do that in v2.
>
>> Package should provide autoloads, or we can create our own if it
>> doesn't
> and use them to initialize package.
>
> I'll look into that in v2.
>
>> This should be done in eval-after-load to allow lazy-loading.
>
> I'll look into that in v2.
>
>> This one should be done in after-init-hook to reduce startup time.
>> Like this:
> https://git.sr.ht/~abcdw/rde/tree/11fb136c/src/rde/features/keyboard.scm#L146
>
> I'll look into that in v2.
>
>> % prefix is intended for private variables, so if it's supposed to be
> used by end user, it's better to remove the % from the name.
>
> I missused this prefix a couple times in RDE, but I try to get rid of
> it, when I encounter it in codebase.
>
> I'll revise that in v2.
>
>> Additional el and packages are not needed, ideally we have to expose
>> via
> RDE values another service-type to extend, so any other feature or user
> can contribute to
> it.https://git.sr.ht/~abcdw/rde/tree/11fb136c/src/rde/features/emacs-xyz.scm#L828
>
> Regarding this one. meow is a bit special in the sense that people
> regularly extend meow with other packages and config.
>
> See this example by a meow user where they leverage combobulate:
>
> https://github.com/meow-edit/meow/discussions/448#discussioncomment-11023398
>
> See this early version of feature-emacs-meow where I use avy and
> expand-region packages with additional meow specific configuration for
> them:
>
> https://git.sr.ht/~whereiseveryone/confetti/tree/aacfd65d6be00ee70194d9fc2aa5eb574072a679/item/conf/confetti/features/meow.scm
>
> I'd like to support such ease of configuration.
>
> How do you think we can best support such configurations?
>
> Any advice on design decisions here would be much appreciated. This is
> my blocker currently. Thanks!
It seems that the approach I mentioned is good enough for that, to
simplify it further you can make a function, which takes rde-config and
additional configuration for meow and returns a service, which extends
(get-value config 'emacs-rde-meow-service-type) like that:
https://git.sr.ht/~abcdw/rde/tree/11fb136c/src/rde/features/emacs-xyz.scm#L833
>> Overall looks good to me! Thank you for working on it.
>
> Thanks for reviewing feature-emacs-meow. I'll start working on a v2 once
> I get back from a work trip that I am on.
>
> all the best,
>
> jgart
>
> * https://toys.whereis.みんな/?search=emacs-combobulate
In this message it's a bit hard to understand, where is your reply and
where my previous message. Try to quote the whole pharagraph, please,
not only the first sentence of it.
--
Best regards,
Andrew Tropin