Commit Graph

57 Commits

Author SHA1 Message Date
Henrik Lissner
c421f3de64
lang/emacs-lisp: delay mode hooks in eval output buffer 2018-03-02 23:26:58 -05:00
Henrik Lissner
4cd79bd6ca
lang/emacs-lisp: fix flycheck-cask-setup hook 2018-02-19 14:37:32 -05:00
Henrik Lissner
87f47e6d9a
lang/emacs-lisp: disable flycheck in new private modules too #425 2018-02-17 19:21:02 -05:00
Henrik Lissner
d443aed25c
feature/eval: improve compatibility with feature/popups
This makes quickrun, *doom eval* and *Pp Eval Output* buffers behave
better.

Eval output buffers should a) shrink themselves to the size of their
output (within reason), b) *not* grab focus, and c) be easy to close
from afar with C-g/Escape.

Gotchas:

1. Quickrun gets output asynchronously, so we shrink it on
   quickrun-after-run-hook, not in the popup rule.
2. *doom eval* and *Pp Eval Output* opens with its output ready, so the
   popup system may shrink those to fit.
3. *doom eval* and *Pp Eval Output* handle window selection themselves.
   Let them by setting the select window parameter to #'ignore.
2018-01-08 17:30:54 -05:00
Henrik Lissner
91357a3e5d
💥 Replace core-popup with new feature/popup module
This is a breaking change! Update your :popup settings. Old ones will
throw errors!

Doom's new popup management system casts off its shackles (hur hur) and
replaces them with the monster that is `display-buffer-alist`, and
window parameters.

However, this is highly experimental! Expect edge cases.  Particularly
with org-mode and magit (or anything that does its own window
management).

Relevant to #261, #263, #325
2018-01-06 02:17:43 -05:00
Henrik Lissner
42cee2e046
Update :jump => :lookup 2018-01-05 23:57:48 -05:00
Henrik Lissner
824393043c
lang/emacs-lisp: add imenu support for def-test!/ert-deftest 2018-01-04 16:16:44 -05:00
Henrik Lissner
8e7b822062
Remove core-popup coupling
New popup management system coming soon!
2018-01-03 03:44:34 -05:00
Henrik Lissner
f440bc37a3
lang/emacs-lisp: fix +eval/buffer fn not capturing entire buffer #313 2017-12-29 13:37:26 -05:00
Henrik Lissner
9d81bc5a8b
Major refactor: use-package-always-defer = nil & use :hook
Possibly breaking change: packages are no longer deferred by default.

Addresses #286
2017-12-08 23:14:11 -05:00
Henrik Lissner
a4ddb1bc9b
General minor refactor + cleanup 2017-09-28 18:19:15 +02:00
Henrik Lissner
f3b6a85361
Refactor lang/emacs-lisp 2017-07-17 12:01:05 +02:00
Henrik Lissner
47a04ca076 Merge branch 'bandresen-overseer'
* bandresen-overseer:
  Add: lang/emacs-lisp: overseer initial commit
2017-07-17 11:46:42 +02:00
Henrik Lissner
867602bee5 Merge branch 'bandresen-flycheck-cask'
* bandresen-flycheck-cask:
  Move flycheck-cask to lang/emacs-lisp
  Add: feature/syntax-checker: add flycheck-cask for emacs-lisp
2017-07-17 11:42:44 +02:00
Henrik Lissner
c6677136c1
Move flycheck-cask to lang/emacs-lisp 2017-07-17 11:33:47 +02:00
Benjamin Andresen
fa22e35715 Add: lang/emacs-lisp: overseer initial commit 2017-07-16 05:05:36 +02:00
Benjamin Andresen
7fb4e6af7d Add: lang/emacs-lisp: macrostep 2017-07-16 05:00:18 +02:00
Henrik Lissner
702b518431
Broaden +emacs-lisp-ert-mode :match detection 2017-06-19 12:51:11 +02:00
Henrik Lissner
9700b6f419
lang/emacs-lisp: remove load-after-compile 2017-06-19 12:50:43 +02:00
Henrik Lissner
392c58ea47
General refactor & cleanup 2017-06-19 00:32:45 +02:00
Henrik Lissner
bc3aee2a4f
Replace :xref-backend setting with :jump
Which takes :definitions, :references, :documentation and :xref-backend.
Each accepts a function that will jump to definitions, references, and
documentation respectively.

