Commit Graph

88 Commits

Author SHA1 Message Date
ca9ec4f7a2 feat(editor/consult): massively simplify consult setup
Remove nearly all custom behavior with consult.

The separate groups for project and non-project buffers within
consult-buffer weren't as useful after switching away from orderless to
fussy for completion scoring, as non-project buffers were often sorted
higher than project buffers.

And there's no need for the custom siren-consult-projectile-buffer
function, as consult-project-buffer does the same thing when configured
to use projectile's root path function.
2022-07-20 22:02:13 +01:00
2a60c0d42f fix(navigation/dired): fix unbinding of M-b 2022-07-15 19:09:19 +01:00
caf8791363 feat(navigation/dired): improve keybindings and listing switches setup 2022-07-13 18:48:09 +01:00
c5b149497b fix(navigation/consult): fix custom project directory lookup function 2022-06-01 23:52:41 +01:00
c8a1170641 chore(navigation/consult): update consult and custom query functions 2022-05-12 00:34:01 +01:00
2b39d5b0d7 chore(use-package): use :preface in favor of :init when defining things 2022-04-22 23:25:56 +01:00
846c13881e fix(navigation): resolve load order between consult and projectile 2022-04-19 01:12:42 +01:00
27acd5edca chore(core): replace final :bind with :general which was previously missed 2022-03-16 20:42:08 +00:00
a8618938bf feat(core): use general.el for keybind definitions nearly everywhere
Primarily this replaces :bind with :general in all use-package calls.
2022-03-14 21:16:15 +00:00
246a459622 fix(navigation): remove ctrlf package in favor of isearch
Visually ctrlf is very nice, but it seems one of it's features is to
stay active in the mini-buffer until explicitly cancelled. This can
easily lead to annoyance if you mess up a C-x C-s keybind and then move
on to other buffers and such, as ctrlf will still be active.

Regular isearch however will dismiss itself as soon as you do anything
other than typing in a search query. Hence causing a lot less annoyance
for me.
2022-03-10 21:11:52 +00:00
1db4018497 feat(nativation/consult): custom groups for consult-buffer
Using consult-buffer to switch between buffers is now project aware,
meaning when current buffer is in a project, the list of buffers is
split into two groups; project buffers, and other non-project buffers.

The project buffers group is above the other buffers group, meaning it's
very easy to switch to other buffers within the same project, while
still being able to switch to non-project buffers too.

When current buffer is not part of a project, all buffers are shown
together in a single completion group.
2022-02-17 22:08:03 +00:00
1a41eea77e fix(nativation/helm): resolve helm loading issue after update 2022-02-09 00:35:39 +00:00
5cd56e866b chore(navigation/centaur-tabs): minor customization tweaks 2022-01-26 22:49:38 +00:00
bd36da4bfe fix(navigation/helm): set helm-find-files to C-x f
This allows C-x C-f to be bound to find-files, which now uses vertico to
great effect.
2022-01-17 22:35:25 +00:00
b5daa4f2e5 fix(navigation/helm): add require helm-mode to fix errors 2022-01-17 22:33:28 +00:00
819f068879 fix(dired): prevent dired from prompting about removing dired buffers
When deleting a file in Dired, it has recently started prompting about
removing the dired buffer along with file buffer. This is rather
annoying, as I almost never want to close the dired instance I have open
when simply deleting a file from a folder.

So I've overridden the relevant function, and added an option
specifically to enable/disable the prompt about removing the dired
buffer.
2021-11-26 21:28:25 +00:00
1f7d739193 feat(navigation/imenu): improve C-t imenu keybinding
Use consult-lsp-file-symbols if available and lsp-mode is enabled in
current buffer. Otherwise fall back to consult-imenu. Also fall back on
consult-lsp-file-symbols if it produces an error, which seems to happen
for some language servers right now.
2021-10-28 11:04:24 +01:00
3a8dc7944f chore(navigation/helm): set sources which default to using follow 2021-10-24 04:03:12 +01:00
31078e618f chore(navigation/helm): attempt to get posframe working perfectly again
Only outstanding issue is that some helm-completions when follow mode is
enabled do not show the followed file content in the posframe.
2021-10-24 03:59:10 +01:00
11099af502 feat(navigation/helm): add helm-xref package 2021-10-24 03:51:56 +01:00
6e65e27ca2 feat(navigation/helm): make treemacs/neotree auto-hiding customizable 2021-10-22 11:42:27 +01:00
35d6e12612 fix(navigation): resolve dired/dired+ load order issue
Because dired+ must be loaded before the dired creates a buffer, we have
to actually manually require dired+ when loading dired. Otherwise the
first dired buffer within a fresh Emacs instance will have dired+
features, but any further buffers will.

Also we can now remove a workaround for dired+ with Emacs 28 that
prevented files/folders from being deleted with dired.
2021-10-07 22:56:07 +01:00
bde765001b feat(navigation): make helm take up full frame
Further tweaks to helm appearance, now simply take up the full frame
with it's completion UI. When follow mode is enabled, have preview
appear in bottom half of the window.
2021-10-06 23:44:52 +01:00
cb0cf52769 feat(navigation): stop using helm-posframe
This reverts helm back to not using posframe, as it is kind of glitchy
and a bit slow. Helm has a built-in posframe like thing, but it doesn't
work quite the way I want, so I might try and sort that out at some
point.
2021-10-06 04:35:02 +01:00
22369470c4 feat(navigation): use consult instead of helm for imenu completion
When lsp-mode is enabled, use consult-lsp-file-symbols instead of
consult-imenu, as it yields a more structured list and nicer formatted
symbol results. The result list is identical as lsp-mode updates imenu
with all file symbols, but via imenu they're just not rendered as
nicely.
2021-10-06 02:28:26 +01:00
4cb9c3d3a0 feat(makefile): improve makefile execution and bind it to C-c C-m
Use the makefile-executor package instead of helm-make to execute make
targets. But we still rely on helm-make due to it's more efficient
available targets lookup function compared to that of makefile-executor.

