Commit graph

146 commits

Author SHA1 Message Date
Henrik Lissner
f51f2948af
New :editor format module
Centralized code formatting with built-in support for a variety of
languages. Provides the set-formatter! function for defining your own.

Still experimental and needs more testing!
2018-08-22 02:20:11 +02:00
Henrik Lissner
a01aeb6daf
Make helm the default completion module for Doom
It's been a change a long time coming. Ivy's snappiness and simple API
was Ivy's selling point (as far as Doom is concerned). It helps that
much of helm's vast featureset has been ported over and its API is so
much simpler to grok, but its greatest weakness lies in its choice of
display mechanism: the minibuffer.

Ivy's performance suffers dramatically with large datasets because
mutating results in the minibuffer blocks the minibuffer, which also
happens to be where we type in our queries. This can make input feel
dreadfully sluggish in the best cases, locking up Emacs entirely in the
worst.

Helm updates a buffer asynchronously, so it suffers none of this (though
the overhead of maintaining this buffer is certainly overkill for tiny
datasets).

And Ivy's simple API, while easier to understand, is significantly less
powerful. That it takes so much effort to grok Helm is a huge turn
off (and of course, no fault of the dev). Still, there simply is no
excuse for power users like myself to not do so anyway. The more I learn
about it, the more I wonder why I stuck to ivy for so long (but also
reminds me exactly why I did)!
2018-08-06 00:31:23 +02:00
Henrik Lissner
8d26879f99
Add :editor multiple-cursors module
Moves evil-mc/evil-multiedit out of feature/evil.
2018-08-06 00:31:23 +02:00
Henrik Lissner
884173112c
Add :lang racket to init.example.el 2018-07-29 19:31:32 +02:00
Henrik Lissner
088480047c
Polish & move new modeline into :ui modeline
Removes modeline library out of core-ui and contains them in :ui
doom-modeline and :ui modeline.

:ui modeline will eventually replace :ui doom-modeline, but is still
considered experimental. This update provides makes it much more stable
and closer to being feature complete.
2018-07-29 19:31:32 +02:00
Henrik Lissner
a2ffbe4ede
Add new emacs/hideshow module
Brings better default code folding support to various languages, like
yaml, ruby, matlab, haml and vimrc. Hideshow is still quite
unsophisticated and will need the help of another package for complete
code folding functionality. Perhaps origami or vimish fold.

