First chunk of major refactor. Move code to external files located in .includes. Better code organization and easier to deal with.
This commit is contained in:
98
.includes/help.sh
Normal file
98
.includes/help.sh
Normal file
@ -0,0 +1,98 @@
|
||||
documentation() {
|
||||
if [[ "$2" == "Become a Patron" ]]; then
|
||||
return
|
||||
fi
|
||||
if [[ "$2" == "Donate" ]]; then
|
||||
return
|
||||
fi
|
||||
if ! command -v w3m &> /dev/null ; then
|
||||
echo "This feature of audiogame-manager requires w3m. Please install it before continuing."
|
||||
exit 1
|
||||
fi
|
||||
get_bottle "$1"
|
||||
echo "Loading documentation, please wait..."
|
||||
# Try to find documentation based on common naming conventions.
|
||||
local gamePath="$(winepath -u "$2" 2> /dev/null)"
|
||||
gamePath="${gamePath%/*}"
|
||||
local gameDoc="$(find "$gamePath" -type f -iname 'user_manual.htm*' -or -iname 'user manual.htm*' -or -iname '*user guide.htm*' | head -1)"
|
||||
# Game name specific docs, add the name to the for loop.
|
||||
if [[ -z "$gameDoc" ]]; then
|
||||
for i in "troopanum.txt" "superdeekout.txt" scw.html ; do
|
||||
gameDoc="$(find "$gamePath" -type f -iname "$i" -or -iname 'manual.htm' | head -1)"
|
||||
done
|
||||
fi
|
||||
if [[ -z "$gameDoc" ]]; then
|
||||
gameDoc="$(find "$gamePath" -type f -path '*/Manual/index.html' | head -1)"
|
||||
fi
|
||||
if [[ -z "$gameDoc" ]]; then
|
||||
gameDoc="$(find "$gamePath" -type f -iname '[A-Z]*Help.htm' -or -iname '[A-Z]*Help.html' | head -1)"
|
||||
fi
|
||||
if [[ -z "$gameDoc" ]]; then
|
||||
gameDoc="$(find "$gamePath" -type f -iname 'manual.html' -or -iname 'manual.htm' | head -1)"
|
||||
fi
|
||||
if [[ -z "$gameDoc" ]]; then
|
||||
gameDoc="$(find "$gamePath" -type f -iname 'en.html' -or -iname 'en.htm' | head -1)"
|
||||
fi
|
||||
if [[ -z "$gameDoc" ]]; then
|
||||
gameDoc="$(find "$gamePath" -type f -iname 'readme.html' -or -iname 'readme.htm' | head -1)"
|
||||
fi
|
||||
if [[ -z "$gameDoc" ]]; then
|
||||
gameDoc="$(find "$gamePath" -type f -iname 'manual.txt' | head -1)"
|
||||
fi
|
||||
if [[ -z "$gameDoc" ]]; then
|
||||
gameDoc="$(find "$gamePath" -type f -iname 'readme.txt' -or -iname 'help.txt' | head -1)"
|
||||
fi
|
||||
if [[ -z "$gameDoc" ]]; then
|
||||
gameDoc="$(find "$gamePath" -type f -iname '*.url' -exec grep -i 'url=' {} \; | grep -iv 'score' | head -1)"
|
||||
gameDoc="${gameDoc#*=}"
|
||||
gameDoc="${gameDoc//[[:cntrl:]]/}"
|
||||
fi
|
||||
# Display documentation if available.
|
||||
if [[ -n "$gameDoc" ]]; then
|
||||
w3m "$gameDoc"
|
||||
else
|
||||
echo "No documentation found."
|
||||
fi
|
||||
exit 0
|
||||
}
|
||||
|
||||
license() {
|
||||
cat << EOF
|
||||
■The contents of this file are subject to the Common Public Attribution
|
||||
License Version 1.0 (the ■License■); you may not use this file except in
|
||||
compliance with the License. You may obtain a copy of the License at
|
||||
https://opensource.org/licenses/CPAL-1.0. The License is based on the Mozilla Public License Version
|
||||
1.1 but Sections 14 and 15 have been added to cover use of software over a
|
||||
computer network and provide for limited attribution for the Original
|
||||
Developer. In addition, Exhibit A has been modified to be consistent with
|
||||
Exhibit B.
|
||||
|
||||
Software distributed under the License is distributed on an ■AS IS■ basis,
|
||||
WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
||||
for the specific language governing rights and limitations under the
|
||||
License.
|
||||
|
||||
The Original Code is audiogame manager.
|
||||
|
||||
The Original Developer is not the Initial Developer and is . If
|
||||
left blank, the Original Developer is the Initial Developer.
|
||||
|
||||
The Initial Developer of the Original Code is Billy "Storm Dragon" Wolfe. All portions of
|
||||
the code written by Billy Wolfe are Copyright (c) 2020, 2024. All Rights
|
||||
Reserved.
|
||||
|
||||
Contributor Michael Taboada.
|
||||
|
||||
Attribution Copyright Notice: Audiogame manager copyright 2020 Storm Dragon. All rights reserved.
|
||||
|
||||
Attribution Phrase (not exceeding 10 words): A Stormux project
|
||||
|
||||
Attribution URL: https://stormgames.wolfe.casa
|
||||
|
||||
Graphic Image as provided in the Covered Code, if any.
|
||||
|
||||
Display of Attribution Information is required in Larger
|
||||
Works which are defined in the CPAL as a work which combines Covered Code
|
||||
or portions thereof with code not governed by the terms of the CPAL.
|
||||
EOF
|
||||
}
|
Reference in New Issue
Block a user