Commit Graph

48 Commits

Author SHA1 Message Date
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
c69dec37bc fix(navigation): Improve helm-apropos usage
- Assign `helm-apropos` to `<helm-prefix> d` instead of the default
  `<helm-prefix> a`, as that is now taken up by `helm-do-ag`.
- Use the `helpful` package to describe functions and variables.
2020-05-10 21:26:12 +01:00
decc1c58c1 fix(navigation): Improve helm-ag keybindings
Have both `C-c C-'` and `C-c '` bound to `helm-do-ag-project-root`, so
it can be triggered from a terminal. As `C-'` cannot be sent to emacs
due to limitations of terminal emulators.

Also move `helm-do-ag` from `C-c C-s` to `<helm-prefix> a`, now that the
`helm-command-map` can reliably be used. This effectively means you
trigger `helm-do-ag` with `C-c h a` right now.
2020-05-10 21:26:06 +01:00
cb16ffe993 fix(navigation): Lazy-load helm without breaking keybindings
This involved always loading `helm-config` which sets up
`helm-command-prefix` and `helm-command-map` allowing use-package to set
bindings on the map all without loading anything else until needed.
2020-05-10 21:23:37 +01:00
889da809e0 fix(tools): Ensure helm-make package keybinding works
This is a temporary fix for now, as I prefer lazy-loading packages
whenever possible. However when lazy-loading helm, and then using
use-package to set a keybinding in the helm-command-map before it's
loaded, causes the "m" keybinding to be overridden by the default one
from helm, once helm loads.
2020-05-07 19:51:04 +01:00
1d04474ab0 feat(dired): Add dired-subtree and dired-narrow packages
- dired-subtree allows inline expansion of directories, effectively
  rendering a tree of directories and files.
- dired-narrow enables lives filtering of all entries in a dired buffer,
  making searching for and selecting directories and files much easier
  and intuitive.
2020-05-07 19:21:46 +01:00
c458d8ef2f feat(dired): Customize dired+ faces to match doom-themes
Also ensure dired+ is always loaded, as lazy-loading it seems to cause
the first dired buffer to not use dired+ plus, but all others afterwards
do.
2020-05-07 19:20:21 +01:00
801d6f133a feat(navigation): Improve narrowing with recursive-narrow package
Additionally allow `recursive-narrow-or-widen-dwin` to also trigger
`org-edit-src-code` within org buffers. This technically does not use
narrowing, but it does "focus" on the source code block for editing, so
it at least in spirit embodies the intent of narrowing.

This behavior was inspired by:
https://endlessparentheses.com/emacs-narrow-or-widen-dwim.html
2020-05-07 19:11:05 +01:00
34c130ae7e chore(navigation): Use custom fork of helm-ag
There's a few outstanding PRs and issues on helm-ag. I've collected the
changes I care about into my own fork under a branch called
`personal-patches`, and using that for now.
2020-05-06 23:32:28 +01:00
4869796d6f feat(navigation): Use ripgrep instead of the_silver_searcher in helm-ag 2020-05-06 23:08:23 +01:00
98f2dc0763 chore(navigation): Customize dired for GNU-based operating systems 2020-04-16 12:51:38 +01:00
c6f919dfe1 chore(completion): Replace ivy with ido in the few places it was used 2020-03-19 21:24:37 +00:00
79f70ef90b chore(navigation): Make helm-man-woman available via C-c h M
I mapped helm-make-projectile to "m" within the helm-command-map, which
replaced helm-man-woman which, so let's make that available as "M"
within the helm-command-map instead.
2020-03-06 11:56:54 +00:00
ced8ae8c88 chore(editor): Tweak amx, helm, undo-tree and flyspell keybinds 2020-03-05 22:07:22 +00:00
c91f3fecc4 chore(editor): Replace smex with amx package
Smex has not been updated since late 2015. Amx was originally a fork of
smex, but as since evolved much further into it's own thing.

