Commit Graph

700 Commits

Author SHA1 Message Date
Daniel - 6fe33daf17
Allow for fine-grained effort estimation for tasks
There are often small tasks that do not require the former minimum of
15 minutes, resulting in effort estimations that are too high.  Conversely,
larger tasks are often hard to estimate correctly, which is why the higher
numbers are now further apart.
2020-10-03 10:35:23 +02:00
Daniel - 1d89551f1b
Add missing autoload specification 2020-10-02 19:52:57 +02:00
Daniel - 9994a3ac82
Update key bindings for handling Org Mode links
F9 is a comparably prominent key binding, and we now bind it to the more
important `db/org-add-link-to-other-item'.  The formar binding to
`db/org-find-links-to-current-item' is bound to F11 now, since it will still be
used often, but not more often then inserting links (I think).  The old binding
for F11 to `org-capture' has not been used much, and so we can dispense of it.
2020-09-26 16:46:34 +02:00
Daniel - 1c065bb46b
Add simple function to insert links to other items at point 2020-09-26 16:44:40 +02:00
Daniel - 48d9979fbd
Add default key binding for backlink searching in Org Mode buffers 2020-09-26 15:24:29 +02:00
Daniel - b0a36749e6
Refactor Org Mode link finder function
The main entry point is now `db/org-find-links-to-current-item', which decides
how to obtain the ID and CUSTOM_ID of the item to look for.  The main work is
done by `db/org-find-items-linking-to-id', which does some checks, build the
query, and then calls `org-search-view' (which, indeed, does the actual work).
Users should call `db/org-find-links-to-current-item' only.
2020-09-26 15:20:11 +02:00
Daniel - a6f77f8d71
Add simple helper function to find items linking to the current one
Only ID links are supported by now.
2020-09-26 14:14:45 +02:00
Daniel - b1d82f875f
Do not let org-roam change matching data when determining the face
It is not clear what function really changes the matching data, but it's called
by `org-roam--id-link-face', and this is where we save the matching data now.

