Commit Graph

1431 Commits

Author SHA1 Message Date
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
1ea28a5823
Revert Lisp indentation back to Emacs standard
With `common-lisp-indent-function`, the indentation of `while` was not
correct – oops.

This change will break some current indentations, though.  Stay tuned.
2024-07-11 21:54:52 +02:00
21f5988d6a
Allow Org links to magit buffers 2024-07-10 15:55:22 +02:00
2114c22d3f
Remove obsolete Org elpa repository 2024-07-10 15:07:52 +02:00
7e763d82ea
Revert "Include zettelkasten files in Org agenda searches"
It's too slow :(

This reverts commit 902e205e7e.
2024-07-10 14:25:45 +02:00
ad8aa0fda8
Allow Org links to manpages by default 2024-07-10 13:44:23 +02:00
902e205e7e
Include zettelkasten files in Org agenda searches 2024-07-10 13:43:18 +02:00
2349d6726f
Fix usage of obsolete Org variable to (not) set refiling bookmarks 2024-07-09 21:23:29 +02:00
2f01ae081e
Add extra blank line after capturing items – again
This is to have this extra blank line after refiling.

This reintroduces 76c8717, and reverts f064bf9 and 8ed64b7.  The issue
with too many blank lines at some items may reappear.
2024-07-09 11:40:00 +02:00
762581c263
Ignore items with near deadlines in NEXT list
They are shown in the DEADLINE list already, no need to duplicate them.
2024-07-09 10:33:49 +02:00
6bc66f302d
Let Org decide about spacing between plain list items
I still like lists with blank lines between items better to read, but
occassionally more compact lists are better.
2024-07-08 13:59:45 +02:00
fb6bb224cb
Use helpful.el also for describing symbols
Forgot this binding.
2024-07-06 11:52:24 +02:00
0b82dd1945
Extend regular expression to remove cookie when inserting Org links
This should also catch the empty cookies `[/]` and `[%]` now.
2024-07-06 09:15:52 +02:00
4714e0d0df
Remove workaround to match range timestamps in Org QL
https://github.com/alphapapa/org-ql/pull/237 has been merged in 0.8.7,
so there should be no need anymore for my workaround.
2024-06-30 12:32:42 +02:00
583a5dea91
Introduce helpful.el 2024-06-30 10:23:28 +02:00
ea6ef8ef63
Ensure hydra is installed 2024-06-30 10:23:19 +02:00
a2840cc003
Exclude near deadlines from main task backlog
Those items are shown in the “Deadlines” section anyway, there is no
need to duplicate them in the task backlog.
2024-06-27 21:01:46 +02:00
583ddabeaa
Do not require pyvenv to be installed
It's not that crucial to be anymore.
2024-06-27 12:05:29 +02:00
bca13ec9f2
Use more telling name for setting up git commit buffers
There is no mode here, just a call to `git-commit-setup`.
2024-06-27 11:15:40 +02:00
f196d6e808
Show bookmarks before important files
I access bookmarks far more often than the list of local important
files, so let's skip the usual `C-o` hazzle and have bookmarks right
under point when available.
2024-06-17 16:20:42 +02:00
028dc91f28
Insert current clock when capturing simple tasks
This is more reasonable than inserting a link to the current location of
point, which can be quite arbitrary (at least in my workflow).  When a
link to the item at point is needed, it should be inserted manually.
2024-06-13 21:04:45 +02:00
3b8fa72a5a
Add missing but obvious path for magit to search for git repositories
Ah, well … that one's important ;)
2024-06-10 18:54:49 +02:00
5d561c0e1d
Update elpa packages
Also remove obsolete configuration for `git-commit` package.
2024-06-10 18:09:40 +02:00
03f856ce49
Use visual line breaks in markdown mode
Markdown formatted files are often displayed as HTML, where automatic
line breaks work better.
2024-06-09 16:01:57 +02:00
01a71c93d2
Move known links to front of link list only in older Org versions
This behavior became the default in Org 9.7.
2024-06-08 10:41:07 +02:00
de68fc30b2
Statically specify git repositories for magit
Relying on projectile's project list seems to be fragile and often
includes too many repositories, so let's let magit find those
repositories itself.
2024-06-08 09:26:40 +02:00
3dee200729
Skip task backlog items with deadline warning time in the future
This change is experimental and might be reverted.

Idea: we don't want to see those items until the deadline warning date
is due anyway.  Drawback: those items are not shown even when jumping to
the specific date (or past it), so planning ahread get's a bit more
complicated.
2024-06-06 10:45:25 +02:00
599cdec229
Ignore SOMEWHEN tasks in NEXT list 2024-06-02 18:17:41 +02:00
4a8e0a611b
Only considered direct tags when checking for missed appointments
Subitems of DATE entries are not relevant for this check.
2024-05-12 15:21:31 +02:00
207d9f8c39
Remove statistics cookies from Org links
Those cookies are correct when the link is inserted, but subsequently
gets updated (usually to `[0/0]`) when the statistics cookie is updated
in the Org item where the link is placed — removing any meaning from
this cookie.  It's thus better to not have it at all, I think.
2024-04-30 08:30:07 +02:00
85a6366550
Remove explicit final newlines in Org capture templates
`org-capture-fill-template` unconditionally adds a final newline to each
template.  This caused extra empty lines with the old templates when
nothing is inserted at point (`%?`), because in this case empty lines
before and after point were present, with nothing in between.

