Commit Graph

33 Commits

Author SHA1 Message Date
Henrik Lissner
57adae5ec6
Introduce more opinionated backspace/del/newline behavior
+ Instead of remapping delete-backward-char to doom/delete-backward-char
  (which was unreliable, depending on the mode), it is now overridden
  with it, without sacrificing its original functionality. The new
  behavior is as follows:
  + Fall back to sp-backward-delete-char when it makes sense to delete
    the adjacent pair: {|} => |
  + Collapse an indented pair block, if at bolp in between: {
      |
    } => {|}
  + Refresh a pair's :post-handlers when deleting into pair: {
      |
    } => {|} => {
      |
    } (can be repeated)
  + When cursor is preceded by whitespace, delete in increments of
    tab-width.
+ newline-and-indent has been advised to:
  + Only newline when in a string.
  + Continue comment lines consistently (needs more testing!)
  + Falls back to basic newline-and-indent, without affecting whitespace
    in the origin line (it would originally delete-horizontal-space
    before creating a new line).
+ Incorporates a set of reasonable defaults for brace expansion on RET
  or SPC, as mentioned in #343 and #413.

Affects #343, #413
2018-02-14 05:42:51 -05:00
Henrik Lissner
5e5d075431
New doom/*-this-file commands; move doom/sudo* to new files library 2018-02-14 05:40:37 -05:00
Henrik Lissner
ba19032d29
Rename doom/narrow-buffer => doom/clone-and-narrow-buffer 2018-02-12 01:44:02 -05:00
Henrik Lissner
dadfeec506
Refactor & fix doom/forward-to-last-non-comment-or-eol 2018-02-01 16:35:55 -05:00
Henrik Lissner
7c48e7e5cc
Improve visual-line-mode support in doom/backward-to-bol-or-indent #396 2018-02-01 16:35:27 -05:00
Henrik Lissner
3d5d1b65b3
Move misplaced doom--buffer-narrowed-origin to correct place 2018-01-03 03:32:19 -05:00
Henrik Lissner
88946a893a
Minor edits + comment out unused popup vars (for later) 2017-12-30 01:25:24 -05:00
Henrik Lissner
0c06514c6f
doom-narrow-buffer renamed to doom/narrow-buffer and moved 2017-12-29 22:29:57 -05:00
Henrik Lissner
04a3db3d2b
Move scratch commands to core/autoload/scratch.el 2017-09-27 01:21:10 +02:00
Henrik Lissner
cf7b27f4eb
popups: :fixed => :static, major changes to popup API
+ New command: doom/popup-kill-all
+ Update references to :fixed (now named :static)
+ Simplified doom-popup-p; moved :static filtering to
  doom-popup-windows.
+ New :autofit popup property, which resizes the popup to fit its
  content, if possible.
+ doom-popup-windows now takes one boolean argument: whether to ignore
  static popups or not.
2017-09-26 20:37:08 +02:00
Henrik Lissner
ce6ef9656f
Fix scratch buffer commands; use :fixed prop 2017-09-25 13:05:13 +02:00
Henrik Lissner
311e15487a
Refactor editor autoloaded library
And remove doom/toggle-sticky; this has been replaced with scratch
buffers.
2017-09-25 05:06:13 +02:00
Henrik Lissner
1685076202
New commands: doom/open-{,project-}scratch-buffer 2017-09-25 03:02:13 +02:00
Henrik Lissner
439bbe64fa
Add doom|enable-delete-trailing-whitespace 2017-07-17 12:01:45 +02:00
Henrik Lissner
1d961563c0
Fix #139: no-region error in doom/scratch-buffer 2017-07-05 15:23:20 +02:00
Henrik Lissner
8c1fb1e6b2
+doom:scratch-buffer => doom/scratch-buffer 2017-07-03 03:39:18 +02:00
Henrik Lissner
c7254e7bdc
Major optimization refactor, across the board
+ enable lexical-scope everywhere (lexical-binding = t): ~5-10% faster
  startup; ~5-20% general boost
+ reduce consing, function calls & garbage collection by preferring
  cl-loop & dolist over lambda closures (for mapc[ar], add-hook, and
  various cl-lib filter/map/reduce functions) -- where possible
+ prefer functions with dedicated opcodes, like assq (see byte-defop's
  in bytecomp.el for more)
+ prefer pcase & cond (faster) over cl-case
+ general refactor for code readability
+ ensure naming & style conventions are adhered to
+ appease byte-compiler by marking unused variables with underscore
+ defer minor mode activation to after-init, emacs-startup or
  window-setup hooks; a customization opportunity for users + ensures
  custom functionality won't interfere with startup.
2017-06-09 00:47:45 +02:00
Henrik Lissner
13b2cc9446 Fix whitespacing-eating in org-tables on SPC/DEL 2017-05-19 13:20:50 +02:00
Henrik Lissner
a1384d17f6 Refactor doom/sudo-find-file, add doom/sudo-this-file 2017-05-15 20:26:32 +02:00
Henrik Lissner
5491fd552e Replace nlinum with linum 2017-05-13 22:40:52 +02:00
Henrik Lissner
09218f5bb3 core-editor: refactor large-file detection 2017-05-06 22:55:10 +02:00
Bryan Gilbert
712c01f4f4 add `doom/large-file-check to prompt literal open of large files 2017-05-06 11:53:10 -04:00
Henrik Lissner
b425f45875 Add doom/sudo-find-file 2017-04-26 15:25:34 -04:00
Henrik Lissner
ed2e7a65f6 Refactor out s.el usage 2017-04-17 02:18:25 -04:00
Henrik Lissner
5ae94b765c PRAISE BE TO THE BYTE COMPILER FOR THY SHARP QUOTES 2017-04-17 02:17:10 -04:00
Henrik Lissner
ba9e7a947b Remove provide's in autoload libraries (unnecessary) 2017-04-04 22:16:39 -04:00
Henrik Lissner
2eafdc8c6f Fix out-of-bounds error in doom/backward-delete-whitespace-to-column 2017-04-04 03:35:10 -04:00
Henrik Lissner
a5437a3860 Fix doom/newline-and-indent for rjsx-mode 2017-04-03 03:12:04 -04:00
Henrik Lissner
b135b7bf53 Add doom/toggle-sticky to core/autoload/editor 2017-02-20 00:26:08 -05:00
Henrik Lissner
2d5d826177 Remove dash/f dependencies; use cl-lib & subr-x more 2017-02-20 00:26:07 -05:00
Henrik Lissner
d2a0e40ca4 Refactor; replace/fix interactive-only & looking-back calls 2017-02-20 00:26:07 -05:00
Henrik Lissner
bc402868a6 Add provide's to module config.el files + fix module header comments 2017-02-20 00:23:08 -05:00
Henrik Lissner
29943fefa6 Add core/autoload/editor.el 2017-02-20 00:23:06 -05:00