Among other things is supports other completing backends, and ivy with
it's fuzzy matching feels rather nice. I'm keeping ido-mode for
everything else, but specifically for M-x I'll give ivy a try.
2020-03-01 22:35:59 +00:00
8730b23256 feat(navigation): Add config for centaur-tabs, not loaded on startup
As I don't see myself using tabs all the time, but potentially wanting
access to them every now and then, I need to manually trigger one of the
tab / tab-group switching keybindings, or M-x centaur-tabs-mode to load
and enable it.
2020-02-08 10:27:18 +00:00
b09cc28fb7 fix(navigation): Improve dired on macOS 2020-02-04 10:08:54 +00:00
b13ca362cb feat(packages): Replace package.el with straight.el 2020-02-04 10:08:37 +00:00
b257c7d206 feat(projects): Get treemacs working nicely with helm
And also better configured treemacs in general.
2020-01-27 03:55:12 +00:00
abff344eb2 refactor(folding): Improve siren-folding module
- Add a siren-folding function which enables all folding-related modes,
  and change other modules to use this new function.
2020-01-26 21:39:46 +00:00
392d769816 feat(line-numbers): Swap linum for built-in display-line-numbers
Also create a new siren-display-line-numbers module and function that's
responsible for turning on the display of line numbers. Future changes
to how line numbers are displayed can now be done in a single place.
2020-01-26 20:44:13 +00:00
290ba13b1c chore: Improve loading of prog-mode features into non-prog-mode modes
There are a few major modes which are not based on prog-mode, that I
want to behave like prog-mode. Previously each did nearly all the same
setup that's done via the prog-mode hooks. Now instead let's actually
run runs the hooks for prog-mode.
2020-01-26 20:25:49 +00:00
e6d7c425c3 Ignore sorbet directory from helm-ag and projectile 2019-09-04 13:54:07 +01:00
aed84c02d1 Fix a typo in unused module 2019-08-16 13:17:36 +01:00
e79a3b13a3 Cleanup query replace related keybindings a bit 2019-08-16 13:17:36 +01:00
57f670088d Use use-package's :custom and :custom-face options everywhere 2019-06-10 19:29:58 +01:00
6c1d53c9f2 Add C-l keybinding to dired to go one folder up 2019-03-26 01:32:59 +00:00
2e6dd89003 Store all temporary stuff in a specific cache folder
Instead of using effectively TMPDIR on the machine, let's use a `cache`
folder in the root of the .emacs.d directory.
2019-03-25 17:17:32 +00:00
625fe82382 Update git-link config custom functions for new hostname 2019-02-01 16:07:47 +00:00
3753943f9a Swap from custom siren-goto-symbol module to helm-imenu package 2019-01-28 11:36:05 +00:00
94ee79bfed Exclude golang's *.test files from helm-ag 2019-01-28 11:30:26 +00:00
de1f6e84dc Load in helm-config to get a global helm-prefix key 2018-12-20 04:15:39 +00:00
36f79b8b86 Fix hiding helm source header when there's only one source 2018-12-20 03:36:22 +00:00
6ae24d30a7 Bind helm-find-files instead of ido-find-files to C-x C-f 2018-12-20 03:34:38 +00:00
4621af7b12 Exclude additional paths from helm-ag searches 2018-12-05 15:34:33 +00:00
e800c5c153 Update list of ignored files for helm-ag package 2018-11-16 10:50:16 +00:00
cf6f8e538c Remove duplicate keybinding 2018-07-10 08:20:13 +01:00
998e81ed8d Update ignore pattern for helm-ag to ignore minified js/css files 2018-06-22 14:45:21 +01:00
87a86191db Majorly re-organize modules
- Split large modules into smaller parts (e.g. siren-text-manipulation)
- Organize modules into high level groups:
  - completion
  - core
  - editor
  - languages
  - linting
  - misc
  - navigation
  - projects
  - spelling
  - text-editing
  - version-control
  - windows
  - workspaces
2018-05-20 17:31:11 +01:00