Those extra empty lines are gone now, and point is positioned after the
final non-blank character.  When extra empty lines are needed, they have
to be inserted manually.
2024-04-28 19:56:33 +02:00
84b18acc54
Show empty lines in collapsed Org view between too many blank lines
This is to better be able to identify those empty lines and keep the
notes tidy.

The new value for org-cycle-separator-lines` is the current default
value.
2024-04-27 20:14:44 +02:00
655da52bf0
Update Org tag alignment in headlines to match new text line width 2024-04-27 12:08:43 +02:00
a9f0f0b2ee
Increase text line width to take advantage of monitor space
Yes, 80 has been the default since ages, but I indeed to have more
horizontal space available and I should use it #NewTraditionsFromOld.
2024-04-27 10:45:18 +02:00
8fa265bd9b
Exemplarily simplify hook definition for BBDB setup
Inspired by the `use-package` documentation, but the other places where
`add-hook` is called this simplification does not seem to be appropriate
from my point of view (missing `-hook` suffix, better readability when
calling `add-hook` directly).
2024-04-25 17:16:58 +02:00
37d8c1c282
Do not enable proced auto-updating on Windows
This seems to be slow, causing proced to take more time updating a
buffer than waiting the one second until the next update – resulting in
an unresponsive proced buffer.

Note: I am not sure whether this setting is correct, as `(not
on-windows)` will not be evaluated when `use-package` calls
`custom-theme-set-variables`.  However, I think it will be evaluated
eventually, and that should be all that's needed.
2024-04-25 11:03:28 +02:00
83c9fd7d20
Allow the agent in Gnus to cache all articles
I sometimes have the feeling that mails are downloaded multiple times …
maybe this setting will help?
2024-04-24 21:15:56 +02:00
8ed64b7fb1
Remove more extra empty lines in Org capture templates 2024-04-14 11:00:30 +02:00
f064bf9384
Remove seemingly extra blank line after captured interruptions 2024-04-13 15:34:56 +02:00
595ac9e696
Disable org-lint checker for obsolete percentage encoding
I do not mind having such links, and sometimes I have to put up with
them, so let's spare `org-lint` of the trouble reporting them.
2024-04-11 20:19:11 +02:00
edb5d9119b
Experimentally include plain lists in Org's visibility cycling
It's nice to be able to collapse plain lists easily, as I have some
quite large ones.  The comment advises to be careful with certain
situations yields strange results, though, which is why this setting is
deemed experimental for the time being.
2024-04-11 19:01:04 +02:00
9edd604d26
Fix ill-worded comment 2024-04-11 18:58:59 +02:00
238c8ae0c8
Add extra spacing also to Org capture template for generic items
Missed that before.
2024-04-05 15:37:33 +02:00
5f33044458
Globally deactivate Org refile cache
This seems to be fast enough on Windows (and on Linux anyway) and avoids
cache invalidation problems.
2024-04-05 15:36:15 +02:00
840f10cab9
Display async shell command buffer again
I keep opening it manually for most of the commands, so why not have it
pop up automatically?
2024-03-30 15:46:21 +01:00
019c8822a1
Ignore scheduled entries on Waiting-For list altogether
They are shown on the main agenda view.
2024-03-24 13:44:19 +01:00
60c8a57bf8
Use consult for region completion, when available
This seems to be a good default?
2024-03-23 09:54:18 +01:00
04a714fc8c
Optionally use consult for some completion tasks 2024-03-23 09:50:10 +01:00
53a0c1b56b
Filter buffer and bookmark list only via orderless completion
I don't expect basic completion here, only the matching style from ivy.
2024-03-17 09:13:10 +01:00
3099e642ce
Change ellipsis character for Org mode
The old character had some odd depth in my current font …
2024-03-13 17:45:10 +01:00
85338cc8f5
Use basic completion before orderless
Using orderless by default get's in the way of “usual” code completion
and shell completion, where prefix completion is the expected
behavior (for me).  So let's try to use basic completion first, and try
to rely on orderless completion to kick in as soon as spaces are
involved (which should not happen for shell and code completion).

The completion colors should also help to see whether we are still using
basic completion or orderless completion.  Let's try this for now.
2024-03-11 17:25:30 +01:00
a4bae1d96e
Enable ivy region completion for ledger-mode
This is where I used it most often, and where I still want it to work
until a proper replacement is found.
2024-03-11 17:02:41 +01:00
4a14d2e37b
Add default keybinding for accessing recently used files
Since `counsel-switch-buffer` has been replaced by the plain
`switch-to-buffer`, recently used files are not shown there anymore, so
let's make `recentf` easier to access.

NB: `consult` also provides a function akin to `counsel-switch-buffer`,
so maybe this keybinding will not be that relevant anymore in the
future.
2024-03-11 16:14:00 +01:00
2ca13e12eb
Revert "Use ivy for completion in regions"
Using ivy for completing in regions somehow has problems in eshell, so
let's not do it.  The main use-case for using ivy in region completion
is for ledger, so maybe it can only be activated there?

This mostly reverts commit 615b285f74.
2024-03-11 16:10:24 +01:00
ea345e4d91
Use LaTeX-mode when available
This is achieved by aliasing `latex-mode` to `LaTeX-mode`, requiring a
bit of refactoring of how `major-mode-remap-alist` is being used.
2024-03-10 21:07:10 +01:00
615b285f74
Use ivy for completion in regions
This is nicer than the default completion window … but maybe there's a
better approach than using ivy only for this?
2024-03-10 11:44:46 +01:00
256f378c76
Disable garbage collection during Emacs startup
Taken from https://protesilaos.com/emacs/dotemacs, nice idea :)
2024-03-10 11:14:48 +01:00
b3a1689741
Simplify completion styles by with overrides for certain categories
The default completion style is now to use orderless by default, but
certain categories can benefit from additional completions (e.g., file
and partial-completion).

It's quite hard to determine the appropriate completion categories,
though.  Does Org have a dedicated one?
2024-03-10 08:55:25 +01:00
ea0e94c312
Only keep orderless match faces that are readable with solarized 2024-03-09 20:19:41 +01:00
6b8b97fe8d
Prefer orderless completion style over others
The reason is that while filtering Org headlines, sometimes one of the
other completion styles matches, hiding other possible matches that
would have been found by the `orderless` style.  This can happen when
spaces are included in Org headlines (which is usually the case) and
those spaces match the search pattern.  In this case, the position of
point is also relevant, which is not something I want.

It would be better to know which completion category is use in this case
and override the completion style for this only, but so far I haven't
found it.  Continue looking …
2024-03-09 20:06:48 +01:00
7d398a66c8
Replace counsel Org heading dispatch by org-refile
This is nice enough and removes the last dependency to counsel :)
2024-03-09 15:04:21 +01:00
118b50c8da
Always show absolute time when annotating file selections
Via https://protesilaos.com/emacs/dotemacs#h:bd3f7a1d-a53d-4d3e-860e-25c5b35d8e7e.
2024-03-09 14:56:43 +01:00
7a2410642f
Remove redundant package declaration for helm-ring
This package is loaded in the main helm declaration, no need to mention
it separately.
2024-03-09 14:09:38 +01:00
8150725233
Use default completion functions for Info and Unicode lookup
Using vertico completion, they are quite nice! :)
2024-03-09 14:08:41 +01:00
3d0afd3f07
Experimentally replace default ivy completion with vertico
This may change back in the future.

The ivy configuration is kept on purpose, in particular because some
counsel functions are still in use.  Maybe those can be also be replaced
later on, maybe with helm functions?  Not quite sure whether this is a
good idea, though.
2024-03-09 13:46:36 +01:00
a4325f30bf
Remove some obsolete counsel bindings 2024-03-08 17:26:25 +01:00
a233d092de
Replace timestamp query in main agenda view with option setting
This is faster.
2024-03-06 19:01:31 +01:00
0e9ae4aa4d
Fix conditional loading of helm
It only makes sense to load helm when it's installed, isn't it?
2024-03-05 21:20:56 +01:00
b6ecb4eb53
Declutter custom Org agenda views
This is mostly to speed up agenda generation, in particular the main
agenda view.  It turns out that filtering out SCHEDULED items is
expensive, but in tags views there is no variable to exclude scheduled
items – as for todo and tags-todo views.  Thus, SCHEDULED items must be
removed with a corresponding search pattern, which is slow.
2024-03-05 17:38:16 +01:00
cd98c67e12
Add usual text surrounding backlink in TODO caputure template
I always add "Via " around the backlink, with some newlines.  Let's just
let Emacs do this for us :)
2024-02-18 10:37:06 +01:00
b75e70241b
Add Org capture template for generic Org item
This can be used when creating generic NOP headlines, among others.
2024-01-27 17:34:19 +01:00
8aa29be427
Use strict whitespace matching in isearch
This is less confusing for me :)
2024-01-19 17:12:48 +01:00
5214d7ceee
Disable global completion again
It's mostly annoying.
2024-01-17 17:48:07 +01:00
b954328b26
Simplify Org capture template for recording GOALs
I usually already have a first item for a GOAL recorded, so querying for
it via the capture template is unnecessary (and annoying).
2024-01-14 15:10:03 +01:00
af05bd2106
Collect custom Org key bindings in a custom hydra 2024-01-07 17:12:27 +01:00
cdb4721589
Allow access to Org link management via my usual Org keymap prefix
This is for consistency.
2024-01-06 12:19:18 +01:00
1f0f00ad2c
Record more notes when changing TODO keywords of Org items
I find myself often adding these notes manually after state changes, so
let's make Org do this for us.
2024-01-04 08:26:12 +01:00
b7d190c513
Introduce separate hydra for Org jump commands
`hydra-org-clock` thus only hosts keybindings for clock-related
commands, while the new `hydra-org-jump` is for jumping to Org items in
various ways.  Feels cleaner to me this way.
2024-01-01 17:04:55 +01:00
3e09ee57dc
Use olivetti-mode to improve Org tree-slide presentations
This is motivated by a post by Daniel Liden (https://gitlab.com/dliden),
see https://www.danliden.com/posts/20231217-emacs-hooks.html (courtesy
of https://irreal.org/blog/?p=11849).
2023-12-31 12:54:55 +01:00
d7ce497278
Add basic eglot configuration 2023-12-28 15:27:34 +01:00
3211acd21b
Extending lsp-mode configuration
Based on input from
https://andreyor.st/posts/2023-09-09-migrating-from-lsp-mode-to-eglot.
No configuration yet for eglot, though.
2023-12-27 21:45:41 +01:00
73de5e94ad
Show current number of matches in isearch
By courtesy of https://zck.org/improved-emacs-search, via [Irreal: A
Slight Isearch Improvement](https://irreal.org/blog/?p=11364).
2023-12-27 15:40:25 +01:00
30bd59c9da
Fix wrong keybinding definition for toggling the Org roam buffer 2023-12-23 21:35:50 +01:00
18e612b447
Show Org roam buffer in selected window before updating its content
This is to address the issue of malformed content in the Org roam
buffer, see https://github.com/org-roam/org-roam/issues/1586.  The
excellent description of @camdez in [there][1] is the basis for this
workaround.

[1]: https://github.com/org-roam/org-roam/issues/1586#issuecomment-1412250226
2023-12-23 21:17:48 +01:00
4eeb5527bc
Fix keybinding definitions for Org roam
Were defined in the wrong map, probably because this map was the correct
one in Org roam v1.
2023-12-23 18:24:31 +01:00
4fd8b655f9
Fix typo in comments 2023-12-23 15:31:01 +01:00
4bce1dec3e
Globally enable company-mode
This is an experimental setting to increase usage of completion
functionaly in my workflow.  It's not clear yet whether I will find this
disturbing, though.
2023-12-23 15:29:02 +01:00
c0c5dfd080
Include unlinked references in Org roam buffer
This is an experimental setting to spot missing references easily.
Performance cost might be prohibitive, though.
2023-12-23 15:28:24 +01:00
4dfb36858a
Move Org roam db autosync activation to use-package definition
No need to conditionally enable it in main initialization function when
it can be done directly directly after loading `org-roam`.  This keeps
the configuration of the package local, i.e. syntactically together.
2023-12-23 15:27:06 +01:00
76c8717c24
Uniformly add single blank lines around captures Org items 2023-12-19 09:08:41 +01:00
479f9dbaf7
Remove obsolete configuration for synonyms package 2023-12-03 11:08:23 +01:00
7456943c07
Limit line width in git commit messages to 72 characters
This is per https://cbea.ms/git-commit/#wrap-72 and makes the line width
in git commit messages independent of the global fill-column setting.
2023-11-27 17:14:00 +01:00
9a90e458f9
Adjust some code formatting
To avoid accidental reindentation via `lisp-indent-function`.
2023-11-25 10:17:25 +01:00
a6ac99d013
Add autoload declaration for org-cycle-hide-drawers
Tihs avoids a byte-compiler warning.
2023-11-18 21:58:09 +01:00
bbd547c1b7
Hide Org drawers during visibility cycling by default
This is taken from the release notes of Org 9.6,
cf. https://orgmode.org/Changes.html.
2023-11-18 16:25:32 +01:00
aa0a7e9791
Unbind org-agenda-redo-all in agenda buffers
It's annoying that `org-agenda-redo-all` always jumps back to today, so let's
try to avoid this by not having it bound anymore.  I am usually completely
satisfied with `org-agenda-redo` anyway.
2023-11-18 14:19:25 +01:00
712a314923
Try a bit harder to avoid recentering after agenda buffer redo
New try: temporarily nullify `recenter`, seems to work so far and keeps point on
the same line.
2023-11-18 14:18:41 +01:00
836bcaa0ff
Add small commit for structuring Org configuration 2023-11-04 09:34:28 +01:00
593a2ab9df
Get rid of last byte compiler warnings in Org configuration 2023-11-03 17:24:14 +01:00
e675ec4b47
Ensure helm key bindings to be correctly set even w/o customization 2023-11-01 21:11:57 +01:00
6c18d9ce9d
Ignore tasks on WAIT in stuck project list 2023-11-01 21:02:43 +01:00
7a42aedd9c
Add missing require statement for helm-bookmark
It's not automatically loaded with `helm`, apparently …
2023-10-29 13:16:06 +01:00
99aa8e5e56
Remove obsolete configuration for typing package 2023-10-28 19:06:24 +02:00
65f49dfabb
Eliminate byte-compiler warnings from eshell configuration 2023-10-28 18:59:21 +02:00
51d6111b47
Remove obsolete key bindings for ediff mode
I do not use them, and they cause byte-compiler warnings.
2023-10-28 18:51:17 +02:00
067a8cdacf
Eliminate some more byte-compiler warnings 2023-10-28 18:51:04 +02:00
a41428eff0
Remove byte-compiler warning for enabling use-package imenu support 2023-10-28 18:14:07 +02:00
2f2eac0b38
Reorganize Gnus configuration to remove most byte-compiler warnings 2023-10-28 18:13:47 +02:00
7b3b0811a1
Separate TeX configuration into separate package
This allows to not have to install the `auctex` package without errors on
startup, cf. 886598e.
2023-10-28 12:06:27 +02:00
886598e0d8
Remove eval-when-compile for non-essential auctex package
This leads to an error on Emacs startup when auctex is not installed.
2023-10-28 11:35:32 +02:00
f94e909987
Fix enabling imenu support for use-package
The setting has to be done before loading `use-package` (which yields a new
byte-compiler warning, narf).
2023-10-27 16:58:10 +02:00
88bc5b3162
Remove unnecessary require statements for helm-emms
The removed packages are loaded by `helm-emms` directly.
2023-10-27 16:32:30 +02:00
dae26fcc5a
Do not perform adaptive sorting in personal shortcut helper
This never worked anyway, I would probably have had to define the source
globally for adaptive sorting to work, or something like that.  However, I am
usually happying with the interactive narrowing of the candidates, so let's get
rid of adaptive sorting for now.
2023-10-27 16:31:02 +02:00
b3d620d884
Get rid of some more byte-compiler warnings in main init file 2023-10-27 16:30:19 +02:00
535bdda429
Clean up personal shortcut helper function
Get rid of some helm sources I usually don't use, to speed up function
execution.  Indeed, on Windows 11, if this function takes too long, the Emacs
frame will loose its focus, which is super annoying!
2023-10-26 15:36:31 +02:00
52559e8cf8
Fix location of multisession data path
It's session data, and thus goes into `emacs-d-userdata`.
2023-10-19 16:35:19 +02:00
37a12c4d16
Reenable automatic indentation in Org mode buffers
This partially reverts 39f652e.
2023-10-15 15:02:01 +02:00
39f652e070
Do not automatically indent anymore in Org mode after newline
`org-return-indent` is obsolete since 9.4, one should use `org-return` with
`indent` set to `t` instead – and I am not sure whether it will work if I rebind
`org-return` to some interactive lambda form.  So let's try to not indentent
automatically anymore, maybe this is good enough?
2023-10-15 11:20:04 +02:00
4051fc1a38
Remove workaround to inhibit eproject-mode in message-mode
`eproject-mode` seems to be gone, at least it's not in elpa anymore (there's
still a `elpa-eproject` package in Debian, though).
2023-10-15 10:41:41 +02:00
04c5040f75
Get rid of byte compiler warnings in Dired configuration 2023-10-15 10:21:34 +02:00
eb8e696374
Fix use-package indentation also for common-lisp-indent-function 2023-10-14 21:55:54 +02:00
71e89d2976
Handle some byte compiler warnings in main initialization file 2023-10-14 21:55:30 +02:00
86879ec84e
Update assignment to obsolete BBDB variable 2023-10-05 10:27:54 +02:00
435a9f52a9
Ignore further user data files in main .emacs.d directory
Files of the `transient` package are now kept under `private/`.
2023-10-05 10:26:51 +02:00
a287d2af01
Increase Gnus' large-group limit
200 is not enough, let's try 500.
2023-10-05 10:21:47 +02:00
48836d41f7
Move main initialization function to the end of init.el
It's called at the end, so it can very well also be located there.  This also
avoids some byte-compiler warnings due to the order of declarations.
2023-10-02 13:08:57 +02:00
15ee9caea0
Globally define private userdata directory
This is instead of repeating the path again and again in the code.  It's cleaner
this way, also easier to spot mistakes (see the now fixed definition for
`abbrev-file-name' …).
2023-10-01 18:47:33 +02:00
3004f96949
More local data from url package to private/ 2023-10-01 18:29:11 +02:00
31268927e0
Revert "Remove obsolete lisp indentation setting for use-package"
This reverts commit aa4ac442a0.

