[Github-comments] [geany/geany] Keyboard shortcuts for menu items (#1324)

Jiří Techet notifications at xxxxx
Mon Dec 12 11:57:21 UTC 2016


Sorry for the delay, I've been extremely busy in the last month, should be better now.

The idea of @codebrainz should be possible - `/Applications/Geany.app/Contents/MacOS/geany` is the wrapper script that sets up environment variables so the actual Geany binary (`/Applications/Geany.app/Contents/MacOS/geany-bin`) can find GTK libraries. You always run the script, even from command line - running the binary directly wouldn't work as the GTK libraries wouldn't be found. So it should be possible to add something to the launcher script and have it executed always.

That said I find this manual copying-over the config file a bit scary and fragile (one has to make sure the directory exists, that we don't overwrite existing file, etc.). Also this will only work for Geany's bundle - not Geany built independently and distributed e.g. using Homebrew.

I would rather prefer something like @b4n suggests, i.e. adding support into Geany for loading some global platform-specific keybinding file.

The way it works now is that these two functions are called:

```
keybindings_init();    //loads default keybindings from code
keybindings_load_keyfile();    //overrides the keybindings by the ones from the config file
```

When the custom keybinding file is saved, it saves all keybindings so the next time the above functions are run, it basically behaves as if only `keybindings_load_keyfile()` was called (unless theres a new version of Geany with new keybindings which will be added to the custom keybinding file).

What I would suggest (in principle) is to add one more function between these two:

```
keybindings_load_global_keyfile();    //overrides the keybindings by the ones from the GLOBAL config file
```

This would mean that keybindings would still be initialized by `keybindings_init()` and only the ones which need to be overridden would be placed into the global config file. Also custom keybindings would be preserved because after this function is called `keybindings_load_keyfile()` would be called which would override it with custom keybindings. I think it's better this way to avoid surprises that keybindings have changed. Users who would like to switch to the new Mac keybindings would have to delete their custom keybindings.conf first though.

Should be quite easy to implement.

What do you think?


-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/issues/1324#issuecomment-266413971
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.geany.org/pipermail/github-comments/attachments/20161212/f92f06a5/attachment.html>


More information about the Github-comments mailing list