#! /bin/bash

# Makro na speciální znaky

# Jeroným Klimeš

# Nejběžněji zadáváné znaky si můžete vložit do schránky, a pak vkládat do textu.
# Je třeba nainstalovat xsel a kdialog,
# doručoval bych i sackless tools, popř. kwrite.
# Nic složitého, ale nemusíte to sami programovat...

# for i in {945..969};do echo -n -e "$(printf '\\'"u%x" $i) "; done # α β γ... # for i in {913..937};do echo -n -e "$(printf '\\'"u%x" $i) "; done # Α Β Γ Δ Ε Ζ Η Θ Ι Κ Λ Μ Ν Ξ Ο Π Ρ ΢ Σ Τ Υ Φ Χ Ψ Ω # ‱ https://cs.wikipedia.org/wiki/Bazick%C3%BD_bod - asi nevyuziju # apples @ $4 španělská zkratka (“each priced at”) # manzanas $4 ℆ španělská zkratka (cada uno or cada una - “each one”) debug=true debug=false echo "Vyberte si specialni znak" echo "-------------------------" echo "PhDr. Mgr. Jeroným Klimeš, Ph.D." echo znaky=( ♀ ♂ ℃ ℉ ‰ † ‡ ± ♭ ♮ ♯ ℝ ℕ ℂ ∋ α β γ δ ε ζ η θ ι κ λ μ ν ξ ο π ρ ς σ τ υ φ χ ψ ω Α Β Γ Δ Ε Ζ Η Θ Ι Κ Λ Μ Ν Ξ Ο Π Ρ Σ Τ Υ Φ Χ Ψ Ω ) # toto je array a musí si vzájemně odpovídat s následujícím. znaky_nazvy=( zena muz celsius fahrenheit promile kriz dvojity_kriz plusminus becko odrazka krizek realna prirozena komplexni prvek alfa beta gama delta epsilon zeta eta theta jota kappa lambda mi ni xi omikron pi ro sigma sigma tau ypsilon fi chi psy omega Alfa Beta Gama Delta Epsilon Zeta Eta Theta Jota Kappa Lambda Mi Ni Xi Omikron Pi Ro Sigma Tau Ypsilon Fi Chi Psy Omega ) pocet_znaku=${#znaky[@]} posledni_znak=$(($pocet_znaku-1)) znaky_cisla=( $(seq 1 $pocet_znaku) ) if $debug; then for i in $(seq 0 $posledni_znak); do echo $i ${znaky[$i]} ${znaky_nazvy[$i]} ${znaky_cisla[$i]} done echo # exit fi function Fkdialog () { polozky_pro_kdialog=$(for i in $(seq 0 $posledni_znak); do echo -n " ${znaky_cisla[$i]} '${znaky[$i]} (${znaky_nazvy[$i]})' " ; done) $debug&&(echo "polozky_pro_kdialog($polozky_pro_kdialog)"; echo; exit;) znak=$(eval kdialog --menu "Vyberte specialní znak" $polozky_pro_kdialog) # eval tam musi byt) # echo "znak($znak) - ${znaky[ $((znak-1)) ]}" echo -n ${znaky[ $((znak-1)) ]} | xsel -i -b echo "V clipboardu je znak ${znaky[ $((znak-1)) ]} (${znaky_nazvy[ $((znak-1)) ]}; č. $znak) " exit } Fkdialog function Fselect () { ### tez funkcni ### select znak in ${znaky[@]}; do echo -n $znak | xsel -i -b echo V clipboardu je znak $znak ${znaky_nazvy[ $((REPLY-1))]} break done exit } Fselect