Commit Graph

324 Commits

Author SHA1 Message Date
87ccdecd46 Autoload magit-file-delete 2018-06-11 01:06:41 +02:00
01c63481f6 Merge pull request #671 from ar1a/wakatime-fixed
Fix wakatime breaking emacs if no api-key set
2018-06-10 22:27:33 +02:00
383ecf7a08 Fix magit rebase/log windows being hidden by diffs 2018-06-10 17:28:17 +02:00
e88de1692d Don't shadow wakatime-api-key 2018-06-09 23:43:57 +10:00
c3db907204 Fix wakatime breaking emacs if no api-key set 2018-06-09 22:58:45 +10:00
70ce322e99 Add :tools wakatime module 2018-06-08 13:08:38 +02:00
85a0c9efc9 New default display-buffer handler for magit
+magit-display-buffer-fullscreen is a more sophisticated (albeit
experimental) replacement for magit-display-buffer-fullframe-status-v1,
which fullscreens magit, but will also:

a) Keep the status window visible
b) Treat magit buffers not opened from magit-status as popups
2018-06-07 02:51:45 +02:00
b26bbd4762 Fix args-out-of-range in enable-minor-mode-maybe
Caused by trying to use out-of-scope match data.
2018-06-07 02:51:03 +02:00
13413a72e8 tools/magit: Show word-granularity on chosen hunk
This really seems like it should be a default, it's so handy to get
better diffs, sort of like how github does it. if set to 'all then it'll
show on all of them, but I think t is good enough.
2018-06-06 18:08:02 +10:00
5c5b4931cf Autoload the +macos!open-width macro 2018-06-04 21:17:49 +02:00
32a2a2b64d General, minor refactor
+ Group hooks with add-hook!
+ Sharpquote elfeed call
+ Extract elfeed buffer detector into function and ensure idempotency of
  doom-real-buffer-functions
2018-06-03 15:51:59 +02:00
1e81a35461 Minimize dependence on map!
This is in preparation for general.el integration coming in 2.1.1. It is
very likely that map! will change (and even more, be split into several
macros). Not much, but change none-the-less. Specifically, the state
keywords (e.g. :nvi, :n, :i) will be removed in favor of a :state
property that takes a list, e.g. (normal visual insert).

In any case, both map! and general are also relatively expensive
compared to define-key and evil-define-key* (and the new define-key!
macro), so use that when we can.

This also means changes to either API won't affect Doom's modules in the
long term.
2018-06-03 15:46:00 +02:00
d20ffca78d tools/magit: minor refactor/reformatting 2018-06-02 10:56:04 +02:00
1dd4076f8d Handle magit windows w/ fullframe-status-v1
This new default was chosen to keep magit consistent with fullscreen
:app workflows (which work very similarly). It is also more predictable
than the default method.
2018-06-02 10:54:30 +02:00
1ffdf616e8 Hide mode-line in magit windows (experimental) 2018-06-02 10:54:12 +02:00
6d218fc5a0 Consider magit buffers real
So they can be switched to if buried
2018-06-02 10:53:51 +02:00
c5df4e7d2f tools/magit: remove +hub check around magithub package 2018-06-01 13:40:48 +02:00
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
dff6e44635 tools/magit: gate evil-magit behind evil +everywhere flag 2018-05-31 21:31:29 +02:00
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
3a16b70022 Add +magit/clone command & bind to SPC g C #633
magithub-clone doesn't support full urls, magit-clone doesn't support
user/repo notation. +magit/clone supports both.
2018-05-31 13:59:21 +02:00
5f3cbeadd0 Fix magithub not loading after magit
I'd have to run a magithub command to get everything to pop up like pull
requests and what not. I think this was an oversight -- just removing
this will still lazyload it, but instead when magit runs!
2018-05-31 11:25:33 +10:00
404f9db748 tools/ein: minor refactor 2018-05-30 19:17:31 +02:00
add020485e tools/ein: fix void-variable ein:jupyter-default-notebook-directory error 2018-05-29 23:09:57 +02:00
11c7a5c1f4 Fix test for tools/password-store 2018-05-29 17:55:34 +02:00
e88f84fd02 Rewrite tools/password-store API 2018-05-29 17:50:55 +02:00
6bb5946765 tools/pdf: rename +pdf-tools-pages segment => +pdf-pages 2018-05-29 15:34:54 +02:00
947fe345c3 Minor, general refactor
In some contexts, map-put is superior to add-to-list.
2018-05-29 15:34:13 +02:00
2ffef6edce Fix void-variable +modeline error from outdated load! call 2018-05-28 12:43:25 +02:00
1a452b6842 💥 Change first arg of load! macro
load!'s first argument is no longer a symbol (that will cause
void-variable errors now) to save on unnecessary interning and simplify
compile-time logic. It accepts any valid form that evaluates to a string
now.

If you use load!, you need to change its argument to a string!

e.g. (load! +my-module) => (load! "+my-module")
2018-05-27 12:52:28 +02:00
e2d055a40b 💥 Move dired, electric-indent, eshell, imenu, term modules to :emacs 2018-05-27 12:52:28 +02:00
6bfac0ada2 tools/eshell: fix split-window behavior not burying eshell
This happens when there is no other buffer to replace it with.
2018-05-26 21:22:40 +02:00
8c053fcfa5 tools/eshell: remove useless remove-hook call
You can't remove a hook function from a global hook list buffer locally.
2018-05-26 21:21:56 +02:00
e70b1af49f Bind RET to +eshell/goto-end-of-prompt from normal mode
This command enters insert state.
2018-05-26 21:09:10 +02:00
c1c3a0987c Better move-to-prompt-on-insert-mode hook for eshell 2018-05-26 21:09:10 +02:00
177bf2a9de Fix evil change/delete operators in eshell buffers
evil-{change,delete}{,-line} now jump to the prompt before trying to
modify the buffer.
2018-05-26 21:09:10 +02:00
6e82e6fa19 tools/term: fix void-function error due to misplaced reference to +eshell-p 2018-05-25 01:59:15 +02:00
0348686cce tools/eshell: change split behavior to open non-eshell window 2018-05-25 01:00:04 +02:00
cce30367bb tools/eshell: fix naive path concatenation for eshell-directory-name 2018-05-25 00:58:09 +02:00
cf3c0d808d tools/tmux: minor refactor of +tmux/rerun 2018-05-25 00:53:46 +02:00
be9a06b126 tools/magit: add magit-gitflow 2018-05-25 00:53:04 +02:00
09cb4f6716 Major refactor & optimization of how modules load their packages
Now that we are loading package autoloads files (as part of the
generated doom-package-autoload-file when running make autoloads), many
:commands properties are redundant. In fact, many def-package! blocks
are redundant.

In some cases, we can do without a config.el file entirely, and can move
into the autoloads file or rely entirely on package autoloads.

Also, many settings have been moved in their module's autoloads files,
which makes them available ASAP; their use no longer depends on module
load order.

This gained me a modest ~10% boost in startup speed.
2018-05-25 00:46:16 +02:00
0b48575c14 Remove def-hydra! macro alias
Causes byte-compilation issues and the alias is unnecessary.
2018-05-24 22:03:19 +02:00
3d0745c3ec Add automatic indentation-detection (experimental)
Editorconfig is given precedence. If it successfully sets an
indent_style or indent_size for the current buffer, automatic
indentation detection will be disabled.
2018-05-18 01:28:41 +02:00
b1dce548ad tools/eshell: consider eshell buffers real 2018-05-18 01:26:41 +02:00
8807471846 tools/eshell: fix parameters being set on the wrong window
This would cause find-file commands to ignore certain windows, as well
as eshell buffers closing the incorrect window when they are quit.

Addresses #593
2018-05-18 01:26:41 +02:00
45c21a5a83 Move :feature services => :tools prodigy 2018-05-16 22:41:21 +02:00
0fe551983e Merge pull request #577 from ppwwyyxx/patch-3
Update imenu/config.el
2018-05-15 12:05:49 +02:00
5ab790c07d tools/eshell: default to ~/.doom.d/eshell or ~/.eshell 2018-05-15 01:57:40 +02:00
ba2fb4a82d tools/eshell: remove custom aliases
That belongs in my private module
2018-05-15 01:33:22 +02:00