TODO: check whether this has been reported or even fixed upstream.
2020-09-26 14:12:21 +02:00
Daniel - c11aeb6666
Experimentally enable company completion in Org Mode buffers 2020-09-26 11:12:11 +02:00
Daniel - f3df40bf40
Add missing autoload for project linting function 2020-09-21 10:39:36 +02:00
Daniel - bdc8a53fe3
Minor reformatting in package signature for db-projects 2020-09-20 14:24:43 +02:00
Daniel - a576ef123d
Automatically update hydra for shortcuts after customization 2020-09-19 14:02:50 +02:00
Daniel - 4e7245f858
Experimental: do not show deadlines in top agenda view
We have a separate view for deadlines, that should actually be sufficient.
2020-09-17 15:53:04 +02:00
Daniel - 6ee9e84bb1
Reduce number of ls switches when on windows
They do not seem to be supported by mingw's ls?
2020-09-17 15:52:56 +02:00
Daniel - 01be58c2e1
Prevent the default font from being changed by gconf
Thanks, stackexchange!
2020-09-12 14:42:35 +02:00
Daniel - 39c06d670b
Move tramp and calc configuration into use-package statements 2020-09-12 14:20:30 +02:00
Daniel - d10e85e208
Fix typo in regular expression 2020-09-12 13:30:53 +02:00
Daniel - cb9ef5a8d4
Merge configuration sections on constants and path settings 2020-09-12 13:15:27 +02:00
Daniel - 3fb7c80312
Demand basic configuration packages
Since package loading is defered by default, explicit demanding is required
here.
2020-09-12 12:54:01 +02:00
Daniel - 7b9dd53c3a
Moving around use-package declarations 2020-09-12 11:49:37 +02:00
Daniel - a4daabd42c
Move private directory creation to corresponding config section 2020-09-12 11:40:35 +02:00
Daniel - 085a57d281
Add subword-mode for programming 2020-09-12 11:32:52 +02:00
Daniel - b9add4858a
Group configuration for use-package 2020-09-12 11:32:39 +02:00
Daniel - 5aea5ba37e
Introduce new configuration section for paths 2020-09-12 11:32:27 +02:00
Daniel - 471933e25c
Gather some configuration on appearance in corresponding section 2020-09-12 11:31:59 +02:00
Daniel - 6e9e6d2bce
Move definition of lisp-indent-function to Lisp section 2020-09-12 11:31:05 +02:00
Daniel - 053c3350e9
Add another missing closing parenthesis
Shouldn't copy and paste so much …
2020-09-12 11:30:40 +02:00
Daniel - d0b0cc06ff
Only bind f5 once
Easier to see what is going on.
2020-09-12 11:21:30 +02:00
Daniel - 331272afc1
Add configuration and key bindings for bm package 2020-09-12 11:14:37 +02:00
Daniel - 9e8ee7f47f
Move around use-package declarations
Should make a little bit more sense now, but not much …
2020-09-12 11:03:41 +02:00
Daniel - 4bae02e8c7
Create new configuration section for general programming
Covering configurations for magit, projectile, and the like.
2020-09-12 11:03:40 +02:00
Daniel - 6c0d7661a8
Move helm shortcut function to navigation section
Makes more sense to me.
2020-09-12 11:03:40 +02:00
Daniel - d9eb84b0a3
Make shr render html-pages more consistently
Configuration from https://protesilaos.com/dotemacs.
2020-09-12 11:03:38 +02:00
Daniel - 7134ce2999
Allow to switch directories in Eshell without writing `cd' 2020-09-12 10:40:42 +02:00
Daniel - 192af9ca14
Show only clashes in ediff 2020-09-12 10:35:51 +02:00
Daniel - d9180abf04
Demand loading personal customizations
This somehow got broken when setting the default loading behavior to defer.
2020-09-12 10:35:05 +02:00
Daniel - 53c03eb488
Add missing closing paranthesis
Sorry for that.
2020-09-12 10:34:50 +02:00
Daniel - 644dac0c43
Add use-package declaration for magit-repos
That's cool!
2020-09-12 10:25:50 +02:00
Daniel - b4c5a52b3e
Add some simple configuration for git-commit 2020-09-12 10:25:43 +02:00
Daniel - 48b6394757
Remove obsolete defer options
Deferring to load packages is the default now.
2020-09-12 10:10:43 +02:00
Daniel - 5bea8030fc
Move all Org Mode configuration to corresponding section 2020-09-12 10:02:40 +02:00
Daniel - 58f74cdd41
Add configuration for org-tree-slide
That's fun!

Again from https://protesilaos.com/dotemacs/.
2020-09-12 10:01:32 +02:00
Daniel - fca3367ab4
Let tabs act natively when in Org Mode src blocks 2020-09-12 09:51:05 +02:00
Daniel - a02fc189ab
Keep org links after insertion 2020-09-12 09:50:47 +02:00
Daniel - 93f5389d39
Move calendar configuration to separate use-package declaration
Also make Monday the first day of the week.
2020-09-12 09:41:38 +02:00
Daniel - 9727c17dd9
Don't make diary entries from org agenda
The standard diary is not used in this configuration, and using the "i" key for
clocking is much more natural then.
2020-09-12 09:40:47 +02:00
Daniel - a7a38f33e7
Add config for trashed, a dired-like interface to the trash bin 2020-09-12 09:24:01 +02:00
Daniel - 8ffc2e5dd4
Explicitly configure dired-x
Again motivated by https://protesilaos.com/dotemacs/.
2020-09-12 09:20:02 +02:00
Daniel - 4ba7bbb9d3
Clean up configuration of dired-subtree
Well, there wasn't any configuration for it right now, but the use-package
statement was hidden in the config section of dired's.  Moved it to the
top-level right now and also bound dired-subtree-cycle.
2020-09-12 09:19:09 +02:00
Daniel - 8d4eaf284c
Some dired tweaking
Inspired by https://protesilaos.com/dotemacs/.
2020-09-12 09:08:15 +02:00
Daniel - 01c451d886
Defer package loading by default
This is what we have done explicitly all along, so we also can make it the
default (I didn't know this was possible until right now …).
2020-09-12 09:07:10 +02:00
Daniel - 362f3cad22
Sort keybindings
This should prevent unnoticed duplicate keybindings.
2020-09-12 08:52:02 +02:00
Daniel - 021416fcf9
Add goto-last-change package 2020-09-12 08:51:35 +02:00
Daniel - 1c7f9917d3
Remove duplicate (and unused) key bindings for C-z 2020-09-12 08:51:17 +02:00
Daniel - b65359b652
Allow scrolling during search 2020-09-11 17:19:07 +02:00
Daniel - 3f2993654d
Set some imenu variables 2020-09-11 17:10:02 +02:00
Daniel - 4e63da5d67
Increase imenu depth in Org Mode buffers 2020-09-11 17:03:45 +02:00
Daniel - beca0bf7c5
Inhibit implicit frame resizing
This is not important when using a tiled window manager, but may inhibit frame
resizing when starting elsewhere, like on windows.
2020-09-11 16:49:57 +02:00
Daniel - 5961491f77
Replace custom imenu support use-package with builtin one
Reference: https://protesilaos.com/dotemacs/#h:cfa129a4-3394-4911-9097-4544df4e6ed9
2020-09-11 16:47:28 +02:00
Daniel - a20b5faa42
Explicitly set w32-browser keybindings
This is for when dired+ is not available (which is current the case, because
dired+ does not seem to be available from melpa and the previously used version
was too old).
2020-09-07 17:00:59 +02:00
Daniel - 8ba10fda9c
Show closed and clocked states in agenda by default
State changes are usually not that relevant for me.
2020-09-07 16:59:41 +02:00
Daniel - 61260a4651
Use ID properties for links, creating it if necessary
Inspiration: https://writequit.org/articles/emacs-org-mode-generate-ids.html,
and elsewhere.
2020-09-06 16:06:46 +02:00
Daniel - 1e16d183c5
Add new TOPIC tag
This should allow to distinguish proper tasks (“projects” in the PARA parlance)
from areas of responsibility.  It currently mimics the semantics of the NOP tag,
but may be updated later on.
2020-09-06 10:55:03 +02:00
Daniel - b1010403e4
Update Org Mode tag list 2020-09-06 10:45:25 +02:00
Daniel - 327b44e3a0
Emit message when server is not started 2020-09-02 15:04:54 +02:00
Daniel - e08b6bc31d
Comment on our check for whether the server is already running
In a nutshell: it might be redundant, but we keep it nevertheless.
2020-09-02 11:53:07 +02:00
Daniel - 621c51f347
Remember why to require helm-for-files in Helm shortcut function 2020-09-02 11:28:42 +02:00
Daniel - 121f5ee16b
Add missing require for helm recentf source 2020-09-02 11:27:00 +02:00
Daniel - 1708ed3ec4
Make the server log interactions with clients 2020-09-02 11:23:00 +02:00
Daniel - b51c311210
Make server start more robust
The present configuration is supposed to start the server if it's not already
running.  Previously we checked this using `server-running-p', but this is not
really realiable.  Instead, we now checking the `server-process' variable
directly.

Furthermore, if it turns out during startup that the currently configured server
file is already present, we warn the user about this and don't do anything
else.  We let the user to fix it manually because it's (i) easy for the
user (easier than doing it automatically) and (ii) only done once, namly during
startup (the burden on the user is thus tenable).

The current implementation may not be accurate, though, as my understanding of
the implementation around Emacs' server functionality is only at the beginning.
2020-09-02 11:22:56 +02:00
Daniel - b9fe0924f2
Add recently used files to main helm shortcuts function 2020-08-31 08:23:26 +02:00
Daniel - cb081e22b5
Revert "Remove obsolete note taking capture template"
We may need this for fleeting notes.  See
https://blog.jethro.dev/posts/how_to_take_smart_notes_org/.

This reverts commit 20176badc7.
2020-08-29 12:19:16 +02:00
Daniel - 23c2a225ae
Fix obsolete key binding for org-roam 2020-08-29 11:52:20 +02:00
Daniel - 20176badc7
Remove obsolete note taking capture template 2020-08-29 11:50:46 +02:00
Daniel - 23fc3133c4
Try to fix a problem with org-roam and it's auto-rename feature
The old title is sometimes not retrieved correctly and nil is passed instead.
This leads to errors and links not being updated.
2020-08-29 11:50:03 +02:00
Daniel - 1c044cc086
Add stub configuration for org-roam
Just trying it out.  More configuration may follow.
2020-08-28 20:12:29 +02:00
Daniel - 4c7c18b34e
Remove some unused package definitions 2020-08-27 19:39:28 +02:00
Daniel - 186aef5252
Fix typo in use-package definition for shell scripts 2020-08-27 19:39:18 +02:00
Daniel - 628bfde98c
Ensure that expand-region is available 2020-08-27 19:35:51 +02:00
Daniel - ae77ece055
Do not disable package initialization on startup
This is some relic from former configurations, and might have been wrong quite
some time now.  However, in Emacs 27+, package initialization is done before
loading user-init-file, and thus we don't have to do it by hand.  Before that,
package initialization was done after reading user-init-file, but before calling
after-init-hook, and since we needed to load some packages in the init file, we
had to initialize package.el ourselves.
2020-08-27 15:22:00 +02:00
Daniel - 1ba91b3271
Introduce dedicated variable for main Org Mode file
The shortcut in the frequently-used menu now points there, and not anymore to
the dedicated home and work files.  If only a single main Org Mode file is used,
this variable should be sufficient.
2020-08-27 12:16:54 +02:00
Daniel - 9cf79c3733
Move custom helm key bindings to the use-package configuration
This is where they belong.
2020-08-27 11:52:25 +02:00
Daniel - 5d6110982b
Add dired-recent to keep a cache of recently opened directories
Inspired by (and mostly copied from)
https://github.com/novoid/dot-emacs/blob/master/config.org#dired-recent--c-z.
2020-08-27 11:46:06 +02:00
Daniel - 1187577348
Manipulate explicit-bash-args only after loading shell package
It's not there available early, duh!
2020-08-26 19:45:34 +02:00
Daniel - 9f42b95958
Try to enable readline editing in shell-mode
See https://coredumped.dev/2020/01/04/native-shell-completion-in-emacs/ for more
details.
2020-08-26 17:27:51 +02:00
Daniel - 88e0a5021d
Add custom function for keyboard-quit
This version should also quit the minibuffer even if not selected.  Found at
https://with-emacs.com/posts/tips/quit-current-context/.
2020-08-26 10:30:25 +02:00
Daniel - 221f8f7fc3
Move custom helm bindings to top-level db/run-init
Configuring custom key bindings via use-package's :map keyword does seem to
install autoloads for the bound functions into the main helm package.  I.e.,
when binding `db/play-radio-stations' to # in `helm-command-map' via :map,
use-package seems to install an autoload for `db/play-radio-stations' that
requires `helm', instead of the correct `db-music' package.  Additionally,
defining key bindings somewhere in the init file is hard to manage, and they are
thus now collected with other key bindings in `db/run-init'.
2020-08-25 14:23:06 +02:00
Daniel - f1ef558a23
Explicitly require helm instead of enabling helm-mode
`helm-mode' should actually not be activated, since we are still using ivy for
`completing-read' and friends.  That being said, when we want to enable
`helm-mode' in the future, we should also not call `ivy-mode' anymore.
2020-08-23 20:28:04 +02:00
Daniel - 2ed50ed61f
Add comment for new early-init.el file
So I know what's this is about next time.
2020-08-15 16:54:00 +02:00
Daniel - ed7266bd65
Move package initialization to early-init.el
This is done in preparation for using Emacs 27.1, which sources this file
automatically before package activation.
2020-08-15 16:50:40 +02:00
Daniel - 4e0bb27304
Set projectile's default completion to helm 2020-08-15 11:35:04 +02:00
Daniel - 14014c25ec
Let magit choose its completing backend
When we switch defaults, it should also apply to magit.
2020-08-13 16:22:21 +02:00
Daniel - 83f8496ca6
Set default key binding for helm 2020-08-13 16:16:51 +02:00
Daniel - 8ae7d9d7f8
Eagerly load helm
Autoloading helm does not work well with custom keybindings.  Binding our
default "C-c h" to either `helm-command-map' or `helm-command-prefix' gives
errors, as both are not commands.  In the previous configuration, the prefix
"C-c h" was initially undefined and only defined when helm was loaded.  This led
to irritating behavior.

All this can be fixed by eagerly loading helm.  This may slow down startup, in
particular on Windows, but it should be worth it.
2020-08-13 16:14:54 +02:00
Daniel - abc06188b7
Remove `helm-emms'
It was actually only used for playing EMMS streams, but since the implementation
has been rewritten in EMMS, helm-emms does not work anymore.  Replaced the radio
playing functionality by a custom function, obsoleting helm-emms.
2020-08-12 21:59:09 +02:00
Daniel - 772ee43c2c
Add custom function to play radio stations 2020-08-12 21:57:48 +02:00
Daniel - 12543a352b
Remove obsolete diminish package 2020-08-11 17:38:23 +02:00
Daniel - 09d28876f5
Revert default binding for F1 to EShell
I need more Emacs integration in my default shell.
2020-07-31 16:22:09 +02:00
Daniel - b65d05e2d3
Use an external shell as default shell
This is experimental.
2020-07-31 15:59:24 +02:00
Daniel - f8596e1028
Set default shell to bash
That's not only good enough, but also much more predictable than using the
currently used shell.  Customize `explicit-shell-file-name' if you don't want
bash.
2020-07-25 11:20:55 +02:00