[Fix #1277] Make it possible to disable the creation of Super-based keybindings

This commit is contained in:
Bozhidar Batsov 2020-09-15 11:21:36 +03:00
parent d02eaf2e26
commit 16727e3c70
4 changed files with 21 additions and 10 deletions

View file

@ -9,6 +9,7 @@
### Changes ### Changes
* [#1278](https://github.com/bbatsov/prelude/issues/1278): Don't disable `menu-bar-mode` unless `prelude-minimalistic-ui` is enabled. * [#1278](https://github.com/bbatsov/prelude/issues/1278): Don't disable `menu-bar-mode` unless `prelude-minimalistic-ui` is enabled.
* [#1277](https://github.com/bbatsov/prelude/issues/1277): Make it possible to disable the creation of `Super`-based keybindings via `prelude-super-keybindings`.
### Bugs fixed ### Bugs fixed

View file

@ -43,6 +43,14 @@ Note that the toolbar is always hidden regardless of this setting."
:group 'prelude :group 'prelude
:package-version '(prelude . "1.1")) :package-version '(prelude . "1.1"))
(defcustom prelude-super-keybindings t
"Controls whether to use the Super key in keybindings.
They can be problematic in some operating systems (e.g. Windows)
or desktop environments that make heavy use of them."
:type 'boolean
:group 'prelude
:package-version '(prelude . "1.1"))
(defcustom prelude-auto-save t (defcustom prelude-auto-save t
"Non-nil values enable Prelude's auto save." "Non-nil values enable Prelude's auto save."
:type 'boolean :type 'boolean

View file

@ -55,7 +55,6 @@ Windows external keyboard from time to time."
(message "Command is now bound to SUPER and Option is bound to META."))) (message "Command is now bound to SUPER and Option is bound to META.")))
(define-key prelude-mode-map (kbd "C-c w") 'prelude-swap-meta-and-super) (define-key prelude-mode-map (kbd "C-c w") 'prelude-swap-meta-and-super)
(define-key prelude-mode-map (kbd "s-/") 'hippie-expand)
;; There's no point in hiding the menu bar on macOS, so let's not do it ;; There's no point in hiding the menu bar on macOS, so let's not do it
(menu-bar-mode +1) (menu-bar-mode +1)

View file

@ -66,9 +66,11 @@
(define-key map (kbd "C-c S") 'crux-find-shell-init-file) (define-key map (kbd "C-c S") 'crux-find-shell-init-file)
(define-key map (kbd "C-c i") 'imenu-anywhere) (define-key map (kbd "C-c i") 'imenu-anywhere)
;; extra prefix for projectile ;; extra prefix for projectile
(define-key map (kbd "s-p") 'projectile-command-map) (when prelude-super-keybindings
(define-key map (kbd "s-p") 'projectile-command-map))
(define-key map (kbd "C-c p") 'projectile-command-map) (define-key map (kbd "C-c p") 'projectile-command-map)
;; make some use of the Super key ;; make some use of the Super key
(when prelude-super-keybinds
(define-key map (kbd "s-r") 'crux-recentf-find-file) (define-key map (kbd "s-r") 'crux-recentf-find-file)
(define-key map (kbd "s-j") 'crux-top-join-line) (define-key map (kbd "s-j") 'crux-top-join-line)
(define-key map (kbd "s-k") 'crux-kill-whole-line) (define-key map (kbd "s-k") 'crux-kill-whole-line)
@ -77,6 +79,7 @@
(define-key map (kbd "s-m f") 'magit-log-buffer-file) (define-key map (kbd "s-m f") 'magit-log-buffer-file)
(define-key map (kbd "s-m b") 'magit-blame) (define-key map (kbd "s-m b") 'magit-blame)
(define-key map (kbd "s-o") 'crux-smart-open-line-above) (define-key map (kbd "s-o") 'crux-smart-open-line-above)
(define-key prelude-mode-map (kbd "s-/") 'hippie-expand))
(easy-menu-define prelude-mode-menu map (easy-menu-define prelude-mode-menu map
"Prelude's menu." "Prelude's menu."
'("Prelude" '("Prelude"