On Fri 03-Feb-2023 at 17:26:38 +01, Mats Lidell <mats.lid...@lidells.se>
wrote: 
> Hi Garjola,
>
> Sorry for not responding sooner.
>
> I'm not an expert on key bindings but I have two ideas here:
>
>   - Since both Hyperbole and Ivy are minor modes they are competing on the 
> what
>     binding will take effect. Since it seems in your case Hyperbole's map is
>     winning you can try to set M-o in hyperbole-mode-map instead of setting it
>     in Ivy's maps. Hyperbole does not change any other modes key maps.
>
>     Alternatively you can try to load Ivy before Hyperbole since the load 
> order
>     seems to matter in what gets picked up.
>
>     (Take all of this as suggestions to explore since I have not tested it nor
>     have any experience with it. Just read about this on Stack Overflow. Feel
>     free to correct me!)
>
>   - You can disable all Hyperboles key bindings with customizing `hkey-init` 
> and
>     setting it to nil. <customize-variable 'hkey-init> You are then free to
>     setup the binding as you wish. With the down side of having to do that for
>     all Hyperbole bindings you want to keep too. But this might make a cleaner
>     setup.
>
> %% Mats 

Hi,

Thanks for your reply. It helped me understand the rationale. If I
set hkey-init to nil and just bind the keys I need, it works.

This is my configuration with use-package:


,----[ elisp ]
| (use-package hyperbole
|   :ensure t
|   :init
|   (setq hkey-init nil)
|   :hook (hyperbole-init . (lambda () (hkey-set-key (kbd "s-O") 'hkey-operate)
|                             (hkey-set-key (kbd "s-<return>") 'hkey-either))))
`----


Thanks!

G.

Reply via email to