Difference between revisions of "Cli-love/helpme revision idea"
From Pandora Wiki
Spiralofhope (talk | contribs) m (Created page with "= idea = Simplify everything by moving all data into a separate document. This document can be made portable between the wiki and CLI Love itself. = helpme.sh = <pre> #!/bin/...") |
Spiralofhope (talk | contribs) m |
||
(One intermediate revision by the same user not shown) | |||
Line 2: | Line 2: | ||
Simplify everything by moving all data into a separate document. This document can be made portable between the wiki and CLI Love itself. | Simplify everything by moving all data into a separate document. This document can be made portable between the wiki and CLI Love itself. | ||
+ | |||
+ | Move the list into its own document. Then it can be downloaded with something like: | ||
+ | |||
+ | \wget http://pandorawiki.org/index.php?title=Cli-love/helpme_revision_idea&action=raw -O helpme.txt | ||
= helpme.sh = | = helpme.sh = | ||
− | < | + | <source lang="bash"> |
#!/bin/bash | #!/bin/bash | ||
Line 62: | Line 66: | ||
#checker second | #checker second | ||
#checker failure | #checker failure | ||
− | </ | + | </source> |
= helpme.txt = | = helpme.txt = | ||
Line 89: | Line 93: | ||
second | second | ||
This is a second program. | This is a second program. | ||
− | |||
</pre> | </pre> |
Latest revision as of 18:33, 22 June 2012
idea
Simplify everything by moving all data into a separate document. This document can be made portable between the wiki and CLI Love itself.
Move the list into its own document. Then it can be downloaded with something like:
\wget http://pandorawiki.org/index.php?title=Cli-love/helpme_revision_idea&action=raw -O helpme.txt
helpme.sh
#!/bin/bash
# Scan a text file
# Look for given search string
# If found
# Print lines which have a string with spaces
# Stop at the first blank line.
# IDEA: Instead of directly echoing the text, build a variable. Then use `less` to display it. But frankly, if a description is that long, something is very wrong.
# IDEA: Go back through the list and display all associated commands.
# This would be pretty annoying to do.
# Assumptions:
# Commands do not have spaces in them.
# TODO: Redo the text file format so that it's copy-pasteable between the text file and the wiki.
echo_if_has_spaces(){
# Display lines
# with a space
# or starting with http
pattern=\ \|^http
if [[ "$1" =~ $pattern ]]; then
\echo -e "$1"
fi
}
checker() {
found="false"
# Scan a text file
while \read line; do
# Look for given search string
if [[ $1 == $line ]]; then
found="true"
fi
if [[ $found == "true" ]]; then
# Stop at the first blank line.
if [[ "$line" == "" ]]; then
break
fi
# Print lines which have a string with spaces
echo_if_has_spaces "$line"
fi
# (Scan a text file)
done < <( \cat helpme.txt )
if [[ $found == "false" ]]; then
\echo sorry, not found
fi
}
checker first
#checker example
#checker second
#checker failure
helpme.txt
first example This is an example description. It is one paragraph. \\nSlash sequences are allowed (see man echo), but must be double-escaped. \ \\\\\\ backslash \ \\\\a alert (BEL) \ \\\\b backspace \ \\\\c produce no further output \ \\\\e escape \ \\\\f form feed \ \\\\n new line \ \\\\r carriage return \ \\\\t horizontal tab \ \\\\v vertical tab \ \\\\0NNN byte with octal value NNN (1 to 3 digits) \ \\\\xHH byte with hexadecimal value HH (1 to 2 digits) Spaces at the beginning of a line must begin with a \\ \\n http://example.com http://another.org second This is a second program.