Commit Graph

1241 Commits

Author SHA1 Message Date
168cc78844
Let project.el consider submodules as separate projects
I keep a tree of Git repositories organized as submodules in my home
directories and want each of those repositories to be considered a
separated project.  The repositories that are indeed a proper part of a
superproject I can ignore.
2025-02-19 17:21:46 +01:00
2cbafcfbfc
Customize columns for listing magit repositories
Shrink fist column, because my repositories are usually not that long.
Version information is also less important than upstream divergence to
me, so let's move this behind.
2025-02-16 18:03:06 +01:00
1fedb571a3
Do not show overdue deadline items in Waiting For list
They will show up on the main agenda view anyway.
2025-02-15 18:43:17 +01:00
1ba7f00753
Sort TOPICs before NOTEs in project agenda
TOPICs are usually more important than NOTEs.
2025-02-14 17:03:55 +01:00
0d001c7b39
Sort list of known projects before persisting
This is to avoid commit clutter when tracking `project-list-file` in Git.
2025-01-19 09:53:41 +01:00
3789a2b0e9
Revert "Shorten scheduled and deadline leaders in Org agenda for space"
This reverts commit 823139669e.

Turns out I need space for the range count of dates ranging multpile
days.  Bummer.
2025-01-12 15:30:04 +01:00
823139669e
Shorten scheduled and deadline leaders in Org agenda for space 2025-01-12 15:26:32 +01:00
1e6e15669e
Remove some obsolete configuration
And clean up a bit.
2025-01-04 17:58:59 +01:00
f98b0e461f
Change default Org source block results handling back to output
This is what I usually use, so let's stick to it.
2025-01-04 15:40:55 +01:00
635054aa4a
Replace company by corfu
I haven't really used `company` in the recent past, so removing this
package does not hurt much.  Maybe `corfu` will be more practical for
me, as it also only relies on builtin in-buffer completion and does not
require additional magic.  However, I usually do not use popup
completion dialogs much, because I find them obstructive.
2025-01-03 17:28:46 +01:00
beceb909fc
Clean up SLIME configuration
SLIME somehow interfered with exporting Org lisp source blocks, leading
to some cleanup.
2024-12-31 15:41:36 +01:00
a1e372e31e
Use builtin project instead of external projectile from now on
`projectile` is nice, but I rarely use a fraction of its functionality
and not having to use an external package for project management feels
more robust.
2024-12-31 14:57:56 +01:00
70e85b9419
Show value output of Org source blocks by default
This is a sensible default for ELisp blocks, so let's use that.  Already
existing blocks that depend on the old default need to be updated, though.
2024-12-30 13:34:46 +01:00
f4ff678cd1
Diminish auto-revert-mode in mode-line 2024-12-30 10:57:24 +01:00
e89baa204e
Clean up Lisp programming configuration
`eldoc` is part of general programming configuration.
2024-12-30 10:57:09 +01:00
d2ae0e1bf5
Show minor modes in mode-line again
Seeing active minor modes directly might be informative.  Try to reduce
the list of shown minor modes to only interesting ones using the (still
existing) diminish configuration.  Remove now obsolete configuration of
the minions package.
2024-12-30 10:34:16 +01:00
9f52c576b2
Move tab-bar history activation to main init function
This is where such global mode activations belong.
2024-12-25 16:01:06 +01:00
7deb6204be
Ensure this configuration is run using Emacs 29 or later
This allows to remove some old code.
2024-12-25 15:50:40 +01:00
353ce2960b
Provide autoload for lsp-mode
This allows activation before `lsp-mode` is loaded.
2024-12-25 13:21:28 +01:00
facd9ccc52
Remove misplaced plist deserialization for lsp-mode
Using plists for deserialization has to be enabled already while
compiling `lsp-mode`, so it was set too late and resulted in errors; see
[1].  Since I do not need plist deserialization, we can also make things
simple and just keep it disabled.

[1]: https://emacs-lsp.github.io/lsp-mode/page/performance/#use-plists-for-deserialization
2024-12-25 13:18:26 +01:00
ccb1e02cda
Do not automatically use company-mode for completion
`globel-company-mode` has not been used since quite some time, and
completion in the individual programming modes should be handeled by
LSP.  Disabling `company-mode` also allows to use standard completion
features, which is nice.
2024-12-25 11:46:21 +01:00
9e898e2100
Do not require lsp-mode to be installed anymore
eglot should do the trick for most of my needs, so no need to
force-install lsp-mode.
2024-12-21 20:53:52 +01:00
f646a2f98a
Default to eglot for Python programming
This is to ease the configuration, as eglot is built in.  lsp-mode might
provide a better programming experience, but I do not do much Python
programming nowadays.
2024-12-21 20:51:25 +01:00
2837712f5c
Completely redo agenda buffers when jumping to today
This allows stale buffers from previous days to be updated in one go.
2024-12-20 11:56:31 +01:00
661c5f9b22
Add small utility to quickly update complex Org reports 2024-12-14 09:39:22 +01:00
ff868b57b4
Do not use short answers for confirmations
Just learned about `use-short-answers` (from a comment [here][]).
However, when long answers are expected for confirmation, it's often an
indication that the question at hand might be serious enough to take the
time to type these out (as recommended by the docstring of
`use-short-answers`).

