Commit Graph

4012 Commits

Author SHA1 Message Date
Henrik Lissner
bfe7b9f1c4 lang/nim: fix invalid argument errors
The nimsuggest plugin tries to build a unique path for temporary files
for its flycheck checker. This path contains /tmp/emacs-nim-mode/A/B,
where A is the frame ID and B is the full path to the file being checked.

However, the original `nimsuggest--get-dirty-dir' incorrectly extracts
the frame ID from the string representation of `selected-frame' if
frame-title-format has been modified (which Doom has). The result is the
title of the frame, which can contain illegal path characters in
Windows, which in turn causes invalid argument errors when
`nimsuggest--make-tempdir' tries to use it.

This should really be reported upstream!
2018-08-30 22:35:25 +02:00
Henrik Lissner
a7b87fe3de Add +emacs-lisp-enable-extra-fontification option 2018-08-30 20:41:54 +02:00
Henrik Lissner
edc9bf70af Delete trailing whitespace, globally, by default
Also adds doom|disable-delete-trailing-whitespace hook, which can be
used to disable this behavior on a per-buffer basis. If you want to turn
off this global behavior:

  (remove-hook 'write-file-functions #'delete-trailing-whitespace)
2018-08-30 20:36:15 +02:00
Henrik Lissner
fcf2a26329 lang/nim: fix blank nimsuggest-path stringp error 2018-08-30 19:42:57 +02:00
Henrik Lissner
68e2b814e7 Fix stringp error when inserting new snippets #852
New snippets (created with yas-new-snippet) may not yet be associated
with a file when it is passed to the functions in yas-prompt-functions.
One of those functions, +snippets-prompt-private, prioritizes private
snippets over default ones, but determines which is which with
`file-in-directory-p`, which expects string arguments.

To fix this, we can safely assume that if a snippet has no associated
file, it is a private snippet.
2018-08-30 17:40:33 +02:00
Henrik Lissner
349fb49c7b editor/format: refactor +format-buffer & users 2018-08-30 15:00:33 +02:00
Henrik Lissner
1b4040229e editor/format: update documentation 2018-08-30 14:56:50 +02:00
Henrik Lissner
1ae3523f75 editor/format: autoload format-all-probe #834 2018-08-30 14:44:37 +02:00
Henrik Lissner
895cf136d5 Ensure evil popup rules are defined later
Otherwise they fall before ui/popup's fallback rules in
display-buffer-alist
2018-08-30 13:29:56 +02:00
Henrik Lissner
068cf5f7d4 Rename +evil|save-buffer to be self-explanitory
+evil|disable-vimlike-save-message
2018-08-30 13:29:56 +02:00
Henrik Lissner
7616316634 editor/format: improve message feedback
Announce failures, noops and successes clearly, and log errors.
2018-08-30 13:29:49 +02:00
Henrik Lissner
60c03a78d9 Fix void-function treemacs-current-visibility error
Tried to use a function before it was defined.
2018-08-30 13:11:18 +02:00
Henrik Lissner
48948f725f Enable +javascript-npm-mode in rjsx-mode too 2018-08-29 17:17:01 +02:00
Henrik Lissner
fd9a3c36ee editor/format: refactor (again) 2018-08-29 17:02:49 +02:00
Henrik Lissner
d24fce1dcd Fix void-variable org-capture-is-refiling error
In case org-capture.el isn't loaded when org-refile is used.
2018-08-29 16:45:09 +02:00
Henrik Lissner
6e03ddacda Update & revise set-formatter! docstring 2018-08-29 15:56:59 +02:00
Henrik Lissner
4b9233bec7 editor/format: format by diff & major refactor
This redesigns how format-all applies changes. Before, it would erase
the buffer and insert the formatted result. This would throw markers out
of whack, and usually meant the cursor would end up somewhere else (e.g.
the beginning of the file).

Now, changes are made to the buffer line by line, via RCS patch.

Other changes:

+ +format-region function was removed (replaced by +format-buffer and
  +format/region).
+ set-formatter! was moved to autoload/settings.el
+ New +format/buffer command to replace format-all-buffer
2018-08-29 12:48:38 +02:00
Henrik Lissner
cb5c9cc9ea Don't autoformat emacs-lisp-mode buffers on save
This is much too unpredictable, considering the variable nature of elisp
indentation, and the possibility that certain functions and their indent
behavior may not be defined/declared when the file is being formatted.
2018-08-29 12:46:24 +02:00
Henrik Lissner
cab0ee33d1 ui/treemacs: fix SPC o P (treemacs-find-file)
Would create a blank treemacs window when invoked before a treemacs
window was first initialized.
2018-08-29 02:16:06 +02:00
Henrik Lissner
be8eedc296 Fix lost window state when toggling popups
Replaces af045213 with a method for preserving popup state.
2018-08-29 02:16:06 +02:00
Henrik Lissner
a57c0fbede feature/lookup: remove devdocs support (for now)
devdocs-lookup is broken at the moment. devdocs search is still
available through +lookup/online as a provider however. This may be
reversed later, when (and if) we find a better devdocs backend.
2018-08-28 20:52:27 +02:00
Henrik Lissner
5021b0dbb6 completion/helm: fix undefined helm/grep* 2018-08-28 19:35:56 +02:00
Henrik Lissner
2b560a6a0e General & minor refactoring 2018-08-28 13:36:44 +02:00
Henrik Lissner
ed0cbc1323 editor/format: fix format-all-probe check
Returns '(nil nil) when there is no formatter for the current mode. This
is truthy, so we needed a better check.
2018-08-28 13:35:03 +02:00
Henrik Lissner
e866fc46aa ui/treemacs: make hl-line stand out more #846
By remapping it to the region face. Perhaps another face would be a
better fit?
2018-08-28 13:30:51 +02:00
Henrik Lissner
d0295a26d4 ui/treemacs: show only one project #846
If you use +treemacs/toggle.
2018-08-28 13:28:01 +02:00
Henrik Lissner
e932c74758 editor/format: don't move cursor on format-on-save
Also renames +format|on-save to +format|buffer for clarity. It should
not (normally) be used directly. Use `+format|enable-on-save-maybe` and
`+format|enable-on-save`.
2018-08-28 12:02:56 +02:00
Henrik Lissner
ee4d317293 lang/latex: improve smartparens compatiblity
Also fixes special quote insertion (mentionde in #485)
2018-08-28 01:27:56 +02:00
Henrik Lissner
9b84d800f3 Make numbered vim markers global
In evil, registers 2-9 are buffer-local. In vim, they're global. This
fixes that.
2018-08-27 21:25:52 +02:00
Henrik Lissner
bd7f1f6d17 Fix wrong-type-arg on project switch #836
A regression caused by e40a58c4, which made +workspace-new return
something other than a perspective struct.
2018-08-27 20:07:17 +02:00
Henrik Lissner
e836ea8803 Merge pull request #835 from patrl/deft
:ui deft
2018-08-27 15:55:54 +02:00
Patrick Elliott
b3e08970d0 Merge branch 'deft' of https://github.com/patrl/doom-emacs into deft 2018-08-27 15:38:05 +02:00
Patrick Elliott
8508e931ca Move to :ui 2018-08-27 15:37:29 +02:00
Henrik Lissner
d57588771f Use set-evil-initial-state! instead of a hook 2018-08-27 14:08:27 +02:00
Patrick Elliott
9b3442edae Removed hindent (included in format-all) 2018-08-27 12:05:03 +02:00
Henrik Lissner
98b5c95ee5 editor/format: add +format|enable-on-save alias 2018-08-27 10:30:31 +02:00
Henrik Lissner
a005fed274 Fix symlinks in modeline path segment
This would cause a lot of ../'s when opening a symlinked file.
2018-08-27 03:32:42 +02:00
Henrik Lissner
3e7f1ccf4f Fix reference to doom-narrow-buffer
This was renamed to doom/clone-and-narrow-buffer at some point.
2018-08-27 03:25:49 +02:00
Henrik Lissner
16d7b552f1 Bind M-` to other-frame on MacOS 2018-08-26 22:43:28 +02:00
Henrik Lissner
381851aab6 Prevent wrong-type error on +company/complete 2018-08-26 22:02:35 +02:00
Henrik Lissner
3b69045ed4 editor/format: add +format|on-save buffer-locally 2018-08-26 17:31:14 +02:00
Henrik Lissner
f1460ff592 editor/format: don't move cursor on save 2018-08-26 17:26:54 +02:00
Henrik Lissner
af045213e3 Preserve window state when toggling popups
e.g. size
2018-08-26 17:24:27 +02:00
Patrick Elliott
1655e84de2 Added rudimentary readme 2018-08-26 16:51:38 +02:00
Patrick Elliott
3f3b00dde2 Basic deft module 2018-08-26 16:41:38 +02:00
Henrik Lissner
1ed8894826 +workspace/delete: error if workspace doesn't exist 2018-08-26 14:14:53 +02:00
Henrik Lissner
e40a58c423 Optimize +workspace-new & workspace creation
This is much faster than the old method of switching to the persp to
modify them.
2018-08-26 14:12:50 +02:00
Henrik Lissner
469aa81570 Forward-require dependencies in tests
Easier to see at a glance what the test's dependencies are.
2018-08-26 00:20:16 +02:00
Henrik Lissner
2aa509b36c Fix left/right keys in helm
These should be set to left-char/right-char, anything else is
disruptive, especially when C-b and C-f are backward/forward-word.
2018-08-25 23:38:40 +02:00
Henrik Lissner
4f671c3acb Fix stringp error caused by app/write's doctor
Caused by langtool-langauge-tool-jar not being set (because defvar won't
change a defined variable), and app/write/doctor.el uses it in a
file-exists-p call, which throws the stringp error if given anything
other than a string.
2018-08-25 20:58:42 +02:00