taskwarrior/scripts/hooks/on-exit.shadow-file

34 lines
1.2 KiB
Bash
Executable file
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/usr/bin/env bash
# This hook script replaces the shadow file feature, found in Taskwarrior
# prior to version 2.4.0.
#
# This script assumes that the legacy shadow file settings are still used.
# Although those settings are now not recognized by Taskwarrior, іt is
# harmless to store configuration settings for extensions in .taskrc.
# The command to run, to generate the shadow file. If this is not available,
# then the default.command is used.
SHADOW_COMMAND=$(task _get rc.shadow.command)
if [[ -z "$SHADOW_COMMAND" ]]
then
SHADOW_COMMAND=$(task _get rc.default.command)
fi
# The file to overwrite.
SHADOW_FILE=$(task _get rc.shadow.file)
# Run the command, inserting a series of override settings:
# rc.detection=off Disables terminal size detection
# rc.gc=off Disables GC, thus not changing IDs unexpectedly
# rc.color=off Disable color in the shadow file
# rc.hooks=off Disable hooks, to prevent race condition
task $SHADOW_COMMAND rc.detection=off rc.gc=off rc.color=off rc.hooks=off > $SHADOW_FILE 2>/dev/null
if [[ $? != 0 ]]
then
echo Could not create $SHADOW_FILE
exit 1
fi
echo Shadow file $SHADOW_FILE updated.
exit 0