Commit graph

82 commits

Author SHA1 Message Date
Stefan Kangas
ff30d22909 Various checkdoc fixes 2022-11-14 02:18:43 +01:00
Payas Relekar
2ee9b31ca4 bind-key.el: Bump version for ELPA 2022-10-28 10:37:18 +05:30
Payas Relekar
0fafd98513 Update copyright for submission to ELPA
- Update year to 2022
- Set copyright to Free Software Foundation, Inc.
2022-10-25 20:02:35 +05:30
Codruț Constantin Gușoi
1494f65f61 Fix emacs native compilation warning for bind-key
To reproduce, have emacs built with native compilation and notice the
compilation logs. You can then open the offending file and run `M-x
emacs-lisp-native-compile-and-load` before and after the changes to see
the warning is removed.

```
 ■  Warning (comp): bind-key.el:150:2: Warning: docstring has wrong
usage of unescaped single quotes (use \= or different quoting)
```
2022-09-10 17:16:18 +01:00
realcomplex
a05b9e28ed Go back to making override-global-mode non-global
Copyright-paperwork-exempt: yes
2022-08-11 09:08:25 +02:00
Koen van Greevenbroek
85c1287c26 Make sure that bind-key's override-global-mode is initially on
In 4004dde the arguments to `define-minor-mode` were changed
erroneously. Whereas the `override-global-mode` was initially defined
as `(define-minor-mode override-global-mode "..." t "")`, the two
latter arguments where changed to `:global t :lighter ""`. However,
the two original arguments corresponded to the keywords `:init-value`
and `:lighter`, respectively.

With `:init-value t` now missing, the minor mode isn't enabled by
default, and `bind-key*` appears not to work.

Copyright-paperwork-exempt: yes
2022-08-10 11:47:07 +02:00
Jonas Bernoulli
53c1889342 Quote single quotes in docstrings or use different quoting
The byte-compiler started pointing this out:
  Warning: docstring has wrong usage of unescaped single
  quotes (use \= or different quoting)
