|
|
improve compatibility with zsh as a non-interactive shell - sfeed - RSS and Atom parser |
|
|
 |
git clone git://git.codemadness.org/sfeed (git://git.codemadness.org) |
|
|
 |
Log |
|
|
 |
Files |
|
|
 |
Refs |
|
|
 |
README |
|
|
 |
LICENSE |
|
|
|
--- |
|
|
 |
commit 63308527f5197ddbcad6b06c5c1bbaf12f997e57 |
|
|
 |
parent da8adbc02e4667a68077e5f0cab8548e2bb81c1b |
|
|
 |
Author: Hiltjo Posthuma <hiltjo@codemadness.org> (mailto://) |
application/vnd.lotus-organizer |
|
|
Date: Sat, 9 Dec 2023 21:51:45 +0100 |
|
|
|
|
|
|
|
improve compatibility with zsh as a non-interactive shell |
|
|
|
|
|
|
|
In zsh the variables $path and $status are special. |
|
|
|
|
|
|
|
https://zsh.sourceforge.io/Doc/Release/Parameters.html#index-path |
|
|
|
https://zsh.sourceforge.io/Doc/Release/Parameters.html#index-status |
|
|
|
|
|
|
|
(No promises I will keep up with this insanity in the future though) |
|
|
|
|
|
|
|
Diffstat: |
|
|
|
M README | 6 +++--- |
|
|
|
M sfeed_opml_export | 8 ++++---- |
|
|
|
M sfeed_update | 12 ++++++------ |
|
|
|
|
|
|
|
3 files changed, 13 insertions(+), 13 deletions(-) |
|
|
|
--- |
|
|
 |
diff --git a/README b/README |
|
|
|
@@ -752,12 +752,12 @@ sfeed_update_xargs shellscript: |
|
|
|
mkdir -p "${sfeedpath}" |
|
|
|
# print feeds for parallel processing with xargs. |
|
|
|
feeds | SFEED_UPDATE_CHILD="1" xargs -r -0 -P "${maxjobs}" -L 6 "$(readlink -f "$0")" |
|
|
|
- status=$? |
|
|
|
+ statuscode=$? |
|
|
|
# check error exit status indicator for parallel jobs. |
|
|
|
- test -f "${sfeedtmpdir}/ok" || status=1 |
|
|
|
+ test -f "${sfeedtmpdir}/ok" || statuscode=1 |
|
|
|
# cleanup temporary files etc. |
|
|
|
cleanup |
|
|
|
- exit ${status} |
|
|
|
+ exit ${statuscode} |
|
|
|
|
|
|
|
- - - |
|
|
|
|
|
|
 |
diff --git a/sfeed_opml_export b/sfeed_opml_export |
|
|
|
@@ -7,16 +7,16 @@ loadconfig() { |
|
|
|
if [ "$1" != "" ]; then |
|
|
|
# get absolute path of config file required for including. |
|
|
|
config="$1" |
|
|
|
- path=$(readlink -f "${config}" 2>/dev/null) |
|
|
|
+ configpath=$(readlink -f "${config}" 2>/dev/null) |
|
|
|
else |
|
|
|
# default config location. |
|
|
|
config="$HOME/.sfeed/sfeedrc" |
|
|
|
- path="${config}" |
|
|
|
+ configpath="${config}" |
|
|
|
fi |
|
|
|
|
|
|
|
# config is loaded here to be able to override $sfeedpath or functions. |
|
|
|
- if [ -r "${path}" ]; then |
|
|
|
- . "${path}" |
|
|
|
+ if [ -r "${configpath}" ]; then |
|
|
|
+ . "${configpath}" |
|
|
|
else |
|
|
|
printf "Configuration file \"%s\" cannot be read.\n" "${config}" >&2 |
|
|
|
echo "See the sfeedrc.example file or the sfeedrc(5) man page for an example." >&2 |
|
|
 |
diff --git a/sfeed_update b/sfeed_update |
|
|
|
@@ -16,16 +16,16 @@ loadconfig() { |
|
|
|
if [ "$1" != "" ]; then |
|
|
|
# get absolute path of config file required for including. |
|
|
|
config="$1" |
|
|
|
- path=$(readlink -f "${config}" 2>/dev/null) |
|
|
|
+ configpath=$(readlink -f "${config}" 2>/dev/null) |
|
|
|
else |
|
|
|
# default config location. |
|
|
|
config="$HOME/.sfeed/sfeedrc" |
|
|
|
- path="${config}" |
|
|
|
+ configpath="${config}" |
|
|
|
fi |
|
|
|
|
|
|
|
# config is loaded here to be able to override $sfeedpath or functions. |
|
|
|
- if [ -r "${path}" ]; then |
|
|
|
- . "${path}" |
|
|
|
+ if [ -r "${configpath}" ]; then |
|
|
|
+ . "${configpath}" |
|
|
|
else |
|
|
|
printf "Configuration file \"%s\" cannot be read.\n" "${config}" >&2 |
|
|
|
echo "See the sfeedrc.example file or the sfeedrc(5) man page for an example." >&2 |
|
|
|
@@ -214,12 +214,12 @@ main() { |
|
|
|
[ ${signo} -eq 0 ] && wait |
|
|
|
# check error exit status indicator for parallel jobs. |
|
|
|
[ -f "${sfeedtmpdir}/ok" ] |
|
|
|
- status=$? |
|
|
|
+ statuscode=$? |
|
|
|
# cleanup temporary files etc. |
|
|
|
cleanup |
|
|
|
# on signal SIGINT and SIGTERM exit with signal number + 128. |
|
|
|
[ ${signo} -ne 0 ] && exit $((signo+128)) |
|
|
|
- exit ${status} |
|
|
|
+ exit ${statuscode} |
|
|
|
} |
|
|
|
|
|
|
|
[ "${SFEED_UPDATE_INCLUDE}" = "1" ] || main "$@" |
|