diff --git a/README.md b/README.md index 43c454f..0466e02 100644 --- a/README.md +++ b/README.md @@ -187,7 +187,7 @@ extensions to keybindings. Keybinding | Description -------------------|------------------------------------------------------------ C-M-h | Kill the previous word(`backward-kill-word`). (as in Bash/Zsh) -C-x \ | `align-regexp` +C-x \\ | `align-regexp` C-+ | Increase font size(`text-scale-increase`). C-- | Decrease font size(`text-scale-decrease`). C-x O | Go back to previous window (the inverse of `other-window` (`C-x o`)). @@ -197,7 +197,7 @@ Keybinding | Description C-x M-m | Start your default shell. C-x C-m | Alias for `M-x`. C-h A | Run `apropos` (search in all Emacs symbols). -M-\ | Run `hippie-expand` (a replacement for the default `dabbrev-expand`). +M-\\ | Run `hippie-expand` (a replacement for the default `dabbrev-expand`). C-x C-b | Open `ibuffer` (a replacement for the default `buffer-list`). F12 | Toggle the Emacs menu bar. C-x g | Open Magit's status buffer. @@ -209,12 +209,13 @@ Keybinding | Description -------------------|------------------------------------------------------------ C-c o | Open the currently visited file with an external program. C-c g | Search in Google for the thing under point (or an interactive query). +C-S-RET | Insert an empty line above the current line and indent it properly S-RET | Insert an empty line and indent it properly (as in most IDEs). C-S-up | Move the current line up. C-S-down | Move the current line down. C-c n | Fix indentation in buffer and strip whitespace. -C-c f | Open recently visitted file. -C-M-\ | Indent region (if selected) or the entire buffer. +C-c f | Open recently visited file. +C-M-\\ | Indent region (if selected) or the entire buffer. C-c u | Open URL in your default browser. C-c e | Eval a bit of Emacs Lisp code and replace it with its result. C-c s | Swap two active windows. @@ -226,7 +227,7 @@ Keybinding | Description #### Projectile -Here's a list of functionality provided by [Projectile](https://github.com/bbatsov/prelude): +Here's a list of functionality provided by [Projectile](https://github.com/bbatsov/projectile): Keybinding | Description -------------------|------------------------------------------------------------ diff --git a/core/prelude-core.el b/core/prelude-core.el index 355f5cd..8a29967 100644 --- a/core/prelude-core.el +++ b/core/prelude-core.el @@ -79,6 +79,13 @@ (indent-rigidly (point-min) (point-max) arg) (clipboard-kill-ring-save (point-min) (point-max))))) +(defun prelude-smart-open-line-above () + "Insert an empty line above the current line. +Position the cursor at it's beginning, according to the current mode" + (interactive) + (previous-line) + (prelude-smart-open-line)) + (defun prelude-smart-open-line () "Insert an empty line after the current line. Position the cursor at its beginning, according to the current mode." @@ -87,14 +94,14 @@ Position the cursor at its beginning, according to the current mode." (newline-and-indent)) (defun prelude-move-line-up () - "Move up the current line." + "Move the current line up." (interactive) (transpose-lines 1) (forward-line -2) (indent-according-to-mode)) (defun prelude-move-line-down () - "Move down the current line." + "Move the current line down." (interactive) (forward-line 1) (transpose-lines 1) diff --git a/core/prelude-mode.el b/core/prelude-mode.el index 40d7c59..687d288 100644 --- a/core/prelude-mode.el +++ b/core/prelude-mode.el @@ -39,6 +39,7 @@ (define-key map (kbd "C-c g") 'prelude-google) ;; mimic popular IDEs binding, note that it doesn't work in a terminal session (define-key map [(shift return)] 'prelude-smart-open-line) + (define-key map [(control shift return)] 'prelude-smart-open-line-above) (define-key map [(control shift up)] 'prelude-move-line-up) (define-key map [(control shift down)] 'prelude-move-line-down) (define-key map [(meta shift up)] 'prelude-move-line-up)