Commit Graph

10 Commits (master)

Author SHA1 Message Date
Pierre Le Marre 4b58ff7859 Fix memory leak in print_keymap
The string buffer was not freed.
2023-11-06 21:44:41 +01:00
Pierre Le Marre 1c1542d64f Tools: Add bash completions for xkbcli
- Add bash completion script. It parses the commands help messages to
  provide the completions, thus any new subcommand or option will be
  supported, as long as it has its entry in the help messages. This
  should result in low maintenancei effort.
- Add installation entry in Meson. The path can be configured using
  the following options:
  - `enable-bash-completion` to enable the installation;
  - `bash-completion-path` to control the installation path. It will
    default to: `share/bash-completion/completions`.

TODO: completion for other shells, such as zsh?
2023-10-05 06:24:02 +02:00
Ran Benita f75c0a2de6 xkbcli: allow compile-keymap without args
All of the arguments have defaults, but still an argument is required.
Make it work.

Signed-off-by: Ran Benita <ran@unusedvar.com>
2023-07-03 13:53:26 +10:00
Ran Benita 9511174075 tools/compile-keymap: hide --kccgst comment on public build
Signed-off-by: Ran Benita <ran@unusedvar.com>
2020-07-25 16:37:57 +03:00
Ran Benita 2fefe558ab tools: fix strcmp mistake in 0066e38
Signed-off-by: Ran Benita <ran@unusedvar.com>
2020-07-25 16:34:52 +03:00
Ran Benita 0066e387bc tools: make independent from src/
Signed-off-by: Ran Benita <ran@unusedvar.com>
2020-07-25 15:59:23 +03:00
Peter Hutterer ce5eb1ac6d tools: link the tools against libxkbcommon.so only
The tools previously linked against a static version (by simply recompiling
everythiong). This isn't necessary, we can link them against libxkbcommon.so.

Only exception: The xbkcli-compile-keymap tool needs a private API for the
--kccgst flag. Avoid this by disabling this flag in the installed tool and
building the same tool, statically linked but not-installed.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2020-07-25 11:05:14 +03:00
Peter Hutterer a472e030ea tools: avoid use of a private api
This is merely to fill in some NULL pointers anyway, we can just use
the #defines we have available at build time.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2020-07-25 11:05:14 +03:00
Peter Hutterer 714182066d tools: consistently return 2 on invalid usage
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2020-07-25 11:05:14 +03:00
Peter Hutterer 29e80e7b76 tools: install our tools as xkbcli subcommands
The xkbcli tool usage help is ifdef'd out where the tool isn't built but the
man page always includes all tools. Easier that way.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2020-07-25 11:05:14 +03:00