Running make targets is bound to C-c C-m now which is nice and fast, and
completes via completing-read, which is currently giving a better
suggested candidates via selectrum+orderless than helm-make does.

And helm-make is still available via the old C-c h m keybinding.
2021-09-13 12:38:34 +01:00
b53cef4d30 fix(navigation): make helm play nicer with treemacs when helm-posframe is enabled
When helm-posframe is enabled, there's no need to to hide treemacs or
neotree before showing helm.
2021-06-22 02:08:52 +01:00
688b14a775 fix(navigation): workaround dired+ incompatibility with dired in master branch
Commit 194d54a929a83fede75d618b104acd1b544feb10 changed behavior of
deletion functions in Dired, causing Dired+ to break deletion, as it
wholesale replaces a bunch of Dired functions with it's own
implementation. For now I've just copied the Dired variants of those
functions to restore them.
2021-06-21 03:51:16 +01:00
07b0013c75 feat(editor): add config for vertico + orderless as a alternative to selectrum
I still prefer selectrum for the time being, but I've written the
config, might as well commit it for potential future use or
experimentation.
2021-06-20 01:27:15 +01:00
b647d6447b fix(nativation): make consult-buffer (C-x b) work before projectile is loaded 2021-06-19 19:45:55 +01:00
d90e559047 feat(navigation): enabled hl-line-mode in dired 2021-06-17 20:54:46 +01:00
f2614ab89b chore(navigation): place ivy related keybinding within ivy module 2021-06-17 20:26:23 +01:00
354ed23d21 feat(navigation): add consult 2021-06-17 20:19:26 +01:00
5878449963 feat(navigation): add ctrlf-mode, a isearch replacement 2021-06-17 20:18:09 +01:00
63b5441deb feat(navigation): use helm-posframe 2021-06-17 20:16:52 +01:00
93c22e1bb9 feat(editor): replace ido and amx with selectrum, prescient and marginalia 2021-06-17 20:13:57 +01:00
fc0e0acd65 feat(navigation): improve list of files searched by helm-ag via ripgrep 2021-05-08 22:10:25 +01:00
bcd34409db fix(navigation): ensure helm-ring is correctly loaded on startup 2021-02-27 23:33:50 +00:00
395ad7ccac fix(startup): correctly setup deferred loading for various packages
This just ensures that various packages that can defer loading actually
does defer until they're first used.
2021-02-17 01:52:59 +00:00
50a85ca8d8 fix(packages): fix incompatibility with latest use-package
Due to changes to use-package's :custom option, my abuse of it to set
custom variables no longer works and yields errors.

Instead correctly set custom variables with defvar.
2021-01-15 02:11:18 +00:00
1c81570ef7 fix(packages): update package definitions to be compatible with latest straight.el
A recent change (https://github.com/raxod502/straight.el/pull/558) to
straight.el's use-package integration led to some of my :straight
definitions throwing errors.

When overriding the package name, do not wrap the real name in parens,
for example:

    ;; bad (no longer works)
    (use-package helm-global-bindings
      :straight (helm))

    ;; good (worked before, still works)
    (use-package helm-global-bindings
      :straight helm)
2020-08-27 23:37:28 +01:00
c1ddbe37aa feat(workspaces): add siren-tab-bar module with custom tab-bar-mode setup 2020-08-16 14:39:13 +01:00
6cca25c66c fix(navigation): Update setup for recent changes to helm 2020-08-11 13:47:21 +01:00
20597149bb fix(helm): Helm failure when tramp-methods variable is not defined 2020-07-13 21:48:32 +01:00
acb2d6f5fa fix(navigation): Dired disk usage command was unreliable on Linux 2020-06-07 16:19:49 +01:00
ecc278b83b feat(navigation): Add file/directory size commands to Dired
There's two different variants, both callable via M-? in dired
buffers. Without a prefix arg it will use `siren-dired-get-disk-usage`
which uses the external `du` command to get disk usage, or "space on
disk" for item at point or marked files and/or directories.

If called with a prefix (C-u M-?) it will instead use
`siren-dired-get-size` which is implemented in pure elisp, and
recursively gets the actual file sizes for item at point or marked files
and/or directories.

As the prefix variant is written in pure elisp, it is quite a bit slower
for very large directories with thousands of files.
2020-06-07 15:56:07 +01:00
ce174c73e3 chore(navigation): Switch back to mainline helm-ag package
All the PR's I cared about for helm-ag are now merged, so I no longer
need to custom fork.
2020-05-19 11:08:55 +01:00
ac0bf9b42e feat(lang): Enable use of markdown-edit-code-block
This allows editing code blocks within markdown files in a separate
buffer with the proper language major-mode applied.

Also integrate it with recursive-narrow, so it can be triggered with via
narrowing commands.
2020-05-12 17:18:09 +01:00
8868e975e2 fix(navigation): Ensure imenu config was is set correctly 2020-05-10 22:50:30 +01:00
cdacf31ca0 feat(editor): Replace browse-kill-ring with helm-show-kill-ring 2020-05-10 21:26:24 +01:00