Files
libloot/scripts/git/pre-commit
T
Frederik “Freso” S. Olesen c6dec4518a Make the pre-commit Git hook executable.
This allows for symlinking it in .git/hooks/ directly[1] or executing
it from within an already existing `pre-commit` hook/script without
calling out to an interpreter in there[2], thus keeping up with any
upstream changes to it automatically.

Follow-up to e3b39b7233 / https://github.com/loot/loot/issues/622

[1] `ln -s ../../scripts/git/pre-commit .git/hooks/pre-commit`
[2] `./scripts/git/pre-commit` vs. `/bin/sh ./scripts/git/pre-commit`
2016-08-04 21:46:16 +02:00

20 lines
952 B
Bash
Executable File

#!/bin/sh
# This is a Git pre-commit hook. Install it to `.git/hooks`.
#
# Run xgettext to write a new resources/l10n/template.pot, then add it to the
# commit if more than one line in it has changed, otherwise discard any changes
# to it.
xgettext -k"translate:1,1t" -k"translate:1c,2,t" --add-location=full --from-code=utf-8 --package-name=LOOT --package-version=0.9.2 --copyright-holder="WrinklyNinja" --msgid-bugs-address="https://github.com/loot/loot/issues" -o resources/l10n/template.pot src/gui/html/js/*.* src/gui/*.cpp src/backend/*/*.* src/backend/*.*
sed -i 's|charset=CHARSET|charset=UTF-8|' resources/l10n/template.pot
LINES_ADDED=$(git diff --numstat resources/l10n/template.pot | cut -f 1)
LINES_REMOVED=$(git diff --numstat resources/l10n/template.pot | cut -f 2)
if [[ "$LINES_ADDED" -eq "$LINES_REMOVED" && "$LINES_ADDED" -eq 1 ]]; then
git checkout -- resources/l10n/template.pot
else
git add resources/l10n/template.pot
fi