Turns out this setting is not obsolete, as my whole init file would be
reformatted without it … keeping it for now.
2023-10-01 18:27:36 +02:00
975c2869ea
Move some user-specific data to private/ and clean up .gitignore
There may be more data to be moved to private/, but for now it's enough like
this – I think.
2023-10-01 18:00:39 +02:00
08ccbbbfab
Reorder initial use-package settings
This way no warnings are emitted by the byte compiler.
2023-10-01 17:47:46 +02:00
cb66fb4976
Move smex save file to private directory 2023-10-01 17:41:09 +02:00
aa4ac442a0
Remove obsolete lisp indentation setting for use-package 2023-10-01 17:11:11 +02:00
2f6aa6a1f7
Introduce major-mode-remap-alist into auto-mode configuration
Also distribute the current auto-mode setting from `db/run-init` to the
individual packages, to allow overwriting via customizations.
2023-10-01 17:04:55 +02:00
a4556632b0
Remove advice for moving message attachments to the end of buffer
This is configurable since Emacs 29.1.
2023-10-01 15:39:02 +02:00
cfdd235f94
Set multisession directory before loading package
This allows to overwrite this default via customize.
2023-10-01 15:36:45 +02:00
e01e02970f
Comment personal M-SPC binding to be the default since Emacs 29.1
So that it can be removed later on, maybe.
2023-10-01 15:31:05 +02:00
f7254fc6a4
Configure multisessions' directory to be under private/
It contains data to be stored between sessions and thus belongs there.
2023-10-01 15:30:18 +02:00
563ce633a0
Remove obsolete setting for df program on Windows
This variable is obsolete since Emacs 27.1.
2023-10-01 15:25:55 +02:00
2d1fd71265
Ignore HOLD entries on Waiting-For list 2023-09-14 19:03:47 +02:00
1b860b9273
Add some minimal default configuration for YAML files 2023-09-14 16:19:10 +02:00
6e20565ef0
Fix typo in Org capture template 2023-09-10 15:09:48 +02:00
c085dda842
Allow to provide password to SQL blocks via ID
This is better than having to store the password in plaintext.
2023-08-17 18:40:59 +02:00
a6324a668d
Move custom org-password function to db-org
This is where it belongs, even if there's a warning about free variable
referencing.
2023-08-17 17:06:42 +02:00
53f60f1d82
Use vls as (additional?) player for EMMS
This is to increase the available choices for EMMS in case mplayer does not work
for some reason.
2023-08-15 18:10:50 +02:00
cbd97e8c3e
Remove loading of obsolete helm-config library 2023-08-13 10:56:30 +02:00
de271c1295
Remove obsolete tab-bar faces for solarized-dark-theme
This has been fixed upstream, see
https://github.com/bbatsov/solarized-emacs/issues/427.
2023-08-08 17:31:57 +02:00
bc5df22b55
Fix wrong case statement to check server start 2023-08-06 15:09:38 +02:00
42af8216e0
Define magit-projectile synchronization function after loading magit
This is supposed to inhibit this warning:

