Browse Source

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

custom
Bozhidar Batsov 5 years ago
parent
commit
16727e3c70
  1. 1
      CHANGELOG.md
  2. 8
      core/prelude-custom.el
  3. 1
      core/prelude-macos.el
  4. 21
      core/prelude-mode.el

1
CHANGELOG.md

@ -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

8
core/prelude-custom.el

@ -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

1
core/prelude-macos.el

@ -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)

21
core/prelude-mode.el

@ -66,17 +66,20 @@
(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
(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-k") 'crux-kill-whole-line)
(define-key map (kbd "s-m m") 'magit-status)
(define-key map (kbd "s-m l") 'magit-log)
(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-o") 'crux-smart-open-line-above)
(when prelude-super-keybinds
(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-k") 'crux-kill-whole-line)
(define-key map (kbd "s-m m") 'magit-status)
(define-key map (kbd "s-m l") 'magit-log)
(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-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"

Loading…
Cancel
Save