Commit Graph

71 Commits

Author SHA1 Message Date
Henrik Lissner
8bf902d5f4 General refactors & reformatting across the board 2020-06-04 20:13:28 -04:00
Henrik Lissner
ada4110730 Refactor :lang emacs-lisp 2020-05-25 03:43:40 -04:00
Henrik Lissner
037345cfd9 lang/emacs-lisp: reformat autoloads 2020-05-11 03:00:08 -04:00
Henrik Lissner
cacc4a0ff7 Only trigger property indent correction in plists
Before

  (defcli! :main
           ()
           ...)

After

  (defcli! :main
    ()
    ...)
2020-05-05 03:31:43 -04:00
Henrik Lissner
03ecfed1a7 Fix RET indent of elisp forms following properties
Only affects newline-and-indent, not reindent commands.

Before:

  (list :a 1
    :b 2
    :c 3)

After:

  (list :a 1
        :b 2
        :c 3)

This could use some refactoring...
2020-05-01 02:18:26 -04:00
Henrik Lissner
a634e2c812 Indent elisp plists more sensibly 2020-04-30 15:54:36 -04:00
Henrik Lissner
106f3324e8 Fix over-aggressive pin truncation
Would truncate the rest of the buffer in some cases.
2020-04-30 02:31:51 -04:00
Henrik Lissner
45cdfb1258 Bump :core
spudlyo/clipetty@7ee3f9c -> spudlyo/clipetty@01b3904
bbatsov/projectile@eec569d -> bbatsov/projectile@5cd261d
noctuid/general.el@14ad4c8 -> noctuid/general.el@42e3803

We're also transitioning from abbreviated SHA1 hashes to full ones,
because underlying git machinery in future updates of straight will
require it (e.g. to obtain shallow clones of pinned packages).
2020-04-29 23:48:21 -04:00
Henrik Lissner
bd944634bc Fix defadvice! functions omitted from elisp imenu 2020-02-21 10:42:33 -05:00
Henrik Lissner
1910453e29 The byte-compiler ate my baby 2020-02-06 16:55:27 -05:00
Henrik Lissner
d47bc06ab4 Fix K on modules with no readme 2020-01-12 22:35:03 -05:00
Henrik Lissner
29250133e8 Replace doom/describe-symbol w/ helpful-symbol
And helpful-at-point.
2020-01-11 17:21:35 -05:00
Henrik Lissner
e5fa19ea2d lang/emacs-lisp: fix wrong-num-args error on doc lookup 2019-12-27 04:44:20 -05:00
Henrik Lissner
fe1642e854 Add special goto def/docs support in doom! blocks
- Pressing gd on a module in your doom! block will now browse that
  module's directory.
- Pressing K on a module will jump to that module's documentation, if any.
- Pressing K on a module flag will jump to that flag's description
  within that module's documenation.
- This is now explained in init.example.el

