add dictionary and speller
This commit is contained in:
parent
66f81cf5eb
commit
04153c29be
@ -74,16 +74,10 @@ function cecho(){
|
|||||||
On_ICyan='\033[0;106m' # Cyan
|
On_ICyan='\033[0;106m' # Cyan
|
||||||
On_IWhite='\033[0;107m' # White
|
On_IWhite='\033[0;107m' # White
|
||||||
|
|
||||||
#RED="\033[0;31m"
|
|
||||||
#GREEN="\033[0;32m" # <-- [0 means not bold
|
|
||||||
#YELLOW="\033[1;33m" # <-- [1 means bold
|
|
||||||
#CYAN="\033[1;36m"
|
|
||||||
# ... Add more colors if you like
|
|
||||||
|
|
||||||
NC="\033[0m" # No Color
|
NC="\033[0m" # No Color
|
||||||
|
|
||||||
# printf "${(P)1}${2} ${NC}\n" # <-- zsh
|
# printf "${(P)1}${2} ${NC}\n" # <-- zsh
|
||||||
printf "${!1}${!2}${3} ${NC}\n" # <-- bash
|
printf "${!1}${!2}${3}${NC}\n" # <-- bash
|
||||||
}
|
}
|
||||||
|
|
||||||
if [ -z "$1" ]
|
if [ -z "$1" ]
|
||||||
|
24
scripts/dictionary
Executable file
24
scripts/dictionary
Executable file
@ -0,0 +1,24 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
mkdir -p "${HOME}"/.local/tmp
|
||||||
|
|
||||||
|
searchterm=$(zenity --entry --text "Enter word to define" --title "Dictionary" 2> /dev/null);
|
||||||
|
dict -h localhost -d gcide "${searchterm}" > "${HOME}"/.local/tmp/"${searchterm}".txt 2>&1
|
||||||
|
|
||||||
|
content=$(cat "${HOME}"/.local/tmp/"${searchterm}".txt);
|
||||||
|
|
||||||
|
if [[ "${content}" == *"No definitions found"* ]]; then
|
||||||
|
icon=""${HOME}"/.local/bin/img/caution-48.png"
|
||||||
|
else
|
||||||
|
icon=""${HOME}"/.local/bin/img/checkmark-32.png"
|
||||||
|
fi
|
||||||
|
|
||||||
|
zenity --text-info \
|
||||||
|
--window-icon="${icon}" \
|
||||||
|
--filename="${HOME}"/.local/tmp/"${searchterm}".txt \
|
||||||
|
--font="IBM Plex Mono Medium 11" \
|
||||||
|
--width=750 \
|
||||||
|
--height=600 2> /dev/null
|
||||||
|
|
||||||
|
sleep 0.5
|
||||||
|
rm -rf "${HOME}"/.local/tmp/"${searchterm}".txt
|
35
scripts/spchk
Executable file
35
scripts/spchk
Executable file
@ -0,0 +1,35 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
function parseResults() {
|
||||||
|
oIFS=$IFS
|
||||||
|
IFS=":"
|
||||||
|
declare -a fields=($1)
|
||||||
|
|
||||||
|
export QUERYTERM=$(echo "${fields[0]}"|awk '{print $1}');
|
||||||
|
export LISTCOUNT=$(echo "${fields[0]}"|awk '{print $2}');
|
||||||
|
export WORDLIST=$(echo "${fields[1]}"|sed 's/^\s*\|\s*$//g');
|
||||||
|
|
||||||
|
IFS=$oIFS
|
||||||
|
unset oIFS
|
||||||
|
}
|
||||||
|
|
||||||
|
if [ $# -eq 0 ]; then
|
||||||
|
>&2 echo "Please provide a word for spell checking. Include quotes."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ "$1" =~ ^[0-9]+$ ]]; then
|
||||||
|
cecho IWhite On_IRed "ERROR. Only Words Please. No Numbers!"
|
||||||
|
exit 1;
|
||||||
|
fi
|
||||||
|
|
||||||
|
export RESULT=$(echo "$@"|aspell -a|sed "1 d"); # Deletes the header line
|
||||||
|
export FIXED="${RESULT/& }" # Removes ampersand causing parsing errors.
|
||||||
|
|
||||||
|
if [[ "${FIXED}" == *"*"* ]]; then
|
||||||
|
cecho IBlack On_IGreen "CORRECT!"
|
||||||
|
else
|
||||||
|
parseResults "${FIXED}"
|
||||||
|
cecho IBlack On_IRed "INCORRECT!"
|
||||||
|
cecho Black On_Yellow "There are ${LISTCOUNT} suggested corrections for '${QUERYTERM}': ${WORDLIST}. "
|
||||||
|
fi
|
47
scripts/speller
Executable file
47
scripts/speller
Executable file
@ -0,0 +1,47 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
function parseResults() {
|
||||||
|
oIFS=$IFS
|
||||||
|
IFS=":"
|
||||||
|
declare -a fields=($1)
|
||||||
|
|
||||||
|
export QUERYTERM=$(echo "${fields[0]}"|awk '{print $1}');
|
||||||
|
export LISTCOUNT=$(echo "${fields[0]}"|awk '{print $2}');
|
||||||
|
export WORDLIST=$(echo "${fields[1]}"|sed 's/^\s*\|\s*$//g');
|
||||||
|
|
||||||
|
IFS=$oIFS
|
||||||
|
unset oIFS
|
||||||
|
}
|
||||||
|
|
||||||
|
searchterm=$(zenity --entry --text="Enter search term:" --title="Speller" --width=300 --height=40 2> /dev/null);
|
||||||
|
|
||||||
|
if [ -z "${searchterm}" ] | [ "${searchterm}" == " " ]; then
|
||||||
|
zenity --info --text="<b>ERROR</b> No search term provided!"\
|
||||||
|
--icon-name=error \
|
||||||
|
--window-icon="${HOME}/.local/bin/img/xmark.png" 2> /dev/null
|
||||||
|
exit 1;
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ "${searchterm}" =~ ^[0-9]+$ ]]; then
|
||||||
|
zenity --info --text="<b>ERROR</b> only words, please!"\
|
||||||
|
--icon-name=error \
|
||||||
|
--window-icon="${HOME}/.local/bin/img/xmark.png" 2> /dev/null
|
||||||
|
exit 1;
|
||||||
|
fi
|
||||||
|
|
||||||
|
export RESULT=$(echo "$searchterm"|aspell -a|sed "1 d"); # Deletes the header line
|
||||||
|
export FIXED="${RESULT/& }" # Removes ampersand causing parsing errors.
|
||||||
|
|
||||||
|
if [[ "${FIXED}" == *"*"* ]]; then
|
||||||
|
zenity --info --text="<b>CORRECT!</b> " \
|
||||||
|
--icon-name=info \
|
||||||
|
--window-icon="${HOME}/.local/bin/img/check-mark-11-16.png" 2> /dev/null
|
||||||
|
|
||||||
|
else
|
||||||
|
parseResults "${FIXED}"
|
||||||
|
message="<b>There are ${LISTCOUNT} suggested corrections for '${QUERYTERM}':</b> ${WORDLIST}"
|
||||||
|
zenity --info --text="${message}"\
|
||||||
|
--icon-name=warning \
|
||||||
|
--window-icon="${HOME}/.local/bin/img/caution-48.png" 2> /dev/null
|
||||||
|
|
||||||
|
fi
|
Loading…
Reference in New Issue
Block a user