Commit graph

144 commits

Author SHA1 Message Date
Henrik Lissner
4cc14389e8
PIN ALL THE PACKAGES 2020-01-14 22:32:11 -05:00
Henrik Lissner
e6638b82a1
Autoload forge-create-{pullreq,issue} 2020-01-04 15:42:04 -05:00
Henrik Lissner
48cd3e0ad0
tools/magit: prevent 'cannot determine magit's version' warnings
By ensuring the advice runs twice.
2019-12-15 23:43:33 -05:00
Alan Brown
ec08acba1e Changed to correct default location
https://git-scm.com/docs/git-credential-cache
2019-12-09 11:45:57 +00:00
Edmund Miller
89f4f9d88f
fix(magit): add bindings for github-review 2019-12-08 13:35:18 -06:00
Edmund Miller
617e46152f
add github-review 2019-12-08 13:34:34 -06:00
Henrik Lissner
44e22b7f80
tools/magit: replace +magit/clone w/ magit-clone
The former no longer works, since ghub's API has changed. Meanwhile, the
magit-clone command has grown in features to match (and surpass)
+magit/clone, so we'll just use that instead.
2019-11-23 01:21:25 -05:00
Henrik Lissner
5e6363f025
tools/magit: invalidate projectile cache on git checkout 2019-10-29 11:36:46 -04:00
Henrik Lissner
54559d567a
tools/magit: hide modeline in magit-popups
Since magit-gitflow still uses the old magit-popups, rather than
transient.
2019-10-25 02:38:15 -04:00
Henrik Lissner
e0469e14c0
Minor refactors & reformatting across the board 2019-10-20 19:57:27 -04:00
Henrik Lissner
7f0ca974e9
tools/magit: free up 0-4 keys for evil & bind g=
- Replaces 0 with g= (magit-diff-default-context)
- Unbinds 1-4 keys so you can use numbered motions in magit buffers
  again
2019-10-20 10:58:52 -04:00
Henrik Lissner
8407af98fd
tools/magit: disable magit-todos by default
This plugin is a source of slowness and occasional bugs. Instead of
enabling it by default, we keep it around for magit-todos-list, which
could replace +ivy/tasks.
2019-10-17 02:53:44 -04:00
Henrik Lissner
19bfb1285d
Fix #1852: magit not restoring wconf when quitting 2019-10-03 16:43:49 -04:00
Henrik Lissner
0e6c015d60
tools/magit: init forge after building emacsql 2019-10-03 11:42:22 -04:00
Henrik Lissner
bad0dba1fc
tools/magit: refactor magit-version advice
Not strictly necessary, but more correct.
2019-09-20 17:18:16 -04:00
Henrik Lissner
2d365619cd
General refactor & cleanup, across the board 2019-09-13 22:00:34 -04:00
Henrik Lissner
70c60e6583
tools/magit: re-enable magit-todos over tramp
Reverts 9ab49be. TRAMP support was added in
alphapapa/magit-todos@a80dace
2019-09-07 19:57:58 -04:00
Henrik Lissner
92c839be02
tools/magit: warn if emacsql fails to build #1751 2019-09-03 15:47:38 -04:00
Henrik Lissner
abc80e43ae
tools/magit: disable magit-todos over TRAMP 2019-09-02 13:14:52 -04:00
Henrik Lissner
ccaf92b0d3
tools/magit: don't kill all magit buffers when quitting one
And mark all outdated buffers, rather than just the ones in the current
workgroup.
2019-08-28 15:22:14 -04:00
Henrik Lissner
9ab49be564
Fix "fatal: no names found" errors on 'doom rebuild'
Some packages that depend on org (like elfeed) will load the built-in
org early in the rebuild/package install process, which causes org to
define org-release and org-git-version, sometimes overwriting our stubs
for it. Without our hack, org call 'git describe' in the org repo in an
attempt to determine the installed version, which won't work in a sparse
clone. To ensure future definitions never overwrite ours, we advise them
as well.

Also moves magit-version hack to its autoload file, for consistency with
org's hacks.
2019-08-07 16:31:45 -04:00
Henrik Lissner
19dd4e8db8
Correct more inline hook defuns 2019-07-28 02:32:25 +02:00
Henrik Lissner
82ae3a73f3
def-advice!->defadvice! & conform to new advice conventions
This commit does two things:

