To learn about the Shavian Alphabet, check out Shavian.info.
I've written a C program, a Python program, a dictionary used by both, a British supplement, and a Firefox extension that transport you into a bizarro alternate universe where everyone already uses Shavian.
To run shaw.py on my web server:
To run it on your web server, you'll need this CGI script.
To install it on your Linux computer:
sudo bash apt install wget xz python3 pip3 install nltk python3 >>> import nltk >>> nltk.download('averaged_perceptron_tagger') >>> exit() cd /usr/local/share wget dechifro.org/shavian/extension.zip unzip extension.zip cd shavian mv linux.json /usr/lib/mozilla/native-messaging-hosts/shavian.jsonTo install it on your Windows computer:
Install the latest version of Python. Choose "Customize installation" and check the boxes "Install for all users" and "Add Python to environment variables". At the Command prompt, do "pip install nltk". In Python, do "import nltk" and "nltk.download('averaged_perceptron_tagger')" Create a system environment variable PYTHONIOENCODING with the value "utf-8". Download http://dechifro.org/shavian/extension.zip and extract it to C:\ Run "regedit" and add two keys: HKEY_CURRENT_USER\Software\Mozilla\NativeMessagingHosts\shavian HKEY_LOCAL_MACHINE\Software\Mozilla\NativeMessagingHosts\shavian both equal to c:\shavian\windows.jsonIn Firefox, go to about:debugging, click "This Firefox", then "Load Temporary Add-on", and choose the file /usr/local/share/shavian/manifest.json or C:\shavian\manifest.json. Every website displays normally for a second, then switches to Shavian. This continues until you either quit Firefox or right-click the "๐๐ท" button and choose "Remove Extension".
For British spellings, add " brit.dict" after "dave.dict" in glue.py. You can also append your own dictionary to this line, with changes taking effect as soon as you load or re-load a web page.
If some text appears in a low-quality bitmap font, it's because you don't have a Serif font for Shavian. Either go get one, or go to Preferences/Fonts/Advanced and set your Serif font to "Noto Sans Shavian".
Then add a function to the .bashrc file:
shave() { wget -N dechifro.org/shavian/{shaw.py,dave.dict.xz} [ dave.dict.xz -nt dave.dict ] && xz -dkf dave.dict.xz wget -k -U Mozilla/5.0 -O normal.html $1 echo Converting to Shavian... python3 shaw.py dave.dict < normal.html \ > /storage/emulated/0/Download/shavian.html echo All done! }Copy a link, open Termux, type "shave ", paste the link, press Enter, wait for it to finish, then go to File Manager and open Download/shavian.html.
pdftohtml -stdout file.pdf | sed 's/ / /g' | sed 's@<br/>@ @g' | grep -v '<hr/>' | awk '{ print "<p/>"$0 }' > normal.html python3 shaw.py dave.dict < normal.html > shavian.html
mytool -convert my -write ~/.yudit/data/Shavian.my -mys Shavian.mys -rmys Shavian.mysIf you don't like my Latin-to-Shavian mapping, you can very easily change it.
๐ ๐ฟ๐ฏ๐จ๐ฏ๐ฆ๐ฅ๐ฉ๐ ๐๐ง๐๐ค๐ผ๐ฑ๐๐ฉ๐ฏ ๐ ๐ ๐๐ป๐๐ฐ๐ฏ ๐ฟ๐ฏ๐ฒ๐๐ฉ๐ ๐๐๐ฑ๐๐ ๐ ยท๐ฉ๐ฅ๐ง๐ฎ๐ฆ๐๐ฉ, ๐ข๐ง๐ฏ ๐ฆ๐ฏ ๐ ๐๐น๐ ๐ ๐ฃ๐ฟ๐ฅ๐ฉ๐ฏ ๐ฆ๐๐ง๐ฏ๐๐, ๐ฆ๐ ๐๐ฆ๐๐ณ๐ฅ๐ ๐ฏ๐ง๐๐ฉ๐๐บ๐ฆ ๐ ๐ข๐ณ๐ฏ ๐๐ฐ๐๐ฉ๐ค ๐ ๐๐ฆ๐๐ช๐ค๐ ๐ ๐๐ฉ๐ค๐ฆ๐๐ฆ๐๐ฉ๐ค ๐๐จ๐ฏ๐๐ ๐ข๐ฆ๐ ๐ฃ๐จ๐ ๐๐ฉ๐ฏ๐ง๐๐๐ฉ๐ ๐๐ง๐ฅ ๐ข๐ฆ๐ ๐ฉ๐ฏ๐ณ๐๐ผ, ๐ฏ ๐ ๐ฉ๐๐ฟ๐ฅ ๐ฉ๐ฅ๐ณ๐ ๐ ๐๐ฌ๐ผ๐ ๐ ๐ ๐ป๐, ๐ ๐๐ง๐๐ผ๐ฉ๐ ๐ฏ ๐ฐ๐๐ข๐ฉ๐ค ๐๐๐ฑ๐๐ฉ๐ฏ ๐ ๐ข๐ฆ๐ ๐ ๐ค๐ท๐ ๐ ๐ฏ๐ฑ๐๐ผ ๐ฏ ๐ ๐ฏ๐ฑ๐๐ผ'๐ ๐๐ช๐ ๐ฆ๐ฏ๐๐ฒ๐๐ฉ๐ค ๐๐ง๐ฅ, ๐ฉ ๐๐ฐ๐๐ฉ๐ฏ๐ ๐ฎ๐ฆ๐๐๐ง๐๐ ๐ ๐ ๐ฉ๐๐ฆ๐ฏ๐๐ฉ๐ฏ๐ ๐ ๐ฅ๐จ๐ฏ๐๐ฒ๐ฏ๐ ๐ฎ๐ฆ๐๐ข๐ฒ๐ผ๐ ๐๐จ๐ ๐๐ฑ ๐๐ซ๐ ๐๐ฆ๐๐ค๐บ ๐ ๐๐ท๐๐ฉ๐ ๐ข๐ฆ๐ ๐ฆ๐ฅ๐๐ง๐ค ๐๐ง๐ฅ ๐ ๐ ๐๐ง๐๐ผ๐ฑ๐๐ฉ๐ฏ.
๐ข๐ฐ ๐ฃ๐ด๐ค๐ ๐๐ฐ๐ ๐๐ฎ๐ต๐๐ ๐ ๐๐ฐ ๐๐ง๐ค๐-๐ง๐๐ฆ๐๐ฉ๐ฏ๐, ๐๐จ๐ ๐ท๐ค ๐ฅ๐ง๐ฏ ๐ธ ๐๐ฎ๐ฆ๐ฑ๐๐ฉ๐ ๐ฐ๐๐ข๐ฉ๐ค, ๐๐จ๐ ๐๐ฑ ๐ธ ๐ฆ๐ฏ๐๐ฌ๐ ๐๐ฒ ๐๐บ ๐๐ฎ๐ฆ๐ฑ๐๐ผ ๐ข๐ฆ๐ ๐๐ป๐๐ฉ๐ฏ ๐ณ๐ฏ๐ฑ๐ค๐พ๐ฏ๐ฉ๐๐ฉ๐ค ๐ฎ๐ฒ๐๐, ๐๐จ๐ ๐ฉ๐ฅ๐ณ๐ ๐๐ฐ๐ ๐ธ ๐ค๐ฒ๐, ๐ค๐ฆ๐๐ผ๐๐ฆ ๐ฏ ๐ ๐๐ผ๐๐ฟ๐ ๐ ๐ฃ๐จ๐๐ฆ๐ฏ๐ฉ๐.--๐๐จ๐ ๐ ๐๐ฆ๐๐๐ซ๐ผ ๐๐ฐ๐ ๐ฎ๐ฒ๐๐, ๐๐ณ๐๐ผ๐ฏ๐ฅ๐ฉ๐ฏ๐๐ ๐ธ ๐ฆ๐ฏ๐๐๐ฆ๐๐ฟ๐๐ฉ๐ ๐ฉ๐ฅ๐ณ๐ ๐ฅ๐ง๐ฏ, ๐๐ฆ๐ฎ๐ฒ๐๐ฆ๐ ๐๐บ ๐ก๐ณ๐๐ ๐๐ฌ๐ผ๐ ๐๐ฎ๐ช๐ฅ ๐ ๐๐ฉ๐ฏ๐๐ง๐ฏ๐ ๐ ๐ ๐๐ณ๐๐ผ๐ฏ๐, --๐๐จ๐ ๐ข๐ง๐ฏ๐ง๐๐ผ ๐ง๐ฏ๐ฆ ๐๐น๐ฅ ๐ ๐๐ณ๐๐ผ๐ฏ๐ฅ๐ฉ๐ฏ๐ ๐๐ฆ๐๐ณ๐ฅ๐ ๐๐ฆ๐๐๐ฎ๐ณ๐๐๐ฆ๐ ๐ ๐๐ฐ๐ ๐ง๐ฏ๐๐, ๐ฆ๐ ๐ฆ๐ ๐ ๐ฎ๐ฒ๐ ๐ ๐ ๐๐ฐ๐๐ฉ๐ค ๐ ๐ท๐ค๐๐ผ ๐น ๐ ๐ฉ๐๐ช๐ค๐ฆ๐ ๐ฆ๐, ๐ฏ ๐ ๐ฆ๐ฏ๐๐๐ฆ๐๐ฟ๐ ๐ฏ๐ฟ ๐๐ณ๐๐ผ๐ฏ๐ฅ๐ฉ๐ฏ๐, ๐ค๐ฑ๐ฆ๐ ๐ฆ๐๐ ๐๐ฌ๐ฏ๐๐ฑ๐๐ฉ๐ฏ ๐ช๐ฏ ๐๐ณ๐ ๐๐ฎ๐ฆ๐ฏ๐๐ฉ๐๐ฉ๐ค๐ ๐ฏ ๐น๐๐ฉ๐ฏ๐ฒ๐๐ฆ๐ ๐ฆ๐๐ ๐๐ฌ๐ผ๐ ๐ฆ๐ฏ ๐๐ณ๐ ๐๐น๐ฅ, ๐จ๐ ๐ ๐๐ง๐ฅ ๐๐จ๐ค ๐๐ฐ๐ฅ ๐ฅ๐ด๐๐ ๐ค๐ฒ๐๐ค๐ฆ ๐ ๐ฆ๐๐ง๐๐ ๐๐บ ๐๐ฑ๐๐๐ฆ ๐ฏ ๐ฃ๐จ๐๐ฆ๐ฏ๐ฉ๐. ๐๐ฎ๐ต๐๐ฉ๐ฏ๐, ๐ฆ๐ฏ๐๐ฐ๐, ๐ข๐ฆ๐ค ๐๐ฆ๐๐๐ฑ๐ ๐๐จ๐ ๐๐ณ๐๐ผ๐ฏ๐ฅ๐ฉ๐ฏ๐๐ ๐ค๐ช๐ ๐ฆ๐๐๐จ๐๐ค๐ฆ๐๐ ๐๐ซ๐ ๐ฏ๐ช๐ ๐๐ฐ ๐๐ฑ๐ฏ๐ก๐ ๐ ๐ค๐ฒ๐ ๐ฏ ๐๐ฎ๐จ๐ฏ๐๐พ๐ฏ๐ ๐๐ท๐๐ฉ๐; ๐ฏ ๐ฉ๐๐น๐๐ฆ๐๐ค๐ฆ ๐ท๐ค ๐ฆ๐๐๐๐ฝ๐พ๐ฏ๐ ๐ฃ๐จ๐ ๐๐ด๐ฏ, ๐๐จ๐ ๐ฅ๐จ๐ฏ๐๐ฒ๐ฏ๐ ๐ธ ๐ฅ๐น ๐๐ฆ๐๐๐ด๐๐ ๐ ๐๐ณ๐๐ผ, ๐ข๐ฒ๐ค ๐ฐ๐๐ฉ๐ค๐ ๐ธ ๐๐ณ๐๐ผ๐ฉ๐๐ฉ๐ค, ๐๐จ๐ฏ ๐ ๐ฎ๐ฒ๐ ๐๐ง๐ฅ๐๐ง๐ค๐๐ ๐๐ฒ ๐ฉ๐๐ช๐ค๐ฆ๐๐ฆ๐ ๐ ๐๐น๐ฅ๐ ๐ ๐ข๐ฆ๐ ๐๐ฑ ๐ธ ๐ฉ๐๐ณ๐๐๐ฉ๐ฅ๐. ๐๐ณ๐ ๐ข๐ง๐ฏ ๐ฉ ๐ค๐ช๐ ๐๐ฎ๐ฑ๐ฏ ๐ ๐ฉ๐๐ฟ๐๐ฉ๐ ๐ฏ ๐ฟ๐๐ป๐๐ฑ๐๐ฉ๐ฏ๐, ๐๐ผ๐๐ฟ๐ฆ๐ ๐ฆ๐ฏ๐๐บ๐พ๐๐ค๐ฆ ๐ ๐๐ฑ๐ฅ ๐ช๐๐ก๐ง๐๐ ๐ฆ๐๐ฆ๐ฏ๐๐ฉ๐ ๐ฉ ๐๐ฆ๐๐ฒ๐ฏ ๐ ๐ฎ๐ฆ๐๐ฟ๐ ๐๐ง๐ฅ ๐ณ๐ฏ๐๐ผ ๐จ๐๐๐ฉ๐ค๐ต๐ ๐๐ง๐๐๐ฉ๐๐ฆ๐๐ฉ๐ฅ, ๐ฆ๐ ๐ฆ๐ ๐๐บ ๐ฎ๐ฒ๐, ๐ฆ๐ ๐ฆ๐ ๐๐บ ๐๐ฟ๐๐ฆ, ๐ ๐๐ฎ๐ด ๐ช๐ ๐๐ณ๐ ๐๐ณ๐๐ผ๐ฏ๐ฅ๐ฉ๐ฏ๐, ๐ฏ ๐ ๐๐ฎ๐ฉ๐๐ฒ๐ ๐ฏ๐ฟ ๐๐ธ๐๐ ๐ ๐๐บ ๐๐ฟ๐๐ผ ๐๐ฆ๐๐๐ซ๐ผ๐ฆ๐๐ฆ.--๐๐ณ๐ ๐ฃ๐จ๐ ๐๐ฐ๐ฏ ๐ ๐๐ฑ๐๐ฉ๐ฏ๐ ๐๐ณ๐๐ผ๐ฉ๐ฏ๐ ๐ ๐๐ฐ๐ ๐๐ช๐ค๐ฉ๐ฏ๐ฆ๐; ๐ฏ ๐๐ณ๐ ๐ฆ๐ ๐ฏ๐ฌ ๐ ๐ฏ๐ฆ๐๐ง๐๐ฆ๐๐ฆ ๐ข๐ฆ๐ ๐๐ฉ๐ฏ๐๐๐ฎ๐ฑ๐ฏ๐ ๐๐ง๐ฅ ๐ ๐ท๐ค๐๐ผ ๐๐บ ๐๐น๐ฅ๐ผ ๐๐ฆ๐๐๐ฉ๐ฅ๐ ๐ ๐๐ณ๐๐ผ๐ฏ๐ฅ๐ฉ๐ฏ๐. ๐ ๐ฃ๐ฆ๐๐๐ผ๐ฆ ๐ ๐ ๐๐ฎ๐ง๐๐ฉ๐ฏ๐ ๐๐ฆ๐ ๐ ๐๐ฎ๐ฑ๐ ยท๐๐ฎ๐ฆ๐๐ฉ๐ฏ ๐ฆ๐ ๐ฉ ๐ฃ๐ฆ๐๐๐ผ๐ฆ ๐ ๐ฎ๐ฆ๐๐ฐ๐๐ฉ๐ ๐ฆ๐ฏ๐ก๐ผ๐ฆ๐ ๐ฏ ๐ฟ๐๐ป๐๐ฑ๐๐ฉ๐ฏ๐, ๐ท๐ค ๐ฃ๐จ๐๐ฆ๐ ๐ฆ๐ฏ ๐๐ฆ๐ฎ๐ง๐๐ ๐ช๐๐ก๐ง๐๐ ๐ ๐ฆ๐๐๐จ๐๐ค๐ฆ๐๐ฅ๐ฉ๐ฏ๐ ๐ ๐ฉ๐ฏ ๐จ๐๐๐ฉ๐ค๐ต๐ ๐๐ฆ๐ฎ๐ฉ๐ฏ๐ฆ ๐ด๐๐ผ ๐๐ฐ๐ ๐๐๐ฑ๐๐. ๐ ๐๐ฎ๐ต๐ ๐๐ฆ๐, ๐ค๐ง๐ ๐๐จ๐๐๐ ๐๐ฐ ๐๐ฉ๐๐ฅ๐ฆ๐๐ฉ๐ ๐ ๐ฉ ๐๐จ๐ฏ๐๐ฆ๐ ๐ข๐ป๐ค๐.