mirror of
https://github.com/GothenburgBitFactory/taskwarrior.git
synced 2025-08-19 09:53:08 +02:00
Hooks
- Implemented replacement for shadow files, in the form of a hook script. - Uses rc.shadow.command otherwise rc.default.command. - Uses rc.shadow.file. - Overrides settings that cause race conditions. - Provides success and failure messages.
This commit is contained in:
parent
a6c4c32ed7
commit
633d273ef3
1 changed files with 18 additions and 3 deletions
|
@ -7,14 +7,29 @@
|
|||
# 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.
|
||||
# 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)
|
||||
|
||||
# Overwrite the shadow file by running the command.
|
||||
task $SHADOW_COMMAND > $SHADOW_FILE 2>/dev/null
|
||||
# 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.locking=off Disable file locking, to prevent race condition
|
||||
# rc.hooks=off Disable hooks, to prevent race condition
|
||||
task $SHADOW_COMMAND rc.detection=off rc.gc=off rc.color=off rc.locking=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
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue