Commit graph

295 commits

Author SHA1 Message Date
Fangrui Song
51f2ea2932 tmux: string-split -> split-string 2018-06-17 18:57:02 -07:00
Henrik Lissner
6808c46b58
💥 Change set-popup-rule! usage
Now accepts a flat plist of all its former parameters, including new
:parameters and :actions properties to increase your control over the
fate of your windows.

The old usage of set-popup-rule! is deprecated and may not work right!

The :ui popup module has also seen a major refactor to improve
efficiency and load times.

Sorry! This is the last "big" change before 2.1!
2018-06-18 02:34:16 +02:00
Henrik Lissner
233a1f6469
evil-magit-use-z-for-folds = t
And remove old meta key fold commands. Stashing commands are available
through Z, instead.
2018-06-17 14:50:58 +02:00
Henrik Lissner
51d49639f6
Change M-k/M-j keys to gk/gj in magit-rebase
Avoid meta keys where possible.
2018-06-17 14:22:29 +02:00
Henrik Lissner
17981d6a61
Conform hook names to conventions
Also minor reformatting & comment corrections.
2018-06-17 02:25:12 +02:00
Henrik Lissner
fd949e7063
Make diff larger when committing via magit
The diff window contains more important information, so we shrink the
git commit window and enlargen the diff window.
2018-06-16 21:48:37 +02:00
Henrik Lissner
01b2856cc2
From eshell, open magit buffers in same window 2018-06-16 15:20:10 +02:00
Henrik Lissner
c305d63dd7
Improve magit display-buffer logic
Now opens derivative magit buffers (from popup magit windows) in
fullscreen.
2018-06-16 14:38:52 +02:00
Henrik Lissner
709c708376
Open magit-popup is a side window
Instead of in a split below the current window.
2018-06-16 14:38:06 +02:00
Henrik Lissner
ab9b8d97bc
Replace :rotate with set-rotate-patterns! autodef
And its references.
2018-06-15 18:03:50 +02:00
Henrik Lissner
0ef522bbf2
tools/pdf: close annotation lists when killing pdf 2018-06-15 03:42:01 +02:00
Henrik Lissner
eaca8c58fa
Move unit tests from ert to buttercup
Easier to organize and write. Now I can hopefully strive for better
coverage!
2018-06-15 03:42:01 +02:00
Henrik Lissner
98d2f1de3f
Add set-env! autodef; make :env obsolete 2018-06-15 03:42:01 +02:00
Henrik Lissner
d8b1e469bc
Introduce autodefs to replace some settings
+ :popup -> set-popup-rule!
+ :popups -> set-popup-rules!
+ :company-backend -> set-company-backend!
+ :evil-state -> set-evil-initial-state!

I am slowly phasing out the setting system (def-setting! and set!),
starting with these.

What are autodefs? These are functions that are always defined, whether
or not their respective modules are enabled. However, when their modules
are disabled, they are replaced with macros that no-op and don't
waste time evaluating their arguments.

The old set! function will still work, for a while.
2018-06-15 03:42:01 +02:00
Henrik Lissner
5b78cf7ed6
tools/editorconfig: conform to name conventions
Renamed doom-editorconfig-mode-alist to +editorconfig-mode-alist
2018-06-14 03:36:46 +02:00
Henrik Lissner
36171f5b33
Fix :after-call deferred packages not loading
If you open emacs with a file (emacs file.txt), the file is switched to
before the switch-buffer hooks are set up. However, many core packages
are hooked to those switch-buffer hooks (to load when they're first
triggered). They miss the boat and don't get loaded.

These packages are now hooked onto after-find-file as well (and
immediately), which will fire when a file is opened, before or after
initialization.

Fixes #680
2018-06-14 03:36:46 +02:00
Henrik Lissner
f74d595e17
Merge pull request #678 from ar1a/wakatime-interactive
Make +wakatime-init interactive
2018-06-13 16:53:09 +02:00
Aria Edmonds
000dee7abf Upstream changes to wakatime 2018-06-13 09:50:09 +10:00
UndeadKernel
99daa9bd43 Fix: restore the display of current and total pages in PDF docs
A refactoring spree introduced a bug by incorrectly making a symbol
a function. This fixes this.
2018-06-12 15:32:39 +02:00
Aria Edmonds
b9a179eeed Make +wakatime-init interactive
Sometimes it doesn't prompt to decrypt gpg, etc etc. Regardless, I think
this should be interactive so it's easily re-initialized
2018-06-11 12:33:04 +10:00
Henrik Lissner
4c8afef3c9
Merge pull request #673 from zaiste/add-binding-for-git-file-delete
bindings: magit | add `file-delete` as `SPC g x`
2018-06-11 01:33:07 +02:00
Henrik Lissner
87ccdecd46
Autoload magit-file-delete 2018-06-11 01:06:41 +02:00
Henrik Lissner
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
Henrik Lissner
383ecf7a08
Fix magit rebase/log windows being hidden by diffs 2018-06-10 17:28:17 +02:00
Aria Edmonds
e88de1692d Don't shadow wakatime-api-key 2018-06-09 23:43:57 +10:00
Aria Edmonds
c3db907204
Fix wakatime breaking emacs if no api-key set 2018-06-09 22:58:45 +10:00
Henrik Lissner
70ce322e99
Add :tools wakatime module 2018-06-08 13:08:38 +02:00
Henrik Lissner
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
Henrik Lissner
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
Aria Edmonds
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
Henrik Lissner
5c5b4931cf
Autoload the +macos!open-width macro 2018-06-04 21:17:49 +02:00
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
d20ffca78d
tools/magit: minor refactor/reformatting 2018-06-02 10:56:04 +02:00
Henrik Lissner
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
Henrik Lissner
1ffdf616e8
Hide mode-line in magit windows (experimental) 2018-06-02 10:54:12 +02:00
Henrik Lissner
6d218fc5a0
Consider magit buffers real
So they can be switched to if buried
2018-06-02 10:53:51 +02:00
Henrik Lissner
c5df4e7d2f
tools/magit: remove +hub check around magithub package 2018-06-01 13:40:48 +02: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
dff6e44635
tools/magit: gate evil-magit behind evil +everywhere flag 2018-05-31 21:31:29 +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
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
Aria
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
Henrik Lissner
404f9db748
tools/ein: minor refactor 2018-05-30 19:17:31 +02:00
Henrik Lissner
add020485e
tools/ein: fix void-variable ein:jupyter-default-notebook-directory error 2018-05-29 23:09:57 +02:00
Henrik Lissner
11c7a5c1f4
Fix test for tools/password-store 2018-05-29 17:55:34 +02:00
Henrik Lissner
e88f84fd02 Rewrite tools/password-store API 2018-05-29 17:50:55 +02:00
Henrik Lissner
6bb5946765
tools/pdf: rename +pdf-tools-pages segment => +pdf-pages 2018-05-29 15:34:54 +02:00
Henrik Lissner
947fe345c3
Minor, general refactor
In some contexts, map-put is superior to add-to-list.
2018-05-29 15:34:13 +02:00
Henrik Lissner
2ffef6edce
Fix void-variable +modeline error from outdated load! call 2018-05-28 12:43:25 +02:00