2022-08-08 23:06:34 +02:00
John Wiegley
a0ba027ee5 Merge pull request from wcy123/master
GitHub-reference: https://github.com/jwiegley/use-package/issues/822
2022-08-07 08:53:36 -07:00
John Wiegley
ca426a7732 Merge pull request from phst/lex
GitHub-reference: https://github.com/jwiegley/use-package/issues/848
2022-08-07 08:49:45 -07:00
John Wiegley
de0c8c36c7 Merge pull request from Hugo-Heagren/bind-keys-repeat-map
GitHub-reference: https://github.com/jwiegley/use-package/issues/974
2022-08-07 08:30:25 -07:00
Jonas Bernoulli
4004dde6ea Avoid positional arguments to define-minor-mode
Back in Emacs-21.1, `define-minor-mode' grew keyword arguments to
replace its old positional arguments.  Starting with Emacs-28.1
a warning will be omitted if positional arguments are still used.
2022-06-26 17:07:04 +02:00
Wang Chunye
9be2580f5f optimization: constand folding for read-kbd-macro
to boost startup performance, it is better to avoid invoking
`read-kbd-macro` at run time which requires 'cl-lib.

it takes ~20ms to load cl-lib

Copyright-paperwork-exempt: yes
2022-02-06 21:23:46 +08:00
Hugo Heagren
1143f14d65 bind-keys-form: error for repeat sub-keywords without :repeat-map
Error descriptively if :continue or :exit is specified without
:repeat-map.
2022-01-28 22:37:37 +00:00
Hugo Heagren
c4bd2aa3b8 bind-key-form: allow :continue keyword inside repeat map
Purely syntactic sugar, using :continue is the same as not using any
keyword inside :repeat-map at all.

Amend end of function to pass repeat-map value onto next invocation in
recursive uses. This allows for the same repeat map to be used for
:exit and :continue.
2022-01-28 22:37:37 +00:00
Hugo Heagren
5ef327ce9f bind-key-form: allow :exit keyword inside repeat map
Keys bound inside the scope of :exit are bound inside the repeat map,
but do not have their repeat-map property set (so they run a function,
but 'exit' the map).
2022-01-28 22:37:37 +00:00
Hugo Heagren
2203246454 bind-keys-form: new keyword :repeat-map, for defining repeat maps
use-package-normalize/:bind: allow keyword :repeat-map.

bind-keys-form: Add keyword :repeat-map. Specifying a symbol as the
repeat-map defines a keymap with that name (and with the docstring
`repeat-doc', if specified). Symbols for functions bound to keys under
the scope of :repeat-map have their 'repeat-map property set to this
map. Update docstring (and that of `bind-keys') to reflect changes.

Rename `doc' to `prefix-doc' for clarity and consistency with
'repeat-doc'.
2022-01-28 22:37:06 +00:00
Daniel Mendler
5ca7bc321d unbind-key: Ensure that keys are removed from the keymap
* The removal from the keymap is performed by bind-key--remove
* Use the same argument normalization as bind-key
2021-02-10 15:34:12 +01:00
Daniel Mendler
ec750952f4 bind-key: Use new symbols for kmapvar 2021-02-10 15:23:44 +01:00
Philipp Stephani
5bd7e0ca7d Migrate remaining files to lexical binding 2020-08-03 21:37:34 +02:00
Jimmy Yuen Ho Wong
950068809b Support keymap symbol in bind-key
GitHub-reference: fix https://github.com/jwiegley/use-package/issues/845
2020-07-08 04:46:56 +01:00
Jonas Bernoulli
8c7fa11a3f Fix typos 2019-11-06 13:49:46 +01:00
Andrew Schwartzmeyer
d2fec5e5e3 Document that remapping commands is supported with bind-key
Copyright-paperwork-exempt: yes
2018-04-30 09:55:27 -07:00
John Wiegley
a4d2e77961 bind-keys fixes related to
GitHub-reference: https://github.com/jwiegley/use-package/issues/482
2017-12-10 21:25:37 -08:00
John Wiegley
c272c6b56b Update some GPL version references
Fixes https://github.com/jwiegley/use-package/issues/563
2017-12-06 06:19:15 -08:00
John Wiegley
0a628a2767 Avoid using pcase and many other macros in macro-expanded forms
This is related to https://github.com/jwiegley/use-package/issues/550
2017-12-05 11:10:16 -08:00
John Wiegley
a090961f10 Fix bad interaction between bind-keys* and the :package keyword
Fixes https://github.com/jwiegley/use-package/issues/558
2017-12-05 10:29:51 -08:00
John Wiegley
277384d151 Add a note to bind-key on the usage of the KEYMAP argument
Fixes https://github.com/jwiegley/use-package/issues/542
2017-12-04 15:55:41 -08:00
John Wiegley
6470eaf3d5 Fix an argument process problem with bind-key
Fixes https://github.com/jwiegley/use-package/issues/334
2017-12-04 15:21:41 -08:00
John Wiegley
5f2b0cbe8f Allow keys to be bound to nil
Fixes https://github.com/jwiegley/use-package/issues/525
2017-11-29 21:44:02 -08:00
John Wiegley
8051c9f5cd Update version and copyright 2017-11-29 16:38:23 -08:00
John Wiegley
bff472ea80 Allow :bind ("C-c C-c" . (lambda () (ding))) and #'(lambda ...)
Fixes https://github.com/jwiegley/use-package/issues/333
Fixes https://github.com/jwiegley/use-package/issues/461
2017-11-29 16:37:03 -08:00
John Wiegley
2825987619 Print map keys in describe-personal-keybindings
Fixes https://github.com/jwiegley/use-package/issues/406
2017-11-28 20:58:04 -08:00
John Wiegley
606284e374 Repeating a bind no longer causes duplicates in personal-keybindings
Fixes https://github.com/jwiegley/use-package/issues/446
2017-11-28 20:52:29 -08:00
John Wiegley
6c35742992 Merge pull request from tarsius/outline
Support outline-minor-mode
GitHub-reference: https://github.com/jwiegley/use-package/issues/420
2016-12-18 15:20:42 -08:00
Jonas Bernoulli
75e0cd93c5 Delay decision whether to use eval-after-load until run-time
Just because a keymap variable is bound at macro-expansion-time
doesn't mean that it must be bound at run-time too.

Change `bind-keys-form', which is used by `bind-keys' and other
macros, to return a form which delays the decision on whether to
wrap the binding forms with `eval-after-load' until run-time.

Fixes https://github.com/jwiegley/use-package/issues/378.
2016-12-18 15:47:36 +01:00
Jonas Bernoulli
134ecb3c88 Support outline-minor-mode
In "use-package.el" prefix headings with ";;;" instead of just
";;".  In "bind-key.el" add the missing ";;; Code:" heading.
In both libraries set `outline-regexp' to an appropriate value.
2016-12-17 15:26:15 +01:00
John Wiegley
af65fbea63 :map no longer accepts lists; only eval-after-load if necessary
Fixes https://github.com/jwiegley/use-package/issues/324
2016-02-27 00:48:29 -08:00
John Wiegley
8e128b29f5 Merge pull request from ljos/master
Quote variable in bind-keys*
GitHub-reference: https://github.com/jwiegley/use-package/issues/325
2016-02-26 19:08:31 -05:00
John Wiegley
6ca19531bb Repair :map handling in bind-key.el
GitHub-reference: fixes https://github.com/jwiegley/use-package/issues/324
2016-02-26 16:06:58 -08:00
Bjarte Johansen
b0b5cfbfb2 Quote variable in `bind-keys*'
* bind-key.el (bind-keys*): `override-global-map' needs to be quoted so
  the symbol is passed to `bind-keys-form' and not the value.
GitHub-reference: fixes https://github.com/jwiegley/use-package/issues/323
2016-02-26 15:47:16 +00:00
John Wiegley
828563a756 Remove :bind-keymaps, and only apply :map bindings after load 2016-02-25 16:37:34 -08:00
John Wiegley
856e8ee245 Support multiples uses of :map with :bind
GitHub-reference: fixes https://github.com/jwiegley/use-package/issues/121
2016-02-25 15:57:50 -08:00
John Wiegley
4593f178e3 Merge pull request from alezost/keymap-doc-fix
Handle the case when keymap has a broken documentation
GitHub-reference: https://github.com/jwiegley/use-package/issues/223
2016-02-25 18:19:58 -05:00
Nicolas Dudebout
32748d0657 Upper casing Cs corresponding to Ctrl
A number of Cs corresponding to Ctrl have been lower cased in comments in eb6b81dfe.
2016-02-05 21:40:34 -05:00
John Wiegley
3ce3b3a98c Add a missing comma 2016-01-12 07:58:06 -08:00
John Wiegley
b4ec5abad2 Add a PREDICATE option to bind-key, and :filter to `bind-keys' 2016-01-11 22:38:31 -08:00
John Wiegley
ed2e85e4a7 Use cl-mapcan rather than apply 'nconc; thanks wasamasa 2015-12-20 14:39:46 -08:00
Alex Kost
d81390f6de Handle the case when keymap has a broken documentation 2015-06-22 19:43:55 +03:00
John Wiegley
348bc57141 unbind-key now removes key from personal-keybindings
Fixes https://github.com/jwiegley/use-package/issues/74
2015-03-21 04:13:02 -05:00
John Wiegley
47586c714e Fix file headers 2015-03-21 03:57:09 -05:00