- Renames def-advice! to defadvice!, in the spirit of naming convenience
  macros after the function/macro they enhance or replace.
- Correct the names of advice functions to indicate visibility and
  intent. A public advice function like doom-set-jump-a is meant to be
  used elsewhere. A private one like +dired--cleanup-header-line-a
  shouldn't -- it likely won't work anywhere but the function(s) it was
  made to advise.
2019-07-23 17:24:56 +02:00
Henrik Lissner
76cacb5bfe
💥 Rename def-package! -> use-package!
Calling this pivotal macro "def-package!" has frequently been a source
of confusion. It is a thin wrapper around use-package, and it should be
obvious that it is so. For this reason, and to match the naming
convention used with other convenience macros/wrappers, it is now
use-package!.

Also changes def-package-hook! -> use-package-hook!

The old macros are now marked obsolete and will be removed when straight
integration is merged.
2019-07-23 12:50:45 +02:00
Henrik Lissner
6b5d65b55b
tools/magit: reuse magit-status window
Instead of opening the same buffer in a new window.
2019-07-22 04:01:18 +02:00
Henrik Lissner
060ede0e2e
General, minor reformatting across the board
And an offering of blood to our great lord Byte Compiler-sama.
2019-07-22 02:37:45 +02:00
Henrik Lissner
cbafa6b749
tools/magit: add -r option to magit-pull 2019-07-22 02:37:44 +02:00
Henrik Lissner
a55a71b8ce
tools/magit: recognize ~/.config/git/credential 2019-07-22 02:37:44 +02:00
Henrik Lissner
72f97be86f
tools/magit: magit-save-repository-buffers = nil
Autosaving our buffers can trigger unwanted side-effects, like save
hooks and formatters, which is too magical. Instead, trust the user to
know what they're doing.
2019-07-22 02:30:41 +02:00
Henrik Lissner
ce4b8940ca
tools/magit: revise default window management for magit
The former default display function would strive to open windows below
the current magit window (splitting it), but this would stack and
quickly become cramped. The behavior is now to reuse the same
window *unless* you're opening the process buffer or from the commit
window.
2019-07-22 02:30:41 +02:00
Henrik Lissner
ba26ce39fe
tools/magit: lazily compile emacsql
Prevents the emacsql binary from being built just because you tried
literally anything remotely to do with magit.
2019-07-22 02:30:41 +02:00
Henrik Lissner
b90dede1ab
💥 Replace package.el/quelpa with straight #374
There are a few kinks to iron out, but for the most part it's done. Doom
Emacs, powered by straight. Goodbye gnutls and elpa/quelpa issues.

This update doesn't come with rollback or lockfile support yet, but I
will eventually include one with Doom, and packages will be (by default,
anyway) updated in sync with Doom.

Relevant threads: #1577 #1566 #1473
2019-07-22 02:30:40 +02:00
Henrik Lissner
149b2617b0
💥 revise hook/var fns naming convention (2/2)
This is second of three big naming convention changes. In this commit,
we change the naming conventions for hook functions and variable
functions:

1. Replace the bar | to indicate a hook function with a -h suffix, e.g.

     doom|init-ui -> doom-init-ui-h
     doom|run-local-var-hooks -> doom-run-local-var-hooks-h

