Commit graph

8344 commits

Author SHA1 Message Date
Henrik Lissner
f6234e463a
editor/format: rewrite set-formatter!
+ First argument is no longer a major mode or list thereof, it is NAME.
  Use :modes instead.
+ Updated docstring & examples.
+ Added formatting unsetting: (set-formatter! 'some-formatter nil)
2018-09-09 09:58:23 -04:00
Henrik Lissner
e3d590784c
editor/format: defer test for formatter
By deferring formatter predicates until formatting actually happens,
users won't have to reset the major mode to get formatting to work.
2018-09-09 09:58:22 -04:00
Henrik Lissner
3c34ff003b
editor/format: override format-all-buffer w/ +format/buffer 2018-09-09 09:58:22 -04:00
Henrik Lissner
8480f52081
editor/format: add +format-with option
+ A formatter can now be specified explicitly buffer-locally by setting
  +format-with to a symbol representing the name of the
  formatter (accepts any key of format-all-format-table)
+ Passing C-u to any of +format/buffer, +format/region or
  +format/region-or-buffer will now prompt you to select a formatter.
+ Revise docstring for +format-on-save-enabled-modes
2018-09-09 09:58:22 -04:00
Henrik Lissner
46083ed398
editor/format: preserve indent in +format-buffer 2018-09-09 09:58:22 -04:00
Henrik Lissner
0b350f6ea4
ui/popup: refactor +popup/raise
Improves its error tolerance and gives it a window argument.
2018-09-09 09:58:22 -04:00
Henrik Lissner
da2a8b1063
tools/magit: don't mark process buffers as real
Otherwise, kill-this-buffer may switch to them.
2018-09-09 09:58:22 -04:00
Henrik Lissner
90f0765cfb
lang/org: set default for org-refile-targets
So org-refile can see your agenda files and files adjacent to the
current one.
2018-09-09 09:58:22 -04:00
Henrik Lissner
6767bb926e
lang/go: rebind conflicting keybinds for go-play-*
Fixes a startup error regarding binding to a non-prefix key.
2018-09-09 09:58:22 -04:00
Henrik Lissner
86d51dd056
Add +doom-dashboard-mode to swiper-font-lock-exclude
It breaks the dashboard
2018-09-09 09:58:22 -04:00
Henrik Lissner
533355d7d5
lang/clojure: fix evil keybinds in cider repl 2018-09-09 09:58:21 -04:00
Henrik Lissner
bcb444fa18
Enable yas-minor-mode in conf-modes too 2018-09-09 09:58:21 -04:00
Henrik Lissner
5c96b0a801
lang/javascript: update set-docsets! 2018-09-09 09:58:21 -04:00
Henrik Lissner
95fa12390d
lang/org: fix unfontified remote links 2018-09-09 09:58:21 -04:00
Henrik Lissner
2019aaff97
lang/javascript: enable xref support in rjsx-mode 2018-09-09 09:58:21 -04:00
Henrik Lissner
001f90df2f
lang/web: update set-docsets! & general refactor 2018-09-09 09:58:21 -04:00
Henrik Lissner
1b172e9f43
Better enh-ruby-mode suport in doom/describe-module & editorconfig
+ Associates enh-ruby-mode with :lang ruby for doom/describe-module
+ Enables editorconfig to detect extension-less or file-less ruby
  files (from shebang lines or file local variables).
2018-09-09 09:58:21 -04:00
Henrik Lissner
22a94fc41a
Make helm/ivy project search api more consistent
+{helm,ivy}/*-from-cwd no longer accepts a third DIRECTORY argument.
2018-09-09 09:58:21 -04:00
Henrik Lissner
bd28eea778
feature/evil: remove <> opener/closers
And remove unnecessary def-package block. These commands are already
autoloaded by the package.
2018-09-09 09:58:21 -04:00
Henrik Lissner
c58077810d
General refactor of modules
General code and comment improvements.

Also, removed the :desc's for csv-mode because map! is currently unable
to set which-key descriptions mode-locally, and should be avoided for
anything but global keybinds. This will be fixed when General is
introduced into Doom.
2018-09-09 09:58:20 -04:00
Henrik Lissner
89b83f2457
Enable evil-escape-mode
I know this is redundant with the pre-command-hook hook, but the hook
allows us to lazy load the package, and the mode allows other modes (or
the user) to interactively disable it.

For example, evil-mc disabled it while cursors are active due to
incompatibility. This isn't possible if the mode isn't enabled to begin
with.
2018-09-09 09:58:20 -04:00
Henrik Lissner
18554ca5b5
feature/evil: extract advice functions
Into its own autoloads file, for better organization.
2018-09-09 09:58:20 -04:00
Henrik Lissner
f07ae6a02b
max-specpdl-size = 5000, max-lisp-eval-depth = 2500
The defaults were designed for much, much older systems. We can safely
increase this to stave off premature abortion of intentional deeply
nested loops or excessive allocations.
2018-09-09 09:58:20 -04:00
Henrik Lissner
4d10c28c37
Change doom-ansi-apply, print! & format!
Color let-functions no longer take format string arguments. e.g.

  (format! (red "Hello %s" "world"))

Becomes

  (format! (red "Hello %s") "world")

The same goes for print!. Also, doom-ansi-apply now takes two arguments
instead of three.

Also merges doom-message-{fg,bg,fx} into doom-ansi-alist, and reduces
backtrace noise when errors originate from inside these macros.
2018-09-09 09:58:20 -04:00
Henrik Lissner
f7ad520ee0
doom update: prevent GC in async instances
Offers a marginal improved to outdated check times.
2018-09-09 09:58:20 -04:00
Henrik Lissner
309fd767d6
Add :deps property to doom-get-packages
Also fixes an issue where doom install wouldn't catch missing
dependnecies of desired packages.

If :dep is non-nil, doom-get-packages will include package dependencies
in the resulting package list.
2018-09-09 09:58:20 -04:00
Henrik Lissner
77d2d84e14
Refactor core-cli
Moved to separate files for better organization.
2018-09-09 09:58:20 -04:00
Henrik Lissner
57579b883b
Refactor doom core files 2018-09-09 09:58:20 -04:00
Henrik Lissner
49e6e68a07
Use EMACS26+ to detect native line numbers
Checking for the 'display-line-numbers symbol property is clumsy and
checking for boundp is pointless now that we have a Emacs 25 polyfill
for display-line-numbers-mode.
2018-09-09 09:58:19 -04:00
Henrik Lissner
be29623f0d
Reorganize doom core-lib & reformat autoload/ui.el
+ Move doom-files-in to autoload/files.el
+ Move doom*shut-up to autoload/ui.el
+ Reorganize autoload/ui.el
2018-09-09 09:58:19 -04:00
Henrik Lissner
7d3ffdff06
Remove third line in section headers
This is truly important stuff. We've saved many lives with this update.
2018-09-09 09:58:19 -04:00
Henrik Lissner
50fdaa0ed5
Silence "unbound key" spam on mouse-1 in dashboard 2018-09-09 09:58:19 -04:00
Henrik Lissner
628b40f882
emacs/ediff: fix hooks not being appended 2018-09-09 09:58:19 -04:00
Henrik Lissner
a0250e60e3
Add rainbow-delimiters in lang/common-lisp instead
Gives users one place to look to determine what cosmetic hooks are
applied in lisp-mode.
2018-09-09 09:58:19 -04:00
Henrik Lissner
f7326a2c40
Update doom doctor for new init process
For changes made in 31bcac9a
2018-09-09 09:58:19 -04:00
Henrik Lissner
c0ff5b030a
feature/evil: fix evil-change recommenting line
Due to a bug crossing over from +evil-want-o/O-continue-comments
functionality. It has also been refactored for performance. This also
fixes an issue where smartparens functions could be called before
smartparens was loaded, making o/O inoperable.
2018-09-09 09:58:19 -04:00
Henrik Lissner
0f901b560f
tools/editorconfig: add enh-ruby-mode support 2018-09-09 09:58:18 -04:00
Henrik Lissner
8b7404bf75
Refactor hl-line eob fix in Emacs 26+ 2018-09-09 09:58:18 -04:00
Henrik Lissner
48c77b1126
Move helm-css-scss package to lang/web/+css 2018-09-09 09:58:18 -04:00
Henrik Lissner
e89e3bd15e
Redesign set-docsets! autodef
+ Adds :add/:remove support.
+ Adds conditional docset support through nested vectors
+ Removes support for setting docsets on a minor-mode basis (mostly for
  performance reasons, but now that we have conditional docsets, it's
  unnecessary).
2018-09-09 09:58:18 -04:00
Henrik Lissner
84abac6b69
Remove def-menu!; use :localleader keys instead
def-menu was clumsy. We could use a better UI for refactoring commands,
but they should be available via localleader keybinds in any case.
2018-09-09 09:58:18 -04:00
Henrik Lissner
d2f9d28577
doom-project-(find-file|browse): resolve symlinks
This prevents absolute paths appearing in many find-in/browse commands,
like +default/find-in-emacsd, +default/find-in-config, or
+default/browse-project.
2018-09-09 09:58:18 -04:00
Henrik Lissner
937f118e6a
Reset gc-cons-threshold on idle timer
And remove reset from doom-reload-hook, as it is no longer necessary
anymore. ~/.emacs.d/init.el is no longer re-evaluated at any point.
2018-09-09 09:58:18 -04:00
Henrik Lissner
1f3fa61c2b
Allow debugging in doom quickstart 2018-09-09 09:58:18 -04:00
Henrik Lissner
786ab9e7b5
ui/modeline: show UTF-8 for prefer-utf-8 encoding 2018-09-09 09:58:14 -04:00
Henrik Lissner
230135cf06
Merge pull request #868 from rynffoll/feature/docker
Add tools/docker module
2018-09-09 09:57:20 -04:00
Henrik Lissner
6052e27bd1
Alphabetize :tools docker in init.example.el 2018-09-09 09:55:56 -04:00
Henrik Lissner
0b07220c5f
Lazy-load docker.el & refactor evil-initial-state
`set-evil-initial-state!` accepts multiple modes as its first argument and is marginally faster when used that way.
2018-09-09 09:52:23 -04:00
Henrik Lissner
0e1049189c
Lazy-load docker-tramp & dockerfile-mode
No extra configuration is required to lazy load these two plugins (they autoload themselves). These blocks would force them to load at startup otherwise.
2018-09-09 09:49:22 -04:00
Henrik Lissner
a198c14f12
Merge pull request #867 from patrl/pgMelpa
proof-general now on melpa
2018-09-09 09:42:51 -04:00