From f08c8ebefd8c5c518e9136ab89f8880630acd917 Mon Sep 17 00:00:00 2001 From: Marty Oehme Date: Tue, 24 Aug 2021 23:09:11 +0200 Subject: [PATCH] taskwarrior: Fix taskopen note directory location Fixed error in configuration file location for taskopen alias which put the config file instead of the notes directory. Now configuration file correctly resides in $XDG_CONFIG_HOME/task/taskopenrc and notes dir is $XDG_DATA_HOME/task/notes. Notes can now correctly be created by doing `task annotate Note`. --- taskwarrior/.config/sh/alias.d/taskwarrior.sh | 2 +- .../.config/sh/env.d/taskwarrior-xdg.sh | 2 + taskwarrior/.config/task/taskopenrc | 71 +++++++++++++++++++ 3 files changed, 74 insertions(+), 1 deletion(-) create mode 100644 taskwarrior/.config/task/taskopenrc diff --git a/taskwarrior/.config/sh/alias.d/taskwarrior.sh b/taskwarrior/.config/sh/alias.d/taskwarrior.sh index 15eb500..4003051 100644 --- a/taskwarrior/.config/sh/alias.d/taskwarrior.sh +++ b/taskwarrior/.config/sh/alias.d/taskwarrior.sh @@ -1,6 +1,6 @@ #!/usr/bin/env sh -alias taskopen='taskopen -c ${XDG_DATA_HOME}/task/notes' +alias taskopen='taskopen -c ${XDG_CONFIG_HOME:-~/.config}/task/taskopenrc' # invoking t starts the task shell # passing arguments along passes them straight through to taskwarrior instead diff --git a/taskwarrior/.config/sh/env.d/taskwarrior-xdg.sh b/taskwarrior/.config/sh/env.d/taskwarrior-xdg.sh index 81608d9..9979553 100644 --- a/taskwarrior/.config/sh/env.d/taskwarrior-xdg.sh +++ b/taskwarrior/.config/sh/env.d/taskwarrior-xdg.sh @@ -1,3 +1,5 @@ #!/usr/bin/env sh export TASKRC="$XDG_CONFIG_HOME/task/taskrc" + +[ -d "$XDG_DATA_HOME/task/notes" ] || mkdir -p "$XDG_DATA_HOME/task/notes" diff --git a/taskwarrior/.config/task/taskopenrc b/taskwarrior/.config/task/taskopenrc new file mode 100644 index 0000000..6914f3f --- /dev/null +++ b/taskwarrior/.config/task/taskopenrc @@ -0,0 +1,71 @@ +#BROWSER='xdg-open $FILE &>/dev/null' +#EDITOR='vim' +#FILE_CMD='xdg-open' +TASKBIN='task' + +# If you sync tasks NOTES_FOLDER should be a location that syncs and is available to +# other computers, i.e. /users/dropbox/tasknotes +# NOTES_FOLDER to store notes in, must already exist! +NOTES_FOLDER="$XDG_DATA_HOME/task/notes/" + +# Preferred extension for tasknotes +NOTES_EXT=".md" + +# Path to notes file. UUID will be replaced with the actual uuid of +# the task. If NOTES_CMD +# Default is: ${NOTES_FOLDER}UUID${NOTES_EXT} +#NOTES_FILE="$HOME/tasknotes/UUID.txt" + +# Command that opens notes. UUID will be replaced with the actual uuid of +# the task. +# Default is: $EDITOR $NOTES_FILE +#NOTES_CMD="vim "$HOME/tasknotes/$UUID.txt"" + +# Specify the default sorting. +# Default is taskwarrior's default sorting, i.e. sorting by task IDs. +#DEFAULT_SORT="urgency-,label,annot" + +# Apply a default taskwarrior filter in order to exclude certain tasks. +# Default is: status.is:pending +#DEFAULT_FILTER= + +# Default command for '-i' +# Default is: ls -la +#DEFAULT-i="ls -la" + +# Add some paths to the taskopen's PATH variable +#PATH_EXT=/path/to/taskopen/scripts +PATH_EXT=/usr/share/taskopen/scripts + +# Regular expression that referes to the NOTES_FILE. +# Default is: Notes +NOTES_REGEX="Note" + +# Regular expression that identifies annotations openable by BROWSER. +# Default is: www|http +#BROWSER_REGEX="www|http" + +# Regular expression that identifies file paths in annotations. Will be opened by xdg-open. +# Default is: \.|\/|~ +#FILE_REGEX="\.|\/|~" + +# Regular expression that identifies a text annotation. Automatically triggers raw edit mode like '-r'. +#TEXT_REGEX=".*" + +# Custom regular expression that specifies annotations passed to CUSTOM1_CMD, e.g: +#CUSTOM1_REGEX="Message-[Ii][Dd]:|message:" +#CUSTOM1_CMD="muttjumpwrapper" + +# Custom regular expression that specifies annotations passed to CUSTOM2_CMD. +#CUSTOM2_REGEX="" +#CUSTOM2_CMD="" + +# Execute an arbitrary command if there is no annotation available. The corresponding taskwarrior IDs will +# be passed as arguments, e.g. "addnote 21 42" +#NO_ANNOTATION_HOOK=addnote + +# Make additional taskwarrior attributes available as sort keys and environment variables. +# E.g. TASK_ATTRIBUTES="project,tags" allows to sort by "task_project" or "task_tags" and to use +# "$TASK_PROJECT" or "$TASK_TAGS" within your (custom) commands. +#TASK_ATTRIBUTES="" +