2. And add a -fn suffix for functions meant to be set on variables,
   e.g.

     (setq magit-display-buffer-function #'+magit-display-buffer-fn)

See ccf327f8 for the reasoning behind these changes.
2019-07-22 02:30:38 +02:00
Henrik Lissner
51d3b1b424
💥 revise advice naming convention (1/2)
This is first of three big naming convention updates that have been a
long time coming. With 2.1 on the horizon, all the breaking updates will
batched together in preparation for the long haul.

In this commit, we do away with the asterix to communicate that a
function is an advice function, and we replace it with the '-a' suffix.
e.g.

  doom*shut-up -> doom-shut-up-a
  doom*recenter -> doom-recenter-a
  +evil*static-reindent -> +evil--static-reindent-a

The rationale behind this change is:

1. Elisp's own formatting/indenting tools would occasionally struggle
   with | and * (particularly pp and cl-prettyprint). They have no
   problem with / and :, fortunately.
2. External syntax highlighters (like pygmentize, discord markdown or
   github markdown) struggle with it, sometimes refusing to highlight
   code beyond these symbols.
3. * and | are less expressive than - and -- in communicating the
   intended visibility, versatility and stability of a function.
4. It complicated the regexps we must use to search for them.
5. They were arbitrary and over-complicated to begin with, decided
   on haphazardly way back when Doom was simply "my private config".

Anyhow, like how predicate functions have the -p suffix, we'll adopt the
-a suffix for advice functions, -h for hook functions and -fn for
variable functions.

Other noteable changes:
- Replaces advice-{add,remove}! macro with new def-advice!
  macro. The old pair weren't as useful. The new def-advice! saves on a
  lot of space.
- Removed "stage" assertions to make sure you were using the right
  macros in the right place. Turned out to not be necessary, we'll
  employ better checks later.
2019-07-22 02:27:45 +02:00
Henrik Lissner
2c140496e8
tools/magit: popup transient below magit window
And tell popup manager to ignore transient popups.

Should affect #1539
2019-07-10 19:29:45 +02:00
Henrik Lissner
108c7ba5ad
Fix 'selected killed buffer' error on +magit/quit 2019-06-30 13:20:07 +02:00
Henrik Lissner
9a02bd8ac8
Minor refactors across the board
- when-let* -> when-let
- Fix projectile-locate-dominating-file for connected remote files
2019-06-26 14:31:06 +02:00
Huy Duong
c4b325fa4b Fix magit-clone error
magit-clone function has changed signature to work with transient.
So using the new magit-clone-regular instead.

Signed-off-by: Huy Duong <huy.duong@employmenthero.com>
2019-06-03 16:59:03 +07:00
Siddharth Shekar
aa64cf9426 Replace kill-this-buffer with kill-current-buffer
As per the documentation for kill-this-buffer, it should only be invoked
from the menu and behaves unpredictably when invoked programmatically.
2019-05-30 18:54:58 -07:00
Brice Waegeneire
66b74c63b7 magit-todos 1.2 removed magit-todos-require-colon
3c59aa03b2 (12)
2019-05-30 16:33:37 +02:00
Henrik Lissner
2214c3175e
Minor tweaks across the board 2019-05-21 00:34:32 -04:00
Henrik Lissner
42ba2a22b8
Prevent ~/.emacs.d/transient from being created 2019-05-19 02:17:59 -04:00
Henrik Lissner
10f60e7918
tools/magit: add -t/--tags action to magit-fetch 2019-05-13 00:20:06 -04:00
Henrik Lissner
051f792205
tools/magit: remove +magit-display-popup-buffer
Because magit uses transient now, and other plugins that use magit-popup
don't seem to need it anymore.

And update docstring+comments.
2019-05-04 19:13:26 -04:00
Henrik Lissner
b189254050
Don't kill magit on ESC (for evil users)
q is enough. An ESC could be accidental (e.g. when ESCing from visual
mode in magit).
2019-04-24 18:16:04 -04:00
Henrik Lissner
77e4cc4d58
💥 Remove :feature category
:feature was a "catch-all" category. Many of its modules fit better in
other categories, so they've been moved:

- feature/debugger -> tools/debugger
- feature/evil -> editor/evil
- feature/eval -> tools/eval
- feature/lookup -> tools/lookup
- feature/snippets -> editor/snippets
- feature/file-templates -> editor/file-templates
- feature/workspaces -> ui/workspaces

More potential changes in the future:

- A new :term category for terminal emulation modules (eshell, term and
  vterm).
- A new :os category for modules dedicated to os-specific functionality.
  The :tools macos module would fit here, but so would modules for nixos
  and arch.
- A new :services category for web-service integration, like wakatime,
  twitter, elfeed, gist and pastebin services.
2019-04-24 18:16:04 -04:00
Henrik Lissner
da34862e56
Fix TAB in magit-diff-mode 2019-04-10 18:51:20 -04:00
Henrik Lissner
5bcab488a7
Add {vc,git-gutter}-mode checks to vc refresher 2019-04-01 13:21:25 -04:00
Henrik Lissner
bdd410cb9c
Refresh vc on-demand after quitting magit #1298
To avoid the long delay when you have many buffers open while quitting
magit.
2019-04-01 13:12:00 -04:00
Henrik Lissner
820d77c546
tools/magit: bind TAB in more magit modes 2019-03-26 03:43:23 -04:00