Commit Graph

815 Commits

Author SHA1 Message Date
243d69bb6d ui/workspaces: don't register filtered buffers
May indirectly address #1525
2019-08-22 14:45:40 -04:00
9b1c49149c New fix for #1525: 'selecting deleted buffer' error 2019-08-21 00:29:02 -04:00
58fb9faf3a ui/workspaces: use add-hook! for inline hook 2019-08-17 16:04:41 -04:00
0cf669ab92 Fix fix for #1525
Original fix complained about void function setf persp-buffers.
2019-08-15 21:30:59 -04:00
e32fd0c7e1 Fix #1525: selecting deleted buffer errors
...when killing Emacs or switching perspectives.
2019-08-15 21:14:21 -04:00
85b36c4aec ui/tabs: fix vestigial function references
And rename window paramater to tab-buffers
2019-08-15 15:53:47 -04:00
702369e888 Move :ui tabbar to :ui tabs
And update its README.org
2019-08-11 02:05:09 -04:00
a15b8e314a Add Hasklig pretty-code configuration
Took the list of symbols from
https://github.com/minad/hasklig-mode/blob/master/hasklig-mode.el ,
only rudimentary testings has been done on this
2019-08-09 20:25:13 +02:00
db1c1995fd ui/workspaces: fix evil-window-delete remapping
Relevant to #1641
2019-08-08 23:58:41 -04:00
2c481befc4 ui/tabbar: persist tabs across workspaces 2019-07-30 12:07:16 +02:00
71d3eccec5 Fix missing dir separator in +doom-dashboard-banner-dir 2019-07-29 03:18:39 +02:00
6587d67caf Use +pretty-code-iosevka-font-name on complete set
The ligatures are defined for the fontset `#Xe100 -> #Xe1cc` but the hook function did not use that complete space for the ligatures
2019-07-28 18:25:50 +02:00
19ecf8e46a Correct last inline hook defuns
See a3e262c7 for rationale
2019-07-28 16:10:53 +02:00
04166d6562 ui/popup: larger WoMan popups, by default 2019-07-27 19:40:31 +02:00
3313212f90 ui/workspaces: correct inline defun hooks
And add-to-list -> add-hook, because its a tiny bit faster (and fewer
characters).
2019-07-27 17:08:56 +02:00
a3e262c7ac 💥 Refactor add-hook! macro & change arg order
This update may potentially break your usage of add-hook! if you pass
the :local or :append properties to it. This is how they used to work:

  (add-hook! :append 'some-mode-hook #'do-something)

Thsoe properties must now follow the hooks, e.g.

  (add-hook! 'some-mode-hook :append #'do-something)

Other changes:
- Various add-hook calls have been renamed to add-hook! because I
  incorrectly assumed `defun` always returned its definition's symbol,
  when in fact, its return value is "undefined" (so sayeth the
  documentation). This should fix #1597.