[here]: http://irreal.org/blog/?p=12595
2024-11-24 12:01:13 +01:00
5a25d5d069
Revoke special password implementation for SQL Org source blocks
Turns out this can be done by a simple function call, as demonstrated by
https://magnus.therning.org/2024-09-01-improving-how-i-handle-secrets-in-my-work-notes.html.
So we just extend `org-password-manager-get-password-by-id` accordingly
and use that instead.  No need to patch the default implementation of
Org!
2024-11-16 12:30:20 +01:00
43fa4097df
Check availability of major-mode-remap-alist before setting it
This is to restore some Emacs 28 backwards compatibility.
2024-11-13 17:04:52 +01:00
fe5d236b77
Ensure that Org QL is installed
This is needed by my Org mode configuration.
2024-11-01 21:31:15 +01:00
4120de7619
Do not explicitly install git-commit.el any longer
It now comes directly with magit.
2024-11-01 21:11:53 +01:00
0f43b7303f
Add custom function to start ement.el without prompts
Inspired by https://github.com/alphapapa/ement.el/issues/32#issuecomment-902539093.
2024-10-20 19:11:19 +02:00
441db75ae2
Do not evaluate Org source blocks with text modes by default
Nothing to evaluate here either.
2024-10-12 20:40:22 +02:00
78924c841e
Add first draft function to compute time at home for given date
This is supposed to be used with `db/org-workload-overview-report`.
2024-10-12 17:08:23 +02:00
2713fe1fd0
Disable Org source block evaluation for some text modes
Let's avoid the “No org-babel-execute function for foo!” errors for
those modes!
2024-10-11 20:00:34 +02:00
212c3664ff
Enhance table.el editing in markdown-mode
Pandoc supports grid tables, which are supported in Emacs via `table.el`.
By default, the alignment markers for those tables (:) are not
recognized in table.el, so let's add those.  Furthermore, editing grid
tables in `markdown-mode` does not work, since `jit-lock-mode`
overwrites the `keymap` text property that `table.el` relies on to
enable table editing.  Using `edit-indirect` to edit those tables in an
indirect buffer where everything works nicely.  Indeed, editing
`table.el` tables in Org also uses an indirect buffer, for the exact
same reason.
2024-10-09 20:37:23 +02:00
bc4e163ac5
Include TOCs in Markdown exports by default
I usually want those.  This setting can be overwritten by
customizations.
2024-09-19 15:46:02 +02:00
f54c39fe52
Natively fontify code blocks in Markdown files
Nice!
2024-09-19 15:45:45 +02:00
38ed7dee62
Pin markdown-mode to stable versions
I need this to work, and not necessarily the latest features.
2024-09-10 18:19:43 +02:00
29792b736c
Replace backwards search in minibuffer with history completion
I keep hitting C-r where I should be using M-r instead.  Let's make my
life a little bit easier and make C-r behave like M-r.
2024-08-31 22:21:19 +02:00
d01b3bdc09
Add clocktable formatter to filter entries with small clocking time
Whenever I try to check what I actually in the past couple of days, I
try to use a clocktable for this.  However, those clocktables are
usually littered with small entries, i.e. entries where I only spent a
couple of minutes on (example: a quick chat with a colleague).  Those
entries clutter the view for the relevant entries, making it hard to
make sense of past activities.

Restricting the clocktable to a certain depth somehow helps, but major
single tasks are hidden this way, and I usually want to see those.

The custom formatter added in this commit tries to alleviate this
situation by providing a mechanism to filter out those entries using a
minimum clocktime threshold.  Let's see how this feature plays out.
2024-08-17 16:07:17 +02:00
3ccb13ce53
Do not display output of async shell commands by default anymore
Moving this output to the bottom of the frame did not help; it's just
something I do not want to see by default.
2024-08-17 09:01:10 +02:00
c17852bd90
Add Org link handler for custom CVE links
I have to deal with those quite a bit, it's nice to have a handler to
easier find the description for these numbers.
2024-08-16 18:05:34 +02:00
7ea1a31a25
Use consult for default history completion 2024-08-14 20:21:57 +02:00
306995032e
Rework temporary workaround for links with ending closing brackets
Previously, links which end in a closing brackets got a non-breaking
space appended via a separate advice to `org-link-make-string`.
However, this did not work well with the other advice that removes
statistics cookies from links, mostly because I messed up the order in
which the advices were applied.  To remedy this, the advice to remove
statistics cookies now also adds a non-breaking spaces as described
above.
2024-08-08 17:03:07 +02:00
40bafe78ce
Add temporary fix for Org alignment of links to headlines
When a headline ends on a closing bracket, Org adds an escape character
to the link text to distinguish the end of the link from the link
description.  This escape character is a zero-width space, which is
counted for Org table alignment as one character, but the link itself is
displayed shorter, because the zero-width character is displayed as a
single pixel by emacs.

To work around this issue until the upstream fix is released, let's add
a final non-breaking space to those link descriptions to avoid the need
for the zero-width escape characters.
2024-08-05 17:45:10 +02:00
726f1baf8c
Show async shell command output in bottom side window
I found that opening this output on the right side to be annoying, so
let's switch try the bottom side window instead.  This also works with
having an eshell buffer open at the same time, resulting in a nice reuse
of the right space of eshell windows that is usually empty.
2024-08-03 12:12:44 +02:00
1ef71f02b8
Warn of missing customization for grep.el on Windows 2024-07-28 16:18:16 +02:00
b350c4f618
Use absolute path for Zettelkasten directories
`rg` does not recognize `~`.
2024-07-28 16:01:56 +02:00
98f31c6c2e
Restrict Things-On-Hold agenda to explicitly tagged items
It's not helpful to show subitems of HOLD items, this only makes this
agenda view unnecessarily long and thus harder to maintain.
2024-07-26 19:31:46 +02:00
27f961f0dc
Stop using helm for yanking
With vertico, using the default `yank-pop` is nice enough.  Furthermore,
yanking with helm does not update the current candidate selection when
in a minibuffer prompt (like for `find-file` or `org-insert-link`),
sometimes leading to confusion.
2024-07-20 20:43:20 +02:00