big changes: themed up, sorted up, some fixes and libs
This commit is contained in:
44
src/sh/sort.sh
Normal file
44
src/sh/sort.sh
Normal file
@@ -0,0 +1,44 @@
|
||||
# Sort methods for generated lists
|
||||
|
||||
if [ ! "${SORT_LOADED:-}" ]; then
|
||||
# Sort specifications
|
||||
#
|
||||
# - No sort
|
||||
# - Alphabetic sort
|
||||
# - Numeric sort
|
||||
SORT_NO="no-sort"
|
||||
SORT_ALPHA="sort-alpha"
|
||||
SORT_NUMERIC="sort-numeric"
|
||||
|
||||
# Artists may be sorted according to the name or the sort-name taken from
|
||||
# MusicBrainz
|
||||
SORT_ARTIST="sort-artist"
|
||||
SORT_ARTIST_SORTNAME="sort-artist-sortname"
|
||||
|
||||
# Release-groups may be sorted according to the release year or the title
|
||||
SORT_RG_TITLE="sort-rg-title"
|
||||
SORT_RG_YEAR="sort-rg-year"
|
||||
export SORT_NO SORT_ALPHA SORT_NUMERIC SORT_ARTIST SORT_ARTIST_SORTNAME \
|
||||
SORT_RG_TITLE SORT_RG_YEAR
|
||||
|
||||
# Configurable default sort
|
||||
SORT_ARTIST_DEFAULT="${SORT_ARTIST_DEFAULT:-"$SORT_ARTIST"}"
|
||||
SORT_RG_DEFAULT="${SORT_RG_DEFAULT:-"$SORT_RG_YEAR"}"
|
||||
export SORT_ARTIST_DEFAULT SORT_RG_DEFAULT
|
||||
|
||||
export SORT_LOADED=1
|
||||
fi
|
||||
|
||||
# Sorting switches
|
||||
#
|
||||
# @argument $1: Sort specification (may be one of SORT_NO, SORT_ALPHA,
|
||||
# SORT_NUMERIC)
|
||||
#
|
||||
# This method sorts the stream read from stdin.
|
||||
sort_list() {
|
||||
case "${1:-}" in
|
||||
"$SORT_ALPHA") cat | sort -t "$(printf '\t')" -k 2,2 ;;
|
||||
"$SORT_NUMERIC") cat | sort -t "$(printf '\t')" -k 2,2 -n ;;
|
||||
*) cat ;;
|
||||
esac
|
||||
}
|
||||
Reference in New Issue
Block a user