- This update adds the ability to add multiple functions to hooks
  without a list:

    (add-hook! 'some-mode-hook
               #'do-something
               #'do-something-else)

- The indentation logic has been changed so that consecutive function
  symbols at indented at the same level as the first argument, but forms
  are indent like a defun.

    (add-hook! 'some-mode-hook
               #'do-something
               #'do-something-else)

    (add-hook! 'some-mode-hook
      (message "Hello"))
2019-07-26 20:17:29 +02:00
b1b2eba984 ui/tabbar: set variables sooner
Giving the using a chance to customize them before centaur-tabs-mode is
activated.
2019-07-25 01:49:15 +02:00
650e9049f0 Autoload hl-fill-column-mode
Because the package doesn't, for some reason.
2019-07-24 15:25:24 +02:00
629249aa43 Enable git-gutter on find-file-hook and org-mode
And disable it in pdf-view-mode. Perhaps this is too comprehensive?
2019-07-23 20:43:35 +02:00
fec53f7b1d Fix git-gutter not updating when whole file is staged
But we don't want it triggering on git-gutter:*-hunk, because they do
their own refreshing work.
2019-07-23 18:18:43 +02:00
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
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
20e2aa0b18 ui/doom: only load solaire-mode for supported themes 2019-07-23 02:06:35 +02:00
d7ed52f3c7 Add ui/hydra module
And conforms all existing hydras to the naming convention for
interactive commands, e.g.

  +vc-gutter-hydra -> +vc/gutter-hydra
2019-07-22 23:51:12 +02:00
88813ff196 Minor reformatting across the board
Gotta

Look

Nice
2019-07-22 22:34:08 +02:00
9d1e2c5bd9 Fix delq! use causing wrong-type-arg error w/ treemacs 2019-07-22 16:41:43 +02:00
1c4215c187 Fix 'command not found' errors for hidden commands 2019-07-22 04:46:14 +02:00
5e0177d667 ui/workspaces: conform to new hook/advice conventions 2019-07-22 02:37:47 +02:00
448ec65997 ui/fill-column: move init code into autoload. 2019-07-22 02:37:46 +02:00
256284f5c0 ui/hl-todo: add HACK, REVIEW & DEPRECATED keywords
And include following colon, if any.
2019-07-22 02:37:46 +02:00
7058facf9d ui/vc-gutter: disable git-gutter in some modes
Disabling git-gutter in fundamental-mode theoretically reduces the
number of times git-gutter is initialized (because it has to switch to
and from fundamental-mode once, sometimes twice, when changing major
modes).

git-gutter also has trouble with org-indent-mode, so we disable it
there.

And it isn't useful in image-mode.
2019-07-22 02:30:41 +02:00
b01606e99b ui/vc-gutter: fix gutter not updating after stage
When using git-gutter:stage-hunk, the gutter would be updated just
before its state is changed, creating a stale diff.
2019-07-22 02:30:41 +02:00
ee10b3b0d9 core-lib: add doom-{glob,path,dir}, replace {file,dir}!
- file! replaces FILE!
- dir! replaces DIR!
- doom-{glob,path,dir} have the power to construct paths out of the
  segment pieces provided to it.
- Move doom-files-in to core-lib and refactor to use the above.
2019-07-22 02:30:39 +02:00
99e23adec1 ui/doom: simplify solaire init 2019-07-22 02:30:38 +02:00
8c41093fae ui/doom: update doom-themes config for treemacs/neotree 2019-07-22 02:30:38 +02:00
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
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
b57dccf825 ui/tabbar: remove buffer-order function reference
centaur-tabs-adjust-buffer-order-function and
centaur-tabs-adjust-buffer-order were removed upstream
2019-07-13 12:03:13 +02:00
92ca6762ac ui/tabbar: rewrite to use centaur-tabs
Plus some modifications to make tabs truly window-local, like they are
in any tabbed modern editor.
2019-07-12 17:40:48 +02:00
dbcd2f7624 Move treemacs-last-error-persist-file out of ~/.emacs.d
Git off my lawn.
2019-07-11 17:22:27 +02:00
394d13179f Fix Org tags popup hack
Causing Org tags output to be written to the source buffer.
2019-07-10 17:28:20 +02:00
14b1e36812 ui/popup: fix *Org tags* popups
- So the mode-line doesn't "hide" the last line of the popup
- So org doesn't delete all other windows when displaying the *Org tags*
  popup
- Minor corrections to comments in ui/popup/+hacks.el
2019-07-10 12:41:51 +02:00
2f86c01170 Add default popup rule for M-x calc 2019-07-09 19:55:37 +02:00
c5cd29ef74 ui/workspaces: refactor restoration of indirect buffers 2019-07-08 21:21:02 +02:00
53d1bf6b58 Refactor +popup/other 2019-06-30 18:12:16 +02:00
20b397362b Don't auto-kill term/vterm/eshell dedicated popups 2019-06-27 01:27:40 +02:00
525cba3f3b ui/workspaces: fix +workspaces|init for daemon 2019-06-26 19:17:56 +02:00
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
f4ef25bb12 Don't delete-other-windows during org-agenda popup 2019-06-26 14:31:06 +02:00
b5c5b7f10d Move posframe+persp-mode fix to ui/workspaces 2019-06-26 14:31:06 +02:00