Closes #2249
2019-12-26 01:41:45 -05:00
Henrik Lissner
5623b8b9ba lang/emacs-lisp: refactor +emacs-lisp-eval 2019-11-24 19:40:00 -05:00
Henrik Lissner
768d5b718c Fix #2111: +eval/buffer not capturing whole elisp buffer 2019-11-24 16:50:46 -05:00
Henrik Lissner
ccf7197acf lang/emacs-lisp: print string repr of evaluated result
This makes the return type of the evaluated result clearer at a glance.
2019-10-26 23:44:29 -04:00
Henrik Lissner
84a063ca78 tools/eval: add +overlay feature
Now, inline evaluation will display results in an overlay next to the
cursor, rather than in the minibuffer (unless it gets too big, in which
case it'll use a popup buffer).
2019-10-26 02:12:58 -04:00
Henrik Lissner
e6094f262f lang/emacs-lisp: don't resize non-output windows 2019-10-23 18:30:03 -04:00
Henrik Lissner
373d920715 lang/emacs-lisp: resize eval popup to fit contents 2019-10-22 19:57:57 -04:00
Henrik Lissner
e31f51e0ba lang/emacs-lisp: recreate output popup on eval
If we don't, the popup doesn't resize itself if the contents shrink or
grow.
2019-10-22 00:34:16 -04:00
Henrik Lissner
2485cac2e0 lang/emacs-lisp: refactor eval handler
pp-eval-expression does much of what +emacs-lisp-eval used to do.
2019-10-17 02:53:44 -04:00
Rudi Grinberg
1ffaa699f8 Fix naming convention
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2019-09-19 23:01:08 +09:00
Rudi Grinberg
46c0ec0f11 [emacs lisp] Add bindings for debugging defuns
`, d f` - turn on debugging for defun
`, d F` - turn off debugging for defun

Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
2019-09-19 13:58:16 +09:00
Henrik Lissner
31ccd9be78 Replace vestigial references to def-package!
def-package! is deprecated and is replaced with use-package! to reduce
confusion about its purpose and connection to use-package.
2019-09-13 22:00:34 -04:00
Henrik Lissner
7c6e871035 lang/emacs-lisp: add buttercup-run-project command
And replace non-interactive buttercup-run-discover.
2019-07-27 13:06:43 +02:00
Henrik Lissner
a47351c58f lang/emacs-lisp: add test localleader keys for buttercup 2019-07-26 03:12:06 +02:00
Henrik Lissner
060ede0e2e General, minor reformatting across the board
And an offering of blood to our great lord Byte Compiler-sama.
2019-07-22 02:37:45 +02:00
Henrik Lissner
149b2617b0 💥 revise hook/var fns naming convention (2/2)
This is second of three big naming convention changes. In this commit,
we change the naming conventions for hook functions and variable
functions:

1. Replace the bar | to indicate a hook function with a -h suffix, e.g.

     doom|init-ui -> doom-init-ui-h
     doom|run-local-var-hooks -> doom-run-local-var-hooks-h

2. And add a -fn suffix for functions meant to be set on variables,
   e.g.

     (setq magit-display-buffer-function #'+magit-display-buffer-fn)

See ccf327f8 for the reasoning behind these changes.
2019-07-22 02:30:38 +02:00
Henrik Lissner
345d09d393 lang/emacs-lisp: don't fontify function in quoted list 2019-07-18 13:13:31 +02:00
Henrik Lissner
a201409fdd Minor refactors across the board 2019-07-10 21:27:12 +02:00
Henrik Lissner
39faabab6a lang/emacs-lisp: fix imenu regexp for sections
Otherwise, section labels with non-symbol characters would be excluded
from imenu's results.
2019-06-16 19:16:23 +02:00
Henrik Lissner
34b4ff12f4 lang/emacs-lisp: remove buggy read-only hook
Breaks package-install when it attempts to byte-compile package files.
2019-05-22 05:35:37 -04:00
Henrik Lissner
3073bcbe39 lang/emacs-lisp: suppress errors during flycheck 2019-05-21 17:29:29 -04:00
Henrik Lissner
3e15b71568 lang/emacs-lisp: optimize var/face highlighting
A slight performance improvement in files with a lot of comments and
strings, by skipping ahead a line if in a comment and to the next double
quote if in a string. Otherwise, this function would visit every symbol
in between, and syntax-ppss calls are relatively expensive here.
2019-05-20 21:09:12 -04:00
Henrik Lissner
08bfd5879a Enable read-only-mode in package files
These files shouldn't be modified directly.
2019-05-20 21:09:12 -04:00
Henrik Lissner
8aff431ed9 Fix "section" imenu regexp 2019-05-13 22:32:33 -04:00
Henrik Lissner
bd79f942d3 lang/emacs-lisp: fix false errors from featurep! 2019-05-03 13:39:00 -04:00
Henrik Lissner
25beb4bcfd lang/emacs-lisp: restore flycheck in elisp buffers
However, with `emacs-lisp-checkdoc` disabled and `emacs-lisp`
significantly gimped.

byte-compile-warnings may need to be adjusted to allow for *some*
warnings.

Also, reformat emacs-lisp-mode hooks
2019-05-02 21:23:33 -04:00
Henrik Lissner
fd04f468e2 lang/emacs-lisp: reformat autoloads file
Moves public function away from interactive commands.
2019-05-01 21:02:29 -04:00
Henrik Lissner
983f081369 lang/emacs-lisp: improve imenu support
Among other things:

- Recognizes after!, ;;;###package and use-package as "Packages"
- Recognizes outline-minor-mode "Sections"
2019-05-01 21:02:29 -04:00
Henrik Lissner
6d314c2795 Revise and update docstrings and comments 2019-05-01 21:02:28 -04:00
Henrik Lissner
784ae418da Fix wrong-type-argument on +emacs-lisp-eval
When using +eval commands in file-less buffers, like the scratch buffer.
2019-03-15 16:15:17 -04:00
Henrik Lissner
6afe3d4115 Remove unneeded negation 2019-03-12 11:25:48 -04:00
Andrew Whatson
7b4afa32e4 Improvements to apropos and describe-symbol
Patch the apropos button types so they call helpful instead of the
built-in describe functions.  Also add some bindings to apropos-mode-map
so it behaves like other help modes.

Add `doom/describe-symbol` function, which shows documentation for
callable and variable symbols.  If a symbol is both a variable and a
callable, it dispatches to apropos.  This gives a better workflow than
`helpful-symbol`, which annoyingly prompts the user.

Remap `describe-symbol` to `doom/describe-symbol`, and update
`+emacs-lisp-lookup-documentation` to call it also.
2019-03-12 18:52:24 +10:00
Henrik Lissner
54d1c0dd56 Minor, general refactors 2019-03-09 03:42:55 -05:00
Henrik Lissner
75b366285f lang/emacs-lisp: list package comments in imenu
Lines with ;; `package-name` will be considered package markers.
2019-03-05 00:11:57 -05:00
Henrik Lissner
c7aa41599d Add new emacs-lisp :documentation lookup handler
Made to do-what-I-mean. Uses describe-symbol/helpful-symbol and falls
back to apropos.
2019-03-04 20:47:25 -05:00
Henrik Lissner
0872b29767 Ensure doom--current-module is set
When evaluating elisp code through feature/eval's commands (e.g. gr/gR).
2019-02-24 13:55:57 -05:00
Henrik Lissner
94b16cba6c Standardize REPL commands & improve SPC o r
- SPC o r now prompts for a REPL to open when none was found for the
  current buffer.
- REPL handlers must now follow the naming convention "*/open*-repl".
  e.g. +python/open-ipython-repl, +emacs-lisp/open-repl, etc.
- +eval/open-repl has been split in two:
  - +eval/open-repl-other-window
  - +eval/open-repl-same-window
2019-02-18 01:59:56 -05:00