```
Warning: Eager macro-expansion skipped due to cycle:
… => (load "db-utils.el") => (macroexpand-all (defalias 'db/sync-magit-repos-from-projectile …)) => (macroexpand (eval-when-compile …)) => (load "db-utils.el")
```

It should make calling this function also more robust.

Also updated the implementation to be more “dash-y”.
2023-07-23 17:02:15 +02:00
d0aa2bf33d
Restrict Org cache advice to Org 9.5.5 and earlier
Org 9.6.7 does not seem to have these performance issues anymore.
2023-07-19 19:46:27 +02:00
0c0009b655
Add leading space in org agenda lines
This is required by the regular expression in `org-agenda-show-clocking-issues`,
without this space, no consistency checking is done.

Also indent all other agenda views, for consistency.
2023-07-17 19:54:38 +02:00
b3ab6d7a9d
Fix some identation 2023-07-10 17:07:35 +02:00
1ce7564f57
Exclude finished items from Waiting and On-Hold list
Forgot this in c45ca29.
2023-07-10 16:51:01 +02:00
bf88128d25
Do not show SCHEDULED items in agenda task backlog
They are shown in the time grid already, no need to duplicate them in the
backlog.
2023-07-09 10:39:53 +02:00
c45ca29ad0
Unify WAIT and HOLD lists
Both lists now include also non-TODO-items and only filter by tag and scheduling
information.
2023-07-07 16:46:34 +02:00
1b62989720
Move deadlines before NEXT list in main agenda view
Deadlines should be looked at first before choosing a task from the NEXT list.
2023-07-07 16:43:39 +02:00
d6bd360593
Reverse treatment of universal argument for helm shortcut menu
Usually, when searching for important documents vie `db/helm-shortcuts`, I
forget to include the universal argument, abort the current search and repeat
it.  This is annoying.  Since listing documents is fast enough, including them
by default should alleviate this issue.