The code-folding functional in the feature/evil module will soon be
replaced by that.
2018-07-29 17:41:59 +02:00
Henrik Lissner
d6461d495b
General & minor reformatting+refactor 2018-07-19 03:40:31 +02:00
Brett Mandler
8ff5543d3b
Moved lang/fish into lang/sh +fish 2018-07-18 15:56:55 -04:00
Brett Mandler
8bdc0f72b8
Added fish to init.example.el 2018-07-18 11:29:26 -04:00
Henrik Lissner
f540c6c40a
Disable neotree, enable treemacs (by default) 2018-07-11 01:09:14 +02:00
Henrik Lissner
3a3eb92087
Move :tools rotate-text to :editor rotate-text
This change was a long time coming.
2018-06-22 01:49:20 +02:00
Henrik Lissner
60779c9aed
feature/version-control => ui/vc-gutter, emacs/vc
Reorganize vcs functionality. Moves the custom fringe bitmaps into :ui
vc-gutter.
2018-06-22 01:49:20 +02:00
Matthew Lyon
9d8679cfaa Fix init.example electric module
I've been keeping my init up-to-date with the example, but the example
still has `electric-indent` whereas `make` warns me it's been renamed to
`electric`. This provides the correct module name in the example.
2018-06-20 09:32:05 -07:00
Henrik Lissner
bac00f7d0a
Enable +irony +rtags by default in init.example.el 2018-06-17 14:45:07 +02:00
Henrik Lissner
ec8ae0bedc
Add :ui pretty-code & set-pretty-symbols! autodef
Along with defaults for C/C++, elm, elisp, js, typescript, web-mode, and
org-mode. Thanks to @ar1a for inspiration.
2018-06-16 19:32:25 +02:00
Henrik Lissner
733ac8bed7
Add :lang common-lisp to init.example.el 2018-06-14 19:49:55 +02:00
Henrik Lissner
04ec62c8f2
General, minor refactor & feedback revision 2018-06-14 19:49:03 +02:00
Henrik Lissner
63a8c30765
Merge pull request #670 from ar1a/parinfer
:editor parinfer for lisp editing
2018-06-12 21:36:46 +02:00
Henrik Lissner
5d79729c15
Move :editor to top; disable parinfer by default
And shorten post-comment.
2018-06-12 21:36:09 +02:00
Aria Edmonds
d178d78b2b Move +parinfer to :editor parinfer 2018-06-11 10:09:37 +10:00
Henrik Lissner
40077c6c4b
Merge pull request #669 from ar1a/treemacs
Add treemacs module
2018-06-10 23:19:43 +02:00
Henrik Lissner
24c57e785f
Disable both treemacs by default
Once treemacs has been through its rounds (and I've customed its icons), it will likely become the new default, but for now, neotree still wins.
2018-06-10 23:15:58 +02:00
Aria Edmonds
29ea01b772
lang/emacs-lisp: Add +parinfer feature 2018-06-09 21:47:26 +10:00
Aria Edmonds
981116d509
Add treemacs to init.example.el 2018-06-09 12:18:16 +10:00
Henrik Lissner
fb6490288a
Disable eshell, pdf, tmux, & upload by default
To enforce Doom's "opt-in or best default" principle.
2018-06-08 13:08:38 +02:00
Henrik Lissner
426935e4ee
Add wakatime/fci to init.example.el 2018-06-08 13:08:38 +02:00
Henrik Lissner
f5fe36af23
Add :config literate module
It will tangle and byte-compile a config.org in your private config.
Doom will then load the resulting config.elc later.

Org is only loaded when updating this file.
2018-06-05 15:56:37 +02:00
Henrik Lissner
43c65ab628
Disable :collab floobits by default 2018-06-05 13:44:53 +02:00
Nealot
83232ac9aa Add basic qt support 2018-06-01 18:23:35 -04:00
Henrik Lissner
bab530ea2e
Revert +hub flag, but disable magithub by default
Must be enabled on a per-project basis. You can change this behavior by
setting +magit-hub-enabled-by-default to non-nil (before magit is
loaded).

Magithub has been made opt-in because:

1. Magithub is imposing, asking the user for a token, especially for
   users who don't use github (much or at all), but may occasionally
   have a project with a github remote.
2. magithub is really slow on first load for medium-to-large repos.
3. It's really easy to enable it through the magithub popup (H C e).
   magithub.enabled is saved into the project's .git/config file, so the
   setting will persist.

Also added a docstring to +magit-hub-features
2018-06-01 11:13:37 +02:00
Henrik Lissner
1a28a0c088
tools/magit: gate magithub behind +hub flag
Use +magit-hub-features to customize which features to load. Set it to
`t` to load all features.
2018-05-31 21:30:41 +02:00
Henrik Lissner
2784e3cb72
Disable company +childframe by default
The feature is still available, it simply isn't the default anymore (at
least until company-box is more stable).
2018-05-31 00:41:57 +02:00
Henrik Lissner
7377ba7537
Add +fuzzy flags to helm/ivy in init.example.el 2018-05-30 16:05:24 +02:00
Henrik Lissner
bdee28609a
New emacs/ediff module
Ediff config was moved out of core. Also includes evil compatibility
(mvoed out of feature/evil) & wconf save/restore.
2018-05-27 12:52:28 +02:00
Henrik Lissner
e2d055a40b
💥 Move dired, electric-indent, eshell, imenu, term modules to :emacs 2018-05-27 12:52:28 +02:00
Henrik Lissner
13267250a4
Add :collab floobits #615 2018-05-26 21:20:30 +02:00
Henrik Lissner
a814c833a2
Merge branch 'develop' into solidity-mode 2018-05-25 18:37:38 +02:00
Henrik Lissner
f058505306
New bin/doom (eventual replacement for make)
This commit adds bin/doom, which acts as the middle man that make once
was (and will stay for a while, though the documentation will shift away
from using it). It does everything the previous make interface did, but
is faster and more flexible. bin/doom should eventually replace the
makefile.

bin/doom also makes it easier to run Doom outside of ~/.emacs.d and
~/.doom.d with, for example:

  bin/doom run -p ~/.other.doom.d/ -e ~/.other.emacs.d

bin/doom.cmd is included for Windows users, but I don't recommend using
it yet. It hasn't been tested nor have I ever written a batch script
before.

Also update init.example.el with new defaults.
2018-05-21 01:38:17 +02:00
Edmund Milller
3193e7a8a7 Add Solidity
Add basic Solidity module
2018-05-18 17:04:25 -05:00
Henrik Lissner
45c21a5a83
Move :feature services => :tools prodigy 2018-05-16 22:41:21 +02:00
Henrik Lissner
abb4d5a009
Move :tools impatient-mode to new :collab category 2018-05-14 21:23:48 +02:00
Henrik Lissner
83118dc65c
Move feature/popup => ui/popup
And move settings to ui/popup/init.el
2018-05-14 13:05:03 +02:00
Henrik Lissner
30e0ab6aef
feature/syntax-checker: new +childframe flag for popups 2018-05-09 12:17:23 +02:00
Henrik Lissner
92c4770e11
Merge pull request #568 from miguelsantos/develop
Basic support for Nim
2018-05-09 10:02:11 +02:00
Henrik Lissner
317b556bde
Extract :ui posframe packages into other modules 2018-05-09 00:20:01 +02:00
Henrik Lissner
8d936f2d0b
Move editorconfig out of core into tools/editorconfig 2018-05-08 19:59:08 +02:00
Miguel Santos
1451b952b9 small typos 2018-05-08 11:58:59 -03:00
Miguel Santos
12e26761e2 add basic support for the nim language 2018-05-08 11:50:12 -03:00
Henrik Lissner
306c41e7b8
Revise company module flag comment descriptions 2018-04-26 17:12:17 -04:00
Julien Wintz
00a429d65f
Add comment for company childframes being only available on Emacs +26. 2018-04-25 02:10:03 +02:00