If a major-mode has an :xref-backend, you don't need :definitions or
:references.
2017-06-19 00:32:45 +02:00
Henrik Lissner
4eb2a7cb41
General refactor + cleanup 2017-06-16 02:10:33 +02:00
Henrik Lissner
853ad98ae9
Fix editorconfig indent-policing in Lisp modes
Editorconfig in Lisp enforces lisp-indent-offset too strictly, ruining
its adaptive indentation. We don't want to disable it complete in those
modes however. In all other respects (controlling spaces vs tabs,
charset, max_line_length, etc) editorconfig is great.
2017-06-15 14:45:32 +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
8b99d63ec6 emacs-lisp: highlight doom fn/vars in keyword face 2017-06-07 21:03:24 +02:00
Henrik Lissner
be46654629
Add highlight-numbers-mode to python & elisp 2017-06-07 14:36:24 +02:00
Henrik Lissner
e8d454a251 Add doom-ui-mode-names for renaming major-modes 2017-05-28 16:13:55 +02:00
Henrik Lissner
45e9bf8754 emacs-lisp-mode: omit macro forms from imenu index 2017-05-28 02:48:20 +02:00
Henrik Lissner
9ac3b1fea8 lang/emacs-lisp: refactor +emacs-lisp-eval 2017-05-15 20:26:33 +02:00
Henrik Lissner
629c71d4bc lang/emacs-lisp: enable flycheck-mode if not in emacs.d 2017-05-14 12:07:12 +02:00
Henrik Lissner
4aa1427811 feature/eval: :eval now accepts functions (refactor emacs-lisp eval fn) 2017-05-07 02:45:52 +02:00
Henrik Lissner
258881a996 lang/emacs-lisp: use font-lock-constant-face for doom library 2017-05-03 22:03:08 +02:00
Henrik Lissner
0e7254d312 General cleanup + refactor 2017-04-17 02:20:07 -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
93518e36cf lang/emacs-lisp: add +emacs-lisp-ert-mode project mode 2017-04-04 22:19:48 -04:00
Henrik Lissner
f0e0271dcc lang/emacs-lisp: reload recompiled file if older version is loaded 2017-04-04 22:19:37 -04:00
Henrik Lissner
cfc52a8d40 lang/emacs-lisp: remove ert commands 2017-04-04 03:36:07 -04:00
Henrik Lissner
75d8ee079d lang/emacs-lisp: remove +emacs-lisp/find-function (use xref now) 2017-03-15 22:59:49 -04:00
Henrik Lissner
ca75c1cf49 lang{emacs-lisp,python,ruby}: improve repl integration 2017-03-04 18:31:18 -05:00
Henrik Lissner
e77545f1f8 Move rainbow-delimiters-mode activation to respective lang modules 2017-03-03 23:59:53 -05:00
Henrik Lissner
af2b806a35 lang/emacs-lisp: add add-hook! & remove-hook! to :rotate symbols 2017-03-01 21:42:21 -05:00
Henrik Lissner
105c0b945b Add :editorconfig setting 2017-03-01 19:16:22 -05:00
Henrik Lissner
27defb3bb6 lang/emacs-lisp: update hook rotations in :rotate setting 2017-02-28 15:39:09 -05:00
Henrik Lissner
6d6da0e9aa lang/emacs-lisp: improve +emacs-lisp/find-function (other-window/popup support) 2017-02-28 12:02:01 -05:00
Henrik Lissner
33c88d4f82 Revert macros to ...! name convention (elisp doesn't like @...) 2017-02-23 00:06:12 -05:00
Henrik Lissner
b6f4fe667a lang/emacs-lisp: add rotate-text settings 2017-02-21 00:46:44 -05:00
Henrik Lissner
e14e25ecb4 Update modules/lang/* 2017-02-20 00:26:08 -05:00
Henrik Lissner
cf927acc07 @use-package => @def-package 2017-02-20 00:26:06 -05:00
Henrik Lissner
774f55e867 lang/emacs-lisp: better imenu support; better doom fn/macro highlights; remove +emacs-lisp:byte-compile 2017-02-20 00:26:06 -05:00
Henrik Lissner
6c06aa0ce7 Macros now prefixed with @, instead of suffixed with ! 2017-02-20 00:26:06 -05:00