When retrieving the list of documents is too slow and should be disabled
interactively, providing a universal argument excludes this listing now.
2023-07-07 16:27:09 +02:00
536d3b37ba
Rewrite ansi-term defadvice with define-advice
Only two instances of `defadvice` remaining, will rewrite those somewhen.
2023-07-01 17:31:22 +02:00
d8a41ca0cf
Move Dired utility functions to general utility library 2023-07-01 17:02:12 +02:00
2dc1a4e6e0
Disable delete-selection-mode
Accidentally touching keys while having an active region happens far too often
to me, so let's keep things safe for now.  Deleting an active via C-w is easy
enough when needed.
2023-07-01 12:44:48 +02:00
3b6dcaecf9
Do not show past SCHEDULED items in NEXT list
Items scheduled in the past are shown in the grid view anyway, there's no need
to duplicate those in the NEXT list.
2023-06-21 17:46:20 +02:00
5b6af3ad3d
Fix agenda title for task backlog
It's not the NEXT list, this is the list two above that list.
2023-06-21 17:45:45 +02:00
8cdc1de7ca
Add some sensible defaults for proced
Used proced quite often lately, because it offers a nice process overview on
Windows without having to leave Emacs.

Default taken from [lw's blog][1], nice post!

`proced-enable-color-flag` will only be available from Emacs 29 on, but let's
included it nevertheless to be “future proof”.

[1]: https://laurencewarne.github.io/emacs/programming/2022/12/26/exploring-proced.html
2023-06-03 09:31:19 +02:00
f742b213fc
Hide NOTEs and TOPICs tagged with SOMEWHEN on main project agenda
Those items will show up in the dedicated SOMEWHEN list, where they belong.
2023-06-01 21:05:51 +02:00
d190f7af80
Do not enable auth-source-pass by default
When logging in via TRAMP and sudo, the root password is transmitted
automatically.  This does not feel right to me, so let's not enable
`auth-source-pass` for now.
2023-05-28 17:45:28 +02:00
242d5cbcba
Add function to retrieve library version
This could come in handy when checking for necessary library versions.
2023-05-18 19:07:21 +02:00
88855f6713
Fix typo in auth-source package declaration 2023-05-07 10:05:36 +02:00
28b9918325
Add utility function to create selector functions from table headers
This might be useful to work with table data from Org tables in source blocks,
maybe.

Does this exist somewhere already?
2023-04-30 17:26:56 +02:00
7bd8c0ef2b
Remove obsolete function to conditionally enable lispy
Not using this anymore.
2023-04-30 17:25:53 +02:00
8df66edf25
Automatically retrieve passwords from password-store when available
This saves typing time.
2023-04-30 12:27:58 +02:00
a4823651a1
Use Common Lisp indentation by default
It's not perfect, but I think it's still closer to what I like.
2023-04-29 17:29:53 +02:00
a44b7b660e
Remove obsolete function to skip tags in agenda views 2023-04-29 17:28:35 +02:00
8c9c47f6e3
Prominently display of active filters in agenda view
Displaying the current filters in the mode line alone often goes unnoticed for
me, so I need a more direct display.  Let's add it to the first structural
header.
2023-04-29 17:27:50 +02:00
2d6b40088e
Delete shell buffers windows on delete-other-windows
More often, I want the shell buffer to be gone when calling
`delete-other-windows` than not, so let's make this the default.
2023-04-28 16:32:53 +02:00
1e262aef13
Allow scroll-left command 2023-04-26 16:54:04 +02:00
9904e24333
Make shell side windows more persistent
Do not delete shell side windows when deleting other windows and do not make
them selectable by default (although `ace-windows` does not seem to respect this
setting).
2023-04-16 16:37:08 +02:00
b6bdb4f9e2
Allow to display shell and eshell in same side window
Inspired by
https://www.gnu.org/software/emacs/manual/html_node/elisp/Frame-Layouts-with-Side-Windows.html.
2023-04-16 11:29:34 +02:00
cfe1dcfa0a
Explicitly display shell and eshell buffers in side window
This should inhibit their windows from being split by `display-buffer` to
display normal buffers, but during early testing also magit buffers went to this
side window.  This configuration may thus not be final yet.
2023-04-16 10:57:26 +02:00
1f248358bc
Remove obsolete hook to reset checkboxes
The function called here has been removed.
2023-04-09 10:28:07 +02:00
71f07d1e8f
Remedy some flycheck and checkdoc warnings coming from db-org.el 2023-04-07 12:52:35 +02:00
2d4f626635
Ignore byte compile warnings for too wide docstrings
Ignore this both in the currently running Emacs as well as in all Emacs
subprocesses spawned by flycheck.
2023-04-07 12:41:58 +02:00
806c7b1053
Do not suppress undo and discard warnings
Warnings are now displayed in a side buffer, so suppressing warnings because
they are annoying is no longer a valid rationale.
2023-04-07 12:10:02 +02:00
347a3bf08d
Clean up personal Org utility functions
Mostly moving functions around and updating page headers.  Also removed some
obsolete functions, see updated command list for `db-org` use-package
declaration.
2023-04-07 11:49:58 +02:00
a52190f3be
Reuse windows to display buffers by default 2023-04-06 17:59:21 +02:00
0a14f01729
Sort agenda entries by remaining effort by default
This might be slow and buggy, but let's keep it for now.
2023-04-01 16:57:37 +02:00
1f9e032a1a
Display remaining effort in Org agenda by default
Note that sorting is wrong now, this needs to be fixed later.
2023-04-01 16:50:30 +02:00
bef3a482f3
Explicitly require org-ql-search when loading org-ql
`org-ql-search.ql` contains the definitions for Org QL dynamic blocks but is not
automatically loaded by `org-ql.el`.  Since I am using Org QL dynamic blocks
extensively, let's load this library explicitly when `org-ql.el` is activated.

Note that this implicitly reverts 939b1e882a,
which changed the use-package declaration from `org-ql-search` to `org-ql`
proper.  So this commit was wrong after all (and the state before that commit
was right), but having a use-package declaration for `org-ql` instead of some of
its sublibraries seems to be clearer to me.
2023-03-31 16:35:18 +02:00
939b1e882a
Fix package name in org-ql use-package declaration
Package pinning won't work otherwise.
2023-03-27 19:22:46 +02:00
ad2fbe31f7
Remove obsolete fix for org-ql link matching
This has been fixed upstream, no need to keep it any longer.
2023-03-25 17:32:49 +01:00
90293c7735
Remove whitespace when inserting interrupted task in capture message
Not quite sure whether this is really necessary, but it won't hurt.
2023-03-25 11:09:04 +01:00
a01bbe28e7
Fix wrong Org QL queries in constraint check agenda view 2023-03-11 10:02:32 +01:00
4e10c06799
Recognize Org bable header arguments when exporting
For this, `org-export-use-babel` has to be non-nil.  To still inhibit source
block evaluation on export (both for performance and for security reasons), set
`:eval` to `never-export` by default.
2023-03-01 20:35:15 +01:00
7fb9b84449
Do not refresh non-selected magit status buffers on Windows
This setting is experimental and a test whether performance on Windows can be
increased this way without causing too much confusion.
2023-02-19 12:44:46 +01:00
b5f03ddf96
Distribute some variable settings to specific configuration sections
Two configuration changes have been made:

- Removed `require-final-newline`, which originally had been set to nil; this is
  not necessary (I think), because this is a buffer-local variable that is
  usually set by the respective major mode when necessary; the default value is
  nil anyway.

- Activate `minibuffer-depth-indicate-mode` by default, to signify the depth of
  recursive minibuffer edits when they happen.
2023-02-18 17:01:30 +01:00
92d43a6306
Move more packages from core configuration to more specific sections
Also generalize the “dired” section to a more general “file handling section”,
as it already contained the configuration of `trashed` anyway.
2023-02-18 15:35:01 +01:00
491bcf5b26
Continue minor restructuring of main init.el
Remove some more redundant or obsolete (or even wrong) package declarations.
Also move some package declarations from the core configuration to more
specialized sections; this is not completely done yet, however.
2023-02-18 13:16:15 +01:00
91866466c6
Remove some redundant package declarations for completion
And fix a typo in a comment – yes, this did not got it's own commit!
2023-02-18 12:52:40 +01:00
d30669571c
Remove some unused key binding 2023-02-18 12:16:02 +01:00
25912eeb3d
Allow help to reuse the current buffer
When following links in the help buffer, inhibiting reuse of the current buffer
pops up a new one, but still updates the current buffer with the followed link.
The result is having two buffers with the same content, usually side by side.
2023-02-18 12:15:02 +01:00
0c2a30a8c2
Add additional information for detaul completion
Only the value for `completions-detailed` is non-default, the rest has only been
included for reference's sake.

Note that these configurations currently do not effect, as ivy and counsel do
not honor them.
2023-02-18 12:08:06 +01:00
6c17b944e2
Use full path completion for org-goto
This allows jumping to headlines in the current buffer much like using
imenu-based searches, but using native Org mode.
2023-02-14 16:17:48 +01:00
457a1d9be4
Open projects via project.el in dired by default
Inspired by https://www.n16f.net/blog/replacing-projectile-by-project/.
2023-02-14 11:56:01 +01:00
9d10f673f1
Mark projectile as basic external package 2023-02-14 11:53:49 +01:00
47d7e31800
Let display-buffer handle window placement for shells
This provides the same functionality, but makes it more configurable.
2023-02-13 13:22:51 +01:00
0ff7bba709
Explicitly make Help reuse windows whenever available
I think this is the default anyway, but let's make it clear.
2023-02-13 13:12:08 +01:00
a3247158aa
Further cleanup of core configuration
Remove the separates “Fixes” section and inline its content to other
configuration sections.  Fuse “Core Configuration” and “Basic Builtin Packages”
sections as those had always been similar anyway.
2023-02-12 18:49:09 +01:00
cc0d6456b6
Move Warnings buffer to side
This buffers keeps popping up when Emacs is compiling code in the background.
Maybe keeping it as a side buffer is less distracting?
2023-02-12 18:36:45 +01:00
05904e404e
Conduct minor cleanup of core configuration settings
I am not sure yet whether I want to move configuration for files.el into a
separate use-package declaration, but maybe it's cleaner this way and easier to
find via imenu?
2023-02-12 11:45:12 +01:00
65748689c6
Regroup some basic settings to use-package declarations
This also sets `switch-to-buffer-in-dedicated-window` to `pop`, sorry for the
mixup.
2023-02-11 20:29:43 +01:00
daa7882732
Do not auto-fill in textile-mode
Text edited in this mode is usually meant for Redmine Wiki pages and the like,
and line-wrapping there is then done by the browser.  Manually inserted line
breaks only disrupt here.
2023-02-10 20:59:11 +01:00
24aaf17d0e
Obey display rules when switching buffers manually
Set as per recommendation from
https://www.masteringemacs.org/article/demystifying-emacs-window-manager.
2023-01-30 19:56:43 +01:00