Move RST files to separate directory. Build HTML files out of sources
authorOleksandr Gavenko <gavenkoa@gmail.com>
Sun, 13 Mar 2016 18:20:35 +0200
changeset 339 4d8d46bbe30d
parent 338 61a9d2de0e3e
child 340 d57bcb08e80c
Move RST files to separate directory. Build HTML files out of sources directory. New template for HTML files. `dist` target is broken.
.hgignore
AUTHORS.rst
CHANGES.rst
HACKING.rst
INSTALL.rst
IPA.rst
LICENSE.rst
MISC.rst
Makefile
README.rst
en-phrase-examples_ru.rst
en-pronunciation_en.rst
en-pronunciation_ru.rst
en-punctuation_en.rst
header.rst
rst.css
www/AUTHORS.rst
www/CHANGES.rst
www/HACKING.rst
www/INSTALL.rst
www/IPA.rst
www/LICENSE.rst
www/MISC.rst
www/README.rst
www/en-phrase-examples_ru.rst
www/en-pronunciation_en.rst
www/en-pronunciation_ru.rst
www/en-punctuation_en.rst
www/tmpl/rst.css
www/tmpl/rst.tmpl.in
--- a/.hgignore	Sun Mar 13 16:46:19 2016 +0200
+++ b/.hgignore	Sun Mar 13 18:20:35 2016 +0200
@@ -1,8 +1,7 @@
 syntax: glob
 
-VERSION*
-STAT.rst
-index.rst
+dist/
+
 *.dict
 *.dict.dz
 *.index
--- a/AUTHORS.rst	Sun Mar 13 16:46:19 2016 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-.. -*- coding: utf-8 -*-
-.. include:: header.rst
-
-===============
- AUTHORS list.
-===============
-.. contents::
-   :local:
-
-Document version.
-=================
-
-.. include:: VERSION.rst
-
-Original authors.
-=================
-
- * Oleksandr Gavenko <gavenkoa@gmail.com>
-
--- a/CHANGES.rst	Sun Mar 13 16:46:19 2016 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,61 +0,0 @@
-.. -*- coding: utf-8 -*-
-.. include:: header.rst
-
-=====================
- CHANGES for gadict.
-=====================
-.. contents::
-   :local:
-
-Document version.
-=================
-
-.. include:: VERSION.rst
-
-v0.7, 2016-03-13
-================
-
- * New home page. SF is used as mirror.
-
-v0.6, 2015-10-13.
-=================
-
- * VOA dictionary in print form.
- * Miscellaneous supplementary info.
-
-v0.5, 2012-07-13.
-=================
-
- * VOA "Special English Word Book" thesaurus was added.
- * GoldenDict installation instruction was added.
- * Documentation was hardly improved for end users.
- * Fixed links.
- * Removed outdated data.
- * Added a lot on exceptions for English spelling rules.
-
-v0.4, 2012-07-10.
-=================
-
- * English spelling rules guide was imported from gavenkoa personal
-   ``tips`` project. This guide is main source for word transcription.
- * Improved home page appearance.
- * Fixed for ``dist``-like targets was fixed build dependencies.
-
-v0.3, 2012-01-15.
-=================
-
- * Fix misc issue in deploy targets.
-
-v0.2, 2012-01-15.
-=================
-
- * Add target to check of release sanity.
- * Include article count statistics in release docs.
- * Fix source release target (dictionary files are missing).
-
-v0.1, 2012-01-12.
-=================
-
- * First public release.
- * Summary nearly 800 words in all dictionaries.
-
--- a/HACKING.rst	Sun Mar 13 16:46:19 2016 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,182 +0,0 @@
-.. -*- coding: utf-8 -*-
-.. include:: header.rst
-
-=======================
- gadict HACKING guide.
-=======================
-.. contents::
-   :local:
-
-
-Document version.
-=================
-
-.. include:: VERSION.rst
-
-Versioning rules.
-=================
-
-We use **major.minor** schema.
-
-Until we reach 5000 words **major** is 0. **minor** updated from time to time.
-
-Getting sources (VCS).
-======================
-
-Cloning repository::
-
-  $ hg clone http://hg.defun.work/gadict gadict
-  $ hg clone http://hg.code.sf.net/p/gadict/code gadict-hg
-
-Pushing changes::
-
-  $ hg push ssh://$USER@hg.defun.work/gadict
-  $ hg push ssh://$USER@hg.code.sf.net/p/gadict/code
-  $ hg push https://$USER:$PASS@hg.code.sf.net/p/gadict/code
-
-Browsing sources.
-=================
-
-  http://hg.defun.work/gadict
-    hgweb at home page.
-  http://hg.code.sf.net/p/gadict/code
-    hgweb at old home page (but supported as mirror).
-  https://sourceforge.net/p/gadict/code/
-    Sourceforge Allure interface (not primary, a mirror).
-
-Dictionary source file format.
-==============================
-
-For source file format used dictd C5 file format. See::
-
-  $ man 1 dictfmt
-
-Shortly:
-
- * Headwords was preceded by 5 or more underscore characters ``_`` and a blank
-   line.
- * All text until the next headword is considered the definition.
- * Any leading ``@`` characters are stripped out, but the file is otherwise
-   unchanged.
-
-For convenience also used such assumptions:
-
- * Headwords was separated by ``;<SPACE>`` (and all was placed on single line).
- * UTF-8 encoding was used.
- * Lines started with ``#`` striped out (comment syntax).
- * First line with ``ABOUT:`` used as description of dictionary.
- * First URL (line with ``http://``) used as dictionary home page.
-
-Comment syntax convention.
-==========================
-
-As 'dictd -c5' format does not support comment syntax we filter out all
-lines that start with '#'.
-
-TODO convention.
-================
-
-Entries or parts of text that was not completed marked by keywords:
-
-  TODO
-                incomplete
-  XXX
-                urgent incomplete
-
-Makefile rules ``todo`` find this occurrence in sources::
-
-  $ make todo
-
-Dictionary file name convention.
-================================
-
-BNF form::
-
-  FILE ::= PREFIX "-" NAME "-" LANG ".dict-c5"
-  PREFIX ::= "gadict"
-  LANG ::= ISOCODE | ISOCODE "-" ISOCODE
-
-where ``ISOCODE`` is ISO 639-1 language (2 letter) code, currently ``en``,
-``ru``, ``uk`` in use, ``NAME`` is dictionary abbreviated name.
-
-World wide dictionary formats and standards.
-============================================
-
-  http://en.wikipedia.org/wiki/Dictionary_writing_system
-                Dictionary writing system
-  http://www.sil.org/computing/shoebox/mdf.html
-                Multi-Dictionary Formatter (MDF). It defines about 100 data
-                field markers.
-  http://fieldworks.sil.org/flex/
-                FieldWorks Language Explorer (or FLEx, for short) is designed
-                to help field linguists perform many common language
-                documentation and analysis tasks.
-  http://code.google.com/p/lift-standard/
-                LIFT (Lexicon Interchange FormaT) is an XML format for storing
-                lexical information, as used in the creation of dictionaries.
-                It's not necessarily the format for your lexicon.
-  http://www.lexiquepro.com/
-                Lexique Pro is an interactive lexicon viewer and editor, with
-                hyperlinks between entries, category views, dictionary
-                reversal, search, and export tools. It's designed to display
-                your data in a user-friendly format so you can distribute it
-                to others.
-  http://deb.fi.muni.cz/index.php
-                DEBII — Dictionary Editor and Browser
-
-Register gadict dictionaries for dictd under Debian.
-====================================================
-::
-
-  $ su
-  $ cat >>etc/dictd/dictd.order <<EOF
-  gadict-dictabbr
-  /home/user/usr/share/dictd/
-  $ dictdconfig --write
-  $ /etc/init.d/dictd restart
-  $ ^D
-  $ dictdconfig --list
-  $ dict -d gadict-dictabbr v
-
-Typing IPA chars in Emacs.
-==========================
-
-For entering IPA chars use IPA input method. To enable it type::
-
-  C-u C-\ ipa <enter>
-
-All chars from alphabet typed as usual. To type special IPA chars use next key
-bindings (or read help in Emacs by ``M-x describe-input-method`` or ``C-h I``).
-
-For vowel::
-
-  æ  ae
-  ɑ  o| or A
-  ɒ  |o  or /A
-  ʊ  U
-  ɛ  /3 or E
-  ɔ  /c
-  ə  /e
-  ʌ  /v
-  ɪ  I
-
-For consonant::
-
-  θ  th
-  ð  dh
-  ʃ  sh
-  ʧ  tsh
-  ʒ  zh or 3
-  ŋ  ng
-  ɡ  g
-  ɹ  /r
-
-Special chars::
-
-  ː  : (semicolon)
-  ˈ  ' (quote)
-  ˌ  ` (back quote)
-
-Alternatively use ``ipa-x-sampa`` or ``ipa-kirshenbaum`` input method (for help
-type: ``C-h I ipa-x-sampa RET`` or ``C-h I ipa-kirshenbaum RET``).
-
--- a/INSTALL.rst	Sun Mar 13 16:46:19 2016 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,69 +0,0 @@
-.. -*- coding: utf-8 -*-
-.. include:: header.rst
-
-=================================
- Installing gadict dictionaries.
-=================================
-.. contents::
-   :local:
-
-Document version.
-=================
-
-.. include:: VERSION.rst
-
-Obtaining.
-==========
-
-For distribution tarbol use (for regular users)::
-
-  gadict-$major.$minor.tar.bz2
-
-For source tarboll use::
-
-  gadict-$major.$minor_src.tar.gz
-
-``$major`` and ``$minor`` represent version components.
-
-To get these files use appropriate links:
-
- * https://sourceforge.net/projects/gadict/files/v$major.$minor/gadict-$major.$minor_src.tar.gz
- * https://sourceforge.net/projects/gadict/files/v$major.$minor/gadict-$major.$minor.tar.gz
-
-Manual installation instruction for GoldenDict.
-===============================================
-
-Get distribution tarboll and extract all files to any directory. Select::
-
- Edit ==> Dictionaries...
-
-in GoldenDict menu (or just press ``F3``) and add directory to where you
-extracted files. Press ``Refresh`` button. That's all.
-
-**Note** only ``*.dict.dz`` and ``*.index`` files are required for GoldenDict.
-You can safely remove other fils.
-
-How to build and install from supplied Makefile.
-================================================
-
-To build and install in /usr/local/ run as root::
-
-  $ make install
-
-If you run as regular user ``prefix`` set to::
-
-  $HOME/usr
-
-To build and install in different place run::
-
-  $ make install prefix=PREFIX
-
-How to uninstall from supplied Makefile.
-========================================
-
-To uninstall run one command from list accordingly to installation procedure::
-
-  $ make uninstall
-  $ make uninstall prefix=PREFIX
-  $ make prefix=PREFIX uninstall uninstall-local-symlink
-
--- a/IPA.rst	Sun Mar 13 16:46:19 2016 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,228 +0,0 @@
-.. -*- coding: utf-8 -*-
-.. include:: header.rst
-
-================
- IPA in gadict.
-================
-.. contents::
-   :local:
-
-Document version.
-=================
-
-.. include:: VERSION.rst
-
-Pronunciation rules for English.
-================================
-
-In English written symbol represent different sounds::
-
-  rough [XXX]
-  through [XXX]
-  bough [XXX]
-  though [XXX]
-  cough [XXX]
-
-Many linguists argue that English require spelling reform.
-
-Pronunciation keys for EN gadict.
-=================================
-
-``gadict`` project try to follow OED 2ed (Oxford English Dictionary)
-pronunciation for dialect known as RP (Received Pronunciation) and uses IPA for
-representation of pronunciation like in Wikipedia project:
-
-  http://en.wikipedia.org/wiki/Help:IPA_for_English
-                Wikipedia IPA for English.
-  http://en.wikipedia.org/wiki/IPA_chart_for_English
-                This concise chart shows the most common applications of the
-                International Phonetic Alphabet (IPA) to represent English
-                language pronunciations.
-  http://en.wikipedia.org/wiki/Received_Pronunciation
-                Wiki about RP.
-  http://en.wikipedia.org/wiki/Oed
-                Oxford English Dictionary.
-
-Compare:
-
- * http://en.wikipedia.org/wiki/International_Phonetic_Alphabet_chart_for_English_dialects
- * http://en.wikipedia.org/wiki/Help:IPA_conventions_for_English
-
-Consonants.
------------
-
-[b]::
-
-  bed [XXX], bird [XXX], baby [XXX]
-
-[p]::
-
-  pen [XXX], people [XXX]
-
-[d]::
-
-  dead [XXX], dust [XXX]
-
-[t]::
-
-  tree [XXX]
-
-[ʧ]::
-
-  XXX
-
-[]::
-
-
-
-[f]::
-
-  flow [XXX], fine [XXX]
-
-[g]::
-
-  glove [XXX], give [XXX]
-
-[j]::
-
-  job [XXX]
-
-[k]::
-
-  cat [kæt]
-
-[l]::
-
-  lamp [læmp]
-
-[m]::
-
-  milk [mɪlk]
-
-[n]::
-
-  note [nəʊt]
-
-[r]::
-
-  road [rəʊd]
-
-[s]::
-
-  sofa [səʊfə]
-
-[ð]::
-
-  both [bəʊð]
-
-[θ]::
-
-  think [θɪnk]
-
-[ʒ]::
-
-  pleasure [pleʒə]
-
-[dʒ]::
-
-  bridge [brɪdʒ]
-
-Vowels.
--------
-
-[ʌ]::
-
-  son [sʌn], ɡun [ɡʌn]
-
-[ɑː]::
-
-  car [kɑː]
-
-[ɒ]::
-
-  lot [lɒt], hot [hɒt]
-
-[ɔː]::
-
-  fork [fɔːk], or [ɔː], fall [fɔːl]
-
-[ɔɪ]::
-
-  choice [ʧɔɪs], boy [bɔɪ]
-
-[əʊ]::
-
-  open [əʊpən], colon [kəʊlən]
-
-[ʊ]::
-
-  xxx
-
-[ɛ]::
-
-  pen [pɛn], text [tɛxt], pet [pɛt]
-
-[ɪ]::
-
-  pin [pɪn], milk [mɪlk]
-
-[iː]::
-
-  tree [triː], see [siː], me [miː], tea [tiː]
-
-[ɪə]::
-
-  ear [ɪə], dear [dɪə]
-
-[ɜr]::
-
-  girl [gɜrl], first [fɜrst], work [wɜrk]
-
-[æ]::
-
-  fat [fæt], happy [hæppɪ]
-
-[eə]::
-
-  where [weə], fair [feə]
-
-List of IPA chars for English transcription.
-============================================
-
-
-  θ ð ʃ ŋ ʧ ʒ ı ɡ ː ˌ ˈ ˑ ˏ ˊ ˋ
-  æ ɑ ɒ ʌ ʊ ɒ ɛ ə ɜ ɔ ɪ є ɚ
-
-You can copy/paste they in phonetic string.
-
-TODO
-====
-::
-
-            Front       Central     Back
-         long  short long  short long  short
-  Close   iː    ɪ                 uː    ʊ
-  Mid           ɛ     ɜː    ə     ɔː
-  Open          æ           ʌ     ɑː    ɒ
-
-      Diphthong          Triphthong
-  Closing    Centring
-   /eɪ/       /ɪə/        /aɪə/
-   /aɪ/       /eə/        /ɑʊə/
-   /ɔɪ/       /ʊə/
-   /əʊ/
-   /aʊ/
-
-Old vs. new transcription.
-==========================
-
-From "Better English pronunciation."::
-
-  Old  iː i e ɔː u uː ei ou ai au ɔi æ ɔ ʌ əː ɑː iə ɛə uə ə
-  New  iː ɪ e ɔː ʊ uː eɪ əʊ aɪ aʊ ɔɪ æ ɒ ʌ ɜː ɑː ɪə eə ʊə ə
-
-Also from Wikipedia::
-
-  Old  æ e əː ʌɪ ɑʊ ɛə
-  New  a ɛ ɜː aɪ aʊ eə
-
--- a/LICENSE.rst	Sun Mar 13 16:46:19 2016 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,20 +0,0 @@
-.. -*- coding: utf-8 -*-
-.. include:: header.rst
-
-=================
- gadict LICENSE.
-=================
-.. contents::
-   :local:
-
-Document version.
-=================
-
-.. include:: VERSION.rst
-
-License statement.
-==================
-
-You can use any **gadict** dictionaries for any purpose without any
-restriction.
-
--- a/MISC.rst	Sun Mar 13 16:46:19 2016 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,28 +0,0 @@
-.. -*- coding: utf-8 -*-
-.. include:: header.rst
-
-===================================
- Miscellaneous supplementary info.
-===================================
-.. contents::
-   :local:
-
-Document version.
-=================
-
-.. include:: VERSION.rst
-
-Well known free dictionaries.
-=============================
-
- * `VOA <voa-special.pdf>`_ - Voice of America Public Domain English dictionary.
-
-English.
-========
-
- * `IPA conventions <IPA.html>`_.
- * `English punctuation <en-punctuation_en.html>`_.
- * `English pronunciation <en-pronunciation_ru.html>`_.
- * `English pronunciation  training exercise <en-pronunciation_en.html>`_.
- * `English phrase examples <en-phrase-examples_ru.html>`_.
-
--- a/Makefile	Sun Mar 13 16:46:19 2016 +0200
+++ b/Makefile	Sun Mar 13 18:20:35 2016 +0200
@@ -44,17 +44,19 @@
 ################################################################
 # Version extracting/generation.
 
+VER_FILE := dist/misc/VERSION
+
 # Prevent making distribution with wrong version.
 ifneq '' '$(filter deploy% dist%,$(MAKECMDGOALS))'
   ifeq '' '$(MAKE_RESTARTS)'
-    $(info $(shell rm -f VERSION))
+    $(shell rm -f $(VER_FILE))
   endif
 endif
 
 # Here are vmajor and vminor. Look README section "Versioning rules."
--include VERSION
+-include $(VER_FILE)
 
-VERSION:
+$(VER_FILE): | $(dir $(VER_FILE))
 	\
 vtagdist=$$(hg log -r . --template '{latesttagdistance}'); \
 vatrelease=$$([ $$vtagdist -le 1 ] && echo yes || echo no); \
@@ -73,7 +75,7 @@
 echo "vatrelease=$$vatrelease"; \
 echo "vmajor=$$vmajor"; \
 echo "vminor=$$vminor"; \
-} >VERSION
+} >$@
 
 ################################################################
 # Determine platform/environment.
@@ -105,7 +107,8 @@
 ifeq '$(host_os)' 'cygwin'
   RST2HTML := rst2html.py
 endif
-RST2HTML_FLAGS := $(RST_FLAGS)
+RST2HTML_RENDER_FLAGS := --strip-comments --embed-stylesheet --no-xml-declaration --math-output=HTML --initial-header-level=2
+RST2HTML_FLAGS := $(RST_FLAGS) $(RST2HTML_RENDER_FLAGS)
 
 LATEX2PDF := pdflatex
 
@@ -128,15 +131,27 @@
 pkgname = gadict
 fullpkgname = $(pkgname)-$(vmajor).$(vminor)
 
+GADICT_FILES := $(wildcard *.gadict)
+
 C5_FILES := $(wildcard *.dict-c5)
 DICT_FILES := $(C5_FILES:.dict-c5=.dict)
 DICTDZ_FILES := $(C5_FILES:.dict-c5=.dict.dz)
 INDEX_FILES := $(C5_FILES:.dict-c5=.index)
 
-RST_GEN_FILES := VERSION.rst STAT.rst index.rst
-RST_COMMON_FILES := VERSION.rst header.rst
-RST_FILES := $(filter-out $(RST_COMMON_FILES),$(sort $(wildcard *.rst) $(RST_GEN_FILES)))
-RST_HTML_FILES := $(RST_FILES:.rst=.html)
+RST_TMPL_FILE = dist/misc/rst.tmpl
+RST_CSS_FILE = www/tmpl/rst.css
+
+RST_GEN_FILES := STAT.rst
+RST_COMMON_FILES := header.rst
+RST_FILES := $(wildcard www/*.rst)
+RST_HTML_FILES := $(patsubst www/%.rst,dist/www/%.html,$(RST_FILES))
+
+INDEX_HTML_FILE := dist/www/index.html
+
+STAT_RST_FILE := dist/misc/STAT.rst
+STAT_HTML_FILE := dist/www/STAT.html
+
+HTML_FILES := $(RST_HTML_FILES) $(INDEX_HTML_FILE) $(STAT_HTML_FILE)
 
 LOGO_NAME := logo
 LOGO_SVG := $(LOGO_NAME).svg
@@ -146,20 +161,29 @@
 DIST_DIR = $(fullpkgname)
 DISTSRC_DIR = $(fullpkgname)_src
 
-DIST_FILES = $(DICTDZ_FILES) $(INDEX_FILES) $(RST_HTML_FILES) $(RST_FILES) VERSION
+DIST_FILES = $(DICTDZ_FILES) $(INDEX_FILES) $(RST_HTML_FILES) $(RST_FILES)
 
-DISTSRC_HELPER_FILES = VERSION Makefile rst.css .dir-locals.el
+DISTSRC_HELPER_FILES = Makefile rst.css .dir-locals.el
 DISTSRC_FILES = $(C5_FILES) $(RST_FILES) $(DISTSRC_HELPER_FILES)
 
 DIST_TARBALLS = $(DIST_DIR).tar.gz $(DIST_DIR).tar.bz2
 DISTSRC_TARBALLS = $(DISTSRC_DIR).tar.gz $(DISTSRC_DIR).tar.bz2
 
 ################################################################
-# Deploy targets.
+# Deploy/release targets.
 
 .PHONY: deploy
 deploy: deploy2defun deploy2sf
 
+.PHONY: release
+release: release2defun release2sf
+
+.PHONY: release2defun
+release2defun: validate-release deploy2defun
+
+.PHONY: release2sf
+release2defun: validate-release deploy2sf
+
 
 DEFUN_USER ?= user
 DEFUN_HG_SRV ?= hg.defun.work
@@ -175,12 +199,13 @@
 	hg push ssh://$(DEFUN_USER)@$(DEFUN_HG_SRV)/$(DEFUN_HG_DIR) || [ $$? = 1 ]
 
 .PHONY: deploy2defun-www
-deploy2defun-www: $(RST_HTML_FILES)
+deploy2defun-www: $(HTML_FILES)
 	( \
 echo 'cd $(DEFUN_WWW_DIR)'; \
-for f in $(RST_HTML_FILES); do \
-  echo "put $$f"; \
-  echo "chmod 644 $$f"; \
+for f in $(HTML_FILES); do \
+  n=$${f##*/}; \
+  echo "put $$f $$n"; \
+  echo "chmod 644 $$n"; \
 done; \
 echo 'quit'; \
 ) | sftp -b - $(DEFUN_USER)@$(DEFUN_WWW_SRV)
@@ -194,7 +219,7 @@
 # Next time any action fully automated.
 
 .PHONY: deploy2sf
-deploy2sf: deploy2sf-src deploy2sf-www deploy2sf-voa deploy2sf-release
+deploy2sf: deploy2sf-src deploy2sf-www deploy2sf-voa
 
 .PHONY: deploy2sf-src
 deploy2sf-src:
@@ -202,11 +227,12 @@
 
 # Will be accessed via http://$(pkgname).sourceforge.net
 .PHONY: deploy2sf-www
-deploy2sf-www: deploy-check $(RST_HTML_FILES)
+deploy2sf-www: $(HTML_FILES)
 	( echo 'cd htdocs'; \
-for f in $(RST_HTML_FILES); do \
-  echo "put $$f"; \
-  echo "chmod 644 $$f"; \
+for f in $(HTML_FILES); do \
+  n=$${f##*/}; \
+  echo "put $$f $$n"; \
+  echo "chmod 644 $$n"; \
 done; \
 echo 'quit'; \
 ) | sftp -b - $(SF_USER),$(pkgname)@web.sourceforge.net
@@ -219,8 +245,10 @@
 echo 'quit'; \
 ) | sftp -b - $(SF_USER),$(pkgname)@web.sourceforge.net
 
-.PHONY: deploy2sf-release
-deploy2sf-release: deploy-check $(DIST_TARBALLS) $(DISTSRC_TARBALLS)
+.PHONY: release2sf
+deploy2sf-release: validate-release $(DIST_TARBALLS) $(DISTSRC_TARBALLS)
+	exit 1
+	: TODO broken due to new project hierarchy
 	( echo 'cd /home/frs/project/$(shell v=$(pkgname); echo $${v:0:1}/$${v:0:2})/$(pkgname)'; \
 echo "put  README.rst"; \
 echo "chmod 644 README.rst"; \
@@ -233,8 +261,8 @@
 echo 'quit'; \
 ) | sftp -b - $(SF_USER),$(pkgname)@frs.sourceforge.net
 
-.PHONY: deploy-check
-deploy-check:
+.PHONY: validate-release
+validate-release:
 	\
 case ${visclean} in \
   no) echo "Local changes found. Build stop."; \
@@ -320,26 +348,50 @@
 .PHONY: html
 html: $(RST_HTML_FILES)
 
-$(RST_HTML_FILES): %.html: %.rst $(RST_COMMON_FILES) rst.css $(BUILD_SCRIPTS)
-	$(RST2HTML) $(RST2HTML_FLAGS) --stylesheet=rst.css $*.rst $@
+$(INDEX_HTML_FILE): dist/www/README.html
+	cp $< $@
+
+$(RST_HTML_FILES): dist/www/%.html: www/%.rst $(RST_CSS_FILE) $(RST_TMPL_FILE) $(BUILD_SCRIPTS) | dist/www
+	$(RST2HTML) $(RST2HTML_FLAGS) --stylesheet=$(RST_CSS_FILE) --template=$(RST_TMPL_FILE)  www/$*.rst  $@
+
+dist/www:
+	mkdir -p $@
 
-VERSION.rst: VERSION $(BUILD_SCRIPTS)
+$(RST_TMPL_FILE): www/tmpl/rst.tmpl.in $(BUILD_SCRIPTS) | $(dir $(RST_TMPL_FILE))
+	\
+[[ ${visclean} = no ]] && warn1='<b>Warning</b>: Build done with local changes!' || :; \
+[[ ${vatrelease} = no ]] && warn2='<b>Warning</b>: Build is far from latest <tt>$(vtag)</tt> release state by $(vtagdist) changes.' || :; \
+sed -e "s|{date}|$$(date +%F)|" -e "s|{rev}|$$(hg id -i)|" -e "s|{warn1}|$$warn1|" -e "s|{warn2}|$$warn2|" <$< >$@
+
+################################################################
+# Article statistics.
+
+.PHONY: stat
+stat: $(STAT_HTML_FILE)
+
+$(STAT_HTML_FILE): $(STAT_RST_FILE) $(RST_CSS_FILE) $(RST_TMPL_FILE) | dist/www
+	$(RST2HTML) $(RST2HTML_FLAGS) --stylesheet=$(RST_CSS_FILE) --template=$(RST_TMPL_FILE)  $<  $@
+
+$(STAT_RST_FILE): $(GADICT_FILES) $(BUILD_SCRIPTS)
 	{ \
-	echo '``$(pkgname)`` ``v$(vmajor).$(vminor)`` built on ``'$$(date +%F)'`` from revision ``$(vrev)``.'; \
-	echo; \
-	case ${visclean} in \
-		yes) : ;; \
-		no) echo 'WARNING!! Source tree has local changes!';; \
-	esac; \
-	echo; \
-	case ${vatrelease} in \
-		yes) : ;; \
-		no) echo 'Package is far from release state by $(vtagdist) changes.';; \
-	esac; \
-	} >$@
-
-index.rst: README.rst
-	cp $< $@
+echo '==========================='; \
+echo ' gadict project statistics'; \
+echo '==========================='; \
+echo '.. contents::'; \
+echo '   :local:'; \
+echo; \
+echo '======================================== ====='; \
+echo '             Dictionary                  Count'; \
+echo '======================================== ====='; \
+total=0; \
+for dic in $(GADICT_FILES); do \
+  cnt=`grep '^__' $$dic | wc -l`; \
+  printf '%40s %5s\n' $${dic%.dict-c5} $$cnt; \
+  total=$$(($$total + $$cnt)); \
+done; \
+printf '%40s %5s\n' '**Total**' $$total; \
+echo '======================================== ====='; \
+} >$@
 
 ################################################################
 # Misc targets.
@@ -387,42 +439,6 @@
 todo:
 	grep -nH 'TODO\|XXX' $(RST_FILES) $(C5_FILES)
 
-.PHONY: stat
-stat: STAT.rst
-
-STAT.rst: $(C5_FILES) header.rst VERSION.rst $(BUILD_SCRIPTS)
-	{ \
-echo '.. include:: header.rst'; \
-echo; \
-echo '============================'; \
-echo ' gadict project statistics.'; \
-echo '============================'; \
-echo '.. contents::'; \
-echo; \
-echo 'Document version.'; \
-echo '================='; \
-echo; \
-echo '.. include:: VERSION.rst'; \
-echo; \
-echo 'Statistics on count of articles in gadict dictionaries.'; \
-echo '======================================================='; \
-echo; \
-echo 'You must know that some words have articles (usually but not always same) in'; \
-echo 'several dictionaries. So real count of words is less then total count.'; \
-echo; \
-echo '======================================== ====='; \
-echo '             Dictionary                  Count'; \
-echo '======================================== ====='; \
-total=0; \
-for dic in $(C5_FILES); do \
-  cnt=`grep '^_____' $$dic | wc -l`; \
-  printf '%40s %5s\n' $${dic%.dict-c5} $$cnt; \
-  total=$$(($$total + $$cnt)); \
-done; \
-printf '%40s %5s\n' '**Total**' $$total; \
-echo '======================================== ====='; \
-} >$@
-
 .PHONY: logo-png
 logo-png: logo-64x64.png
 
@@ -436,12 +452,8 @@
 
 .PHONY: distclean
 distclean: clean
-	rm -f VERSION
 
 .PHONY: clean
 clean:
-	rm -f $(DICTDZ_FILES) $(INDEX_FILES) $(RST_GEN_FILES) $(RST_HTML_FILES) $(LOGO_PNG_FILES)
-	rm -rf $(DIST_DIR) $(DIST_TARBALLS)
-	rm -rf $(DISTSRC_DIR) $(DISTSRC_TARBALLS)
-	rm -f $(patsubst %, voa-special%, .pdf .log .out .aux)
+	rm -rf dist/
 
--- a/README.rst	Sun Mar 13 16:46:19 2016 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,116 +0,0 @@
-.. -*- coding: utf-8 -*-
-.. include:: header.rst
-
-======================
- gadict dictionaries.
-======================
-.. contents::
-   :local:
-
-Document version.
-=================
-
-.. include:: VERSION.rst
-
-About gadict.
-=============
-
-``gadict`` is a collection of en-ru dictionaries and some freely available
-English thesaurus.
-
-Also project provide some useful information. Check the `sitemap
-<index.html#sitemap>`_.
-
-Home page.
-==========
-
-  http://gadict.sourceforge.net/
-                Home page.
-  http://sourceforge.net/p/gadict/
-                SourceForge home page.
-  http://sourceforge.net/projects/gadict
-                SourceForge (old look) home page.
-
-Project goals.
-==============
-
- * Create and maintain good quality EN-RU dictionaries.
- * Host some free dictionaries (to make them available to broad auditory).
- * Provide all data in most liberal restrictions (public domain).
- * Supply additional information about English language and tools for creating
-   and maintaining dictionaries.
-
-Target audience.
-================
-
- * Regular users for using dictionaries and reading articles.
- * Dictionary develpers for checking dictionary building and maintaining
-   techniques.
-
-Project quality.
-================
-
-Currently dictionaries have very small size and less useful. You can see
-`statistics <STAT.html>`_ on articles count.
-
-I check spelling and translation of most words with old learning books and
-sometimes with free dictionaries.
-
-But *gadict-irregular-verbs-en-ru* dictionary contain mostly all irregular
-verbs.
-
-Project history.
-================
-
-Project born in 2009-06-28 as collection of irregular verbs which I learn.
-
-It use inconvenient for editing Stardict TAB format. Later project switched to
-much verbose C5 dictfmt format.
-
-Licensing, term of use.
-=======================
-
-Generally speak: all files released for free use without any restrictions and
-warranty.
-
-See LICENSE_ file.
-
-Download page.
-==============
-
-Check `Obtaining instructions <INSTALL.html#obtaining>`_.
-
-  https://sourceforge.net/projects/gadict/files/
-                gadict releases at SourceForge.
-
-Installation instructions.
-==========================
-
-Check `Installation instructions <INSTALL.html>`_.
-
-Documentation.
-==============
-
- * `Statistics on count of articles in gadict dictionaries <STAT.html>`_.
- * `English punctuation <en-punctuation_en.html>`_.
- * `English pronunciation <en-pronunciation_en.html>`_.
- * `English pronunciation on Russian <en-pronunciation_ru.html>`_.
-
-Reporting issue.
-================
-
-Just mail me <gavenkoa@gmail.com>.
-
-Fill bug reports and suggestions in Trac instance by:
-
-  TODO
-
-Don't forget add your email address to ticket *CC* field to be notified on
-ticket changes!
-
-Software directory.
-===================
-
-  https://www.ohloh.net/p/gadict
-                ohloh home page for gadict
-
--- a/en-phrase-examples_ru.rst	Sun Mar 13 16:46:19 2016 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,243 +0,0 @@
-
-==================================
- Речевые образцы/Phrase examples.
-==================================
-.. contents::
-   :local:
-
-.. role:: cr
-  :class: cr
-.. role:: cg
-  :class: cg
-
-Пояснения
-=========
-
-Разговорный словарь - Phrase book. Речевые образцы - Phrase examples.
-
-Present Simple Tense
-====================
-
-``SUB-S`` - single subject, ``SUB-P`` - plural subject, ``V1`` - infinitive form of
-verb.
-
-For verbs that ends on: ``s``, ``ss``, ``sh``, ``ch``, ``x`` used ``-es``
-suffix, otherwise ``-s``. TODO
-
-.. table:: Statement sentence
-
-  +--------------------------+-----+
-  || SUB-S :cr:`V1`          | OBJ |
-  || SUB-P :cr:`V1 + -s/-es` |     |
-  +--------------------------+-----+
-
-.. table:: Negation sentence
-
-  +--------------------------------+-----+
-  || SUB-S :cg:`do not` :cr:`V1`   | OBJ |
-  || SUB-S :cg:`don't` :cr:`V1`    |     |
-  || SUB-P :cg:`does not` :cr:`V1` |     |
-  || SUB-P :cg:`doesn't` :cr:`V1`  |     |
-  +--------------------------------+-----+
-
-.. table:: Question sentence
-
-  +----------------------------+------+
-  || :cg:`Do` SUB-S :cr:`V1`   | OBJ? |
-  || :cg:`Does` SUB-P :cr:`V1` |      |
-  +----------------------------+------+
-
-Present Simple Tense  for be
-============================
-
-.. table:: Statement sentence
-
-  +-----------------+-----+
-  || I :cg:`am`     | OBJ |
-  || :cg:`I'm`      |     |
-  +-----------------+     |
-  || You :cg:`are`  |     |
-  || :cg:`You're`   |     |
-  || We :cg:`are`   |     |
-  || :cg:`We're`    |     |
-  || They :cg:`are` |     |
-  || :cg:`They're`  |     |
-  +-----------------+     |
-  || He :cg:`is`    |     |
-  || :cg:`He's`     |     |
-  || She :cg:`is`   |     |
-  || :cg:`She's`    |     |
-  || It :cg:`is`    |     |
-  || :cg:`It's`     |     |
-  +-----------------+-----+
-
-.. table:: Negation sentence
-
-  +---------------------+-----+
-  || I :cg:`am not`     | OBJ |
-  || :cg:`I'm not`      |     |
-  +---------------------+     |
-  || You :cg:`are not`  |     |
-  || You :cg:`aren't`   |     |
-  || :cg:`You're not`   |     |
-  || We :cg:`are not`   |     |
-  || We :cg:`aren't`    |     |
-  || :cg:`We're not`    |     |
-  || They :cg:`are not` |     |
-  || They :cg:`aren't`  |     |
-  || :cg:`They're not`  |     |
-  +---------------------+     |
-  || He :cg:`is not`    |     |
-  || He :cg:`isn't`     |     |
-  || :cg:`He's not`     |     |
-  || She :cg:`is not`   |     |
-  || She :cg:`isn't`    |     |
-  || :cg:`She's not`    |     |
-  || It :cg:`is not`    |     |
-  || It :cg:`isn't`     |     |
-  || :cg:`It's not`     |     |
-  +---------------------+-----+
-
-.. table:: Question sentence.
-
-  +------------+--------+-------+
-  || :cg:`Am`  || I     || OBJ? |
-  +------------+--------+       |
-  || :cg:`Are` || we    |       |
-  |            || you   |       |
-  |            || they  |       |
-  +------------+--------+       |
-  || :cg:`Is`  || he    |       |
-  |            || she   |       |
-  |            || it    |       |
-  +------------+--------+-------+
-
-Present Simple Tense for have
-=============================
-
-.. table:: Statement sentence
-
-  +------------------+------+
-  || I :cg:`have`    || OBJ |
-  || :cg:`I've`      || OBJ |
-  || You :cg:`have`  |      |
-  || :cg:`You've`    |      |
-  || We :cg:`have`   |      |
-  || :cg:`We've`     |      |
-  || They :cg:`have` |      |
-  || :cg:`They've`   |      |
-  +------------------+------+
-  || He :cg:`has`    |      |
-  || :cg:`He's`      |      |
-  || She :cg:`has`   |      |
-  || :cg:`She's`     |      |
-  || It :cg:`has`    |      |
-  || :cg:`It's`      |      |
-  +------------------+------+
-
-.. table:: Negation sentence
-
-  +---------------------+------+
-  || I :cg:`have no`    || OBJ |
-  || :cg:`I've no`      |      |
-  || You :cg:`have no`  |      |
-  || :cg:`You've no`    |      |
-  || We :cg:`have no`   |      |
-  || :cg:`We've no`     |      |
-  || They :cg:`have no` |      |
-  || :cg:`They've no`   |      |
-  +---------------------+------+
-  || He :cg:`has no`    |      |
-  || :cg:`He's no`      |      |
-  || She :cg:`has no`   |      |
-  || :cg:`She's no`     |      |
-  || It :cg:`has no`    |      |
-  || :cg:`It's no`      |      |
-  +---------------------+------+
-
-.. table:: Question sentence
-
-  +-------------+-------+-------+
-  || :cg:`Have` || I    || OBJ? |
-  ||            || you  |       |
-  ||            || we   |       |
-  ||            || they |       |
-  +-------------+-------+       |
-  || :cg:`Has`  || he   |       |
-  ||            || she  |       |
-  ||            || it   |       |
-  +-------------+-------+-------+
-
-Past simple tense
-=================
-
-``SUB`` - subject, ``V2`` - past form of verb.
-
-.. table:: Statement sentence
-
-  +-------------------+
-  || SUB :cr:`V2` OBJ |
-  +-------------------+
-
-.. table:: Negation sentence
-
-  +------+----------------+--------------+
-  || SUB || :cg:`did not` | :cr:`V1` OBJ |
-  ||     || :cg:`did't`   |              |
-  +------+----------------+--------------+
-
-.. table:: Question sentence
-
-  +-------------------------+------+
-  || :cg:`Did` SUB :cr:`V1` | OBJ? |
-  +-------------------------+------+
-
-Imperative mood
-===============
-
-``V1`` - infinitive form of verb, ``OBJ`` - object, ``ADV`` - adverb.
-
-.. table:: imperative mood
-
-  +-------------------+
-  || :cr:`V1` OBJ     |
-  || :cr:`V1` OBJ ADV |
-  +-------------------+
-
-.. line-block::
-
-  Get this!
-  Bring him immediately!
-  Do that right now!
-
-TODO
-====
-
-Negative question sentence.
-
-An S (sentence) consists of an NP (noun phrase) followed by a VP (verb phrase).
-The second rule reads: A noun phrase consists of a Det (determiner) followed by
-an N (noun). Some further categories are listed here: AP (adjective phrase),
-AdvP (adverb phrase), PP (prepositional phrase), etc. Specific notations for
-writing phrase structure rules can be identified in the third rule. The round
-brackets around AP and PP indicate that these constituents are optional. A
-single noun can still stand as a noun phrase.
-
-http://en.wikipedia.org/wiki/Sentence_(linguistics)
-http://en.wikipedia.org/wiki/Noun_phrase
-http://en.wikipedia.org/wiki/Verb_phrase
-http://en.wikipedia.org/wiki/Adjective_phrase
-http://en.wikipedia.org/wiki/Adverb_phrase
-http://en.wikipedia.org/wiki/Prepositional_phrase
-
-http://en.wikipedia.org/wiki/Phrase_structure_grammar
-http://en.wikipedia.org/wiki/X-bar_theory
-http://en.wikipedia.org/wiki/Phrase_structure_rules
-http://en.wikipedia.org/wiki/Minimalist_program
-http://en.wikipedia.org/wiki/Dependency_grammar
-
-http://en.wikipedia.org/wiki/English_clause_syntax
-http://en.wikipedia.org/wiki/Uses_of_English_verb_forms
-http://en.wikipedia.org/wiki/Phrasal_verb
-
-http://en.wikipedia.org/wiki/Auxiliary_verb
--- a/en-pronunciation_en.rst	Sun Mar 13 16:46:19 2016 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,83 +0,0 @@
-.. -*- coding: utf-8 -*-
-.. include:: header.rst
-
-========================
- English pronunciation.
-========================
-.. contents::
-   :local:
-
-Allophone.
-==========
-
-  https://en.wikipedia.org/wiki/Allophone
-    Is one of a set of multiple possible spoken sounds (or phones) or
-    signs used to pronounce a single phoneme in a particular language.
-
-  https://en.wikipedia.org/wiki/Russian_phonology#Allophony
-  https://en.wikipedia.org/wiki/Allophone#English
-  https://en.wikipedia.org/wiki/English_phonology#Allophones_of_consonants
-  https://en.wikipedia.org/wiki/English_phonology#Allophones_of_vowels
-
-Russian analog.
-===============
-
-``[æ]``::
-
-  пять [pʲætʲ]
-
-
-Exercises.
-==========
-
-[iː] vs [ɪ].
-============
-::
-
-  These six silly sisters are sweet to meet.
-  [ðiːz sɪks sɪlɪ sɪstə aː swiːt tuː miːt]
-
-  sheep    ship
-  heat     hit
-  eel      ill
-  receive  sieve
-  leave    live
-
-[ɪ] vs [e].
-===========
-::
-
-  Did Ed wed Liz or did Liz wed Ted?
-  tin     ten
-  hill    hell
-  did     dead
-
-[e] vs [æ].
-===========
-::
-
-  I bet you bat better then your fans in the fens.
-  head    had
-  shell   shall
-  net     gnat
-
-[æ] vs [ʌ].
-===========
-::
-
-  Cut the cackle and come up with the cash!
-  cat    cut
-  dam    dumb
-  stamp  stump
-
-[æ] vs [aː].
-============
-::
-
-  My hard hearted aunt had a fat cat in her flat.
-  cat    cart
-  hat    heart
-  had    hard
-  am     arm
-  chat   chart
-
--- a/en-pronunciation_ru.rst	Sun Mar 13 16:46:19 2016 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,812 +0,0 @@
-.. -*- coding: utf-8 -*-
-.. include:: header.rst
-
-========================
- English pronunciation.
-========================
-.. contents::
-   :local:
-
-About.
-======
-
- * http://en.wikipedia.org/wiki/English_phonology
- * http://en.wikipedia.org/wiki/Pronunciation_respelling_for_English
- * http://en.wikipedia.org/wiki/English_orthography
- * http://en.wikipedia.org/wiki/American_and_British_English_spelling_differences
- * http://en.wikipedia.org/wiki/IPA_chart_for_English_dialects
- * http://en.wikipedia.org/wiki/Wikipedia:IPA_for_English
-
-Деление на слоги (syllable).
-============================
-
-В слове число слогов равно числу гласных звуков::
-
-  ba-by, pis-ton
-
-Если на границе слогораздела одна согласная, то она отходит ко второму
-слогу::
-
-  e-ven, o-pen, i-tem
-
-Если на границе слогораздела более одной согласной, то только первая
-согласная относится к первому слогу::
-
-  hus-band, pen-cil, mem-ber, sym-ptom
-
-Слог образуют сочетания согласных с ``l`` и ``r``, если за ними следует
-конечное нечитаемое "e"::
-
-  ta-ble, a-ble, cy-cle, a-cre
-
-Типы слогов.
-============
-
-Открытый слог (open syllable).
-------------------------------
-
-Заканчивается на гласную::
-
-  ba-by
-
-Слог, который стоит перед ND / LD, считается открытым::
-
-  cold [kɔuld], child [ʧaɪld], old [ɔuld]
-
-Закрытый слог (closed syllable).
---------------------------------
-
-Заканчивается на согласную, кроме "r"::
-
-  sys-tem
-
-Ударный слог (stressed syllable).
----------------------------------
-
-Обычно первый слог::
-
-  pi-lot [ˈpaɪlot], paper [ˈpeɪpə]
-
-В производных словах смещение ударения как правило не происходит::
-
-  nature/natural [ˈneɪʧə/ˈnæʧrəl]
-  mark/remark [mɑːk/rɪˈmɑːk]
-  press/impress [pres/ɪmˈpres]
-
-Неударный слог (unstressed syllable).
--------------------------------------
-
-Чтение согласных.
-=================
-
-Чтение гласных.
-===============
-
-Буква "e" в конце слова не читается::
-
-  life [laɪf], table [teɪbl], dandle [dændl]
-
-"a" в открытом ударном слоге  - [eɪ]::
-
- na-me [neɪm], la-ter [ˈlaɪtə]
- !!! have [hæv], many [ˈmenɪ], family [ˈfæemɪlɪ]
-
-"a" перед "nge" - [eɪ]::
-
-  range [reɪndʒ], danger [deɪndʒə]
-
-"ai" в ударном положении - [eɪ]::
-
-  main [meɪn], traine [treɪn], raise [reɪz], straight [streɪt]
-  !!! said [sed]
-
-"ay" в ударном положении - [eɪ]::
-
-  may [meɪ], lay [leɪ], pay [peɪ], play [pleɪ], stay [steɪ]
-
-"a" в закрытом ударном слоге - [æ]::
-
-  cat [cæt], lat-ter [ˈlætə], fan-cy [ˈfænsɪ]
-
-"ar" - [ɑː]::
-
-  car [cɑː], arm [ɑːm], park [pɑːk]
-
-"a" в сочетании "ass" - [ɑː]::
-
-  glass [ɡlɑːs], pass [pɑːs], class [klɑːs]
-  !!! mass [mæs]
-
-"a" в сочетании "ast" - [ɑː]::
-
-  fast [fɑːst], mast [mɑːst], cast [cɑːst], past [pɑːst], last [lɑːst]
-  !!! tasty [ˈteɪstɪ]
-
-"a" в сочетании "ant" - [ɑː]::
-
-  grant [ɡrɑːnt], plant [plɑːnt], slant [slɑːnt]
-
-"a" в сочетании "anch" - [ɑː]::
-
-  branch [brɑːnʧ]
-
-"a" в сочетании "alf" - [ɑː]::
-
-  half [hɑːlf], calf [kɑːlf]
-
-"a" в сочетании "ask" - [ɑː]::
-
-  ask [ɑːsk], task [tɑːsk], mask [mɑːsk]
-
-"a" в сочетании "ath" - [ɑː]::
-
-  father [ˈfɑːθə], bath [bɑːθ]
-  !!! gather [ˈɡæðə]
-
-"a" в сочетании "ance" - [ɑː]::
-
-  chance [ʧɑːns], advance [ədˈvɑːns]
-
-"a" в сочетании "aft" - [ɑː]::
-
-  shaft [ʃɑːft], after [ˈɑːftə], craft [krɑːft], draft [drɑːft]
-
-"air" - [ɛə]::
-
-  stair [stɛə], hair [hɛə], fair [fɛə], affair [əˈfɛə]
-
-"are" - [ɛə]::
-
-  care [kɛə], fare [fɛə], scare [skɛə]
-
-"a" перед "ll" или "l"+согласная - [ɔː]::
-
-  all [ɔːl], ball [bɔːl], wall [wɔːl], small [smɔːl], hall [hɔːl]
-  chalk [ʧɔːk], install [ɪnˈstɔːl], almost [ɔːlməust]
-
-"au" - [ɔː]::
-
-  launch [lɔːnʧ], autumn [ˈɔːtəm]
-  !!! aunt [ɑːnt]
-
-"aw" - [ɔː]::
-
-  saw [sɔː], draw [drɔː]
-
-"aught" - [ɔːt]::
-
-  naught [nɔːt]
-
-"auth" - [ɔːθ]::
-
-  author [ˈɔːθə]
-
-"ar" после "w" или "qu" - [ɔː]::
-
-  war [wɔː], warm [wɔːm], quartz [kwɔːts]
-
-"a" в закрытом слоге после "w" или "wh" - [ɔ]::
-
-  want [wɔt], wash [wɔʃ], what [wɔt], watch [wɔʧ]
-
-"a" в неударном положении - [ə]::
-
-  data [ˈdeɪtə], agenda [əˈdʒendə]
-
-"ai", "ay" в неударном положении - [ɪ]::
-
-  captain [ˈkæptɪn], Monday [ˈmʌndɪ]
-
-"age" в неударном положении - [ɪdʒ]::
-
-  marriage [ˈmærɪdʒ], sausage ['sɔsɪdʒ]
-
-
-"e" в открытом ударном слоге - [iː]::
-
-  he [hiː], le-gal [ˈliːɡəl]
-
-"ea" - [iː]::
-
-  mean [miːn], seat [siːt], speak [spiːk]
-  !!! great [ɡreɪt], bread [bred], head [hed]
-
-"ee" - [iː]::
-
-  keen [kiːn], feel [fiːl], see [siː]
-
-"e" в закрытом ударном слоге - [e]::
-
-  bed [bed], letter [ˈletə], nest [nest]
-
-"ea" перед "d", "n", "th", "sure" - [e]::
-
-  bread [bred], ready [ˈredɪ], weather [ˈweθə], pleasure [ˈpleʒə], measure [ˈmeʒə], meant [ment]
-
-"er" в ударном слоге - [əː]::
-
-  her [həː], term [təːm], serve [səːv], permanent [ˈpəːmənənt]
-
-"ear" + согласная - [əː]::
-
-  heard [həːd], learn [ləːn], earth [əːθ]
-
-"ear" - [ɪə]::
-
-  ear [ɪə], near [nɪə], fear [fɪə], clear [klɪə]
-
-"eer" - [ɪə]::
-
-  cheer [ʧɪə], engineer [ˌendʒɪˈnɪə], pioneer [ˌpaɪəˈniə]
-
-"ere" - [ɪə]::
-
-  mere [mɪə], here [hɪə], sphere [sfɪə]
-  !!! there [θɛə], where [wɛə], were [wəː]
-
-"e" в закрытом неударном слоге - [ə]::
-
-  sentence - [ˈsentəns]
-
-"er" в неударном положении - [ə]::
-
-  member [ˈmembə], answer [ˈɑːnsə], maker [ˈmeɪkə], perhaps [pəˈhæps]
-
-"e" в открытом неударном слоге - [ɪ]::
-
-  event [ɪˈvent], effect [ɪˈfect], elect [iˈlekt]
-
-"er" в открытом неударном слоге - [ɪ]::
-
-  regret [rɪˈɡret], repair [rɪˈpɛə], remain [rɪˈmeɪn]
-
-"et" в конце слова - [ɪt]::
-
-  market [ˈmɑːkɪt], planet [ˈplænɪt], genet [ˈdʒenɪt], cutlet [ˈcʌltɪd]
-
-"ei" в неударном слоге - [ɪ]::
-
-  foreign [ˈfɔrɪn]
-
-"ey" - [ɪ]::
-
-  hockey [ˈhɔkɪ], money [ˈmʌnɪ]
-
-"ew" - [juː]::
-
-  new [njuː], few [fjuː]
-
-"ew" после звуков [r, l, dʒ] - [uː]::
-
-  crew [kruː], grew [gruː]
-
-"eu" - [juː]::
-
-  deuce [djuːs]
-
-"ei" в ударном слоге - [eɪ]::
-
-  vein [veɪn], freight [freɪt], eight [eɪt]
-
-"ey" в ударном слоге - [eɪ]::
-
-  they [θeɪ]
-
-
-"i" в открытом ударном слоге - [aɪ]::
-
-  fi-ve [faɪv], li-ner [ˈlaɪnə],  pi-lot [ˈpaɪlət], time [taɪm]
-  !!! machine [məʃiːn], cinema [ˈsɪnimə], live [lɪv], give [ɡɪv]
-
-"i" перед "nd" - [aɪ]::
-
-  kind [kaɪnd], find [faɪnd].
-  !!! wind [wɪnd]
-
-"i" перед "ld" - [aɪ]::
-
-  wild [waɪld], mild [maɪld]
-
-"i" перед "gn" - [aɪ]::
-
-  sign [saɪn], design [dɪˈzaɪn]
-
-"i" перед "gh" - [aɪ]::
-
-  light [laɪt], sight [saɪt], right [raɪt]
-
-"ie" на конце односложных слов - [aɪ]::
-
-  die [daɪ], lie [laɪ]
-
-"i" в закрытом ударном слоге - [i]::
-
-  pin [pɪn], din-ner [ˈdɪnə], stick [stɪk], since [sɪns]
-
-"i" в неударном положении - [i]::
-
-  immense [ɪˈmens], imagine [ɪˈmædʒɪn]
-
-"ir" в ударном положении - [əː]::
-
-  first [fəːst], girl [ɡəːl], third [θəːd]
-
-"ire" - [aɪə]::
-
-  fire [faɪə], mire [maɪə], entire [inˈtaɪə]
-
-"ia" - [aɪə]::
-
-  diamond [daɪəmənd], dialogue [ˈdaɪəlɔɡ]
-
-"io" - [aɪə]::
-
-  prior [praɪə], pioneer [ˌpaɪəˈniə], violate [ˈvaɪəleɪt]
-
-"ie" в середине корневых слов - [iː]::
-
-  field [fiːld], brief [briːf], grieve [ɡriːv]
-  !!! friend [frend], piece [piːs]
-
-"o" в открытом ударном слоге - [əʊ]::
-
-  no [nəʊ], ro-se [rəʊz], so-fa [ˈsəʊfə]
-  !!! do [duː], does [dʌz], shoe [ʃuː], to [tuː]
-
-"old" - [əʊl]::
-
-  old [ɔuld], cold [cəʊld], hold [həʊld]
-
-"ol" - [əʊl]::
-
-  control [kəntrəʊl]
-
-"oll" - [əʊl]::
-
-  roll [rəʊl]
-
-"oa" - [əʊ]::
-
-  road [rəʊd], boat [bəʊt], load [ləʊd], loan [ləʊn], oak [əʊk]
-
-"ow" в конце слов - [əʊ]::
-
-  know [nəʊ], show [ʃəʊ], snow [snəʊ], window [ˈwindəʊ], low [ləʊ], bowl [bəʊl]
-  !!! now [nau], how [hau], cow [kau]
-
-"ow" в середине слов - [au]::
-
-  brown [braun], down [daun], flower [ˈflauə]
-
-"o" перед "st" - [əʊ]::
-
-  post [pəʊst], most [məʊst]
-  !!! cost [kɔst], lost [lɔst], frost [frɔst]
-
-"o" в закрытом ударном слоге - [ɔ]::
-
-  on [ɔn], clock [clɔk], ob-ject [ɔbdʒɪkt], stop [stɔp], not [nɔt], got [ɡɔt]
-  !!! son [sʌn], mother [ˈmʌðə], woman [ˈwumən], colour [ˈkʌlə]
-  !!! brother [ˈbrʌðə]
-
-"ou" в середине слова - [au]::
-
-  out [aut], town [taun], brown [braun], found [faund], pound [paud]
-  sound [saund], trousers [ˈtrauzəz]
-  !!! enough [ɪˈnʌf], country [ˈkʌntrɪ], trouble [trʌbl], touch [tʌʧ]
-  !!! young [jʌŋ], you [juː]
-
-"or" в ударном положении - [ɔː]::
-
-  fork [fɔːk], short [ʃɔːt], sport [spɔːt], port [pɔːt]
-
-"oor" - [ɔː]::
-
-  floor [flɔː], door [dɔː]
-  !!! pore [puə]
-
-"ore" - [ɔː]::
-
-  more [mɔː], core [cɔː], bore [bɔː], ore [ɔː], before [bɪˈfɔː]
-
-"oar" - [ɔː]::
-
-  board [bɔːd]
-
-"our" в середине слова - [ɔː]::
-
-  mourn [mɔːn], source [sɔːs]
-  !!! courage [ˈcʌridʒ]
-
-"our" под ударением - [auə]::
-
-  our [auə], hour [hauə], sour [sauə]
-
-"or" в неударном положении - [ə]::
-
-  visitor [ˈvɪzɪtə], doctor [ˈdɔktə], operator [ˈɔpəreɪtə]
-
-"our" на конце слов - [ə]::
-
-  labour [ˈleɪbə], vapour [ˈveɪpə]
-
-"oi" - [ɔɪ]::
-
-  voice [vɔɪs], coil [cɔɪl], toil [tɔɪl], oil [ɔɪl], noise [nɔɪz]
-
-"oy" - [ɔɪ]::
-
-  alloy [ˈælɔɪ], boy [bɔɪ], toy [tɔɪ]
-
-"oo" - [uː]::
-
-  food [fuːd], root [ruːt], noon [nuːn], too [tuː], moon [muːn], pool [puːl], doom [duːm]
-  !!! good [ɡud], wood [wud], foot [fut], blood [blʌd], flood [flʌd]
-
-"oo" перед "k" - [u]::
-
-  book [buk], look [luk], took [tuk], hook [huk]
-
-"ous" на конце слов - [əs]::
-
-  various [ˈvɛərɪəs], tremendous [trɪˈmendəs]
-
-"oth" под ударением - [ʌθ]::
-
-  mother [ˈmʌθə], other [ˈʌθə], brother [ˈbrʌθə], another [əˈnʌθə]
-  !!! both [bəʊθ]
-
-"on" под ударением - [ʌn]::
-
-  month [mʌnθ], son [sʌn], front [frʌnt], London [ˈlʌndən]
-  !!! on [ɔn]
-
-"om" под ударением - [ʌm]::
-
-  come [kʌm], some [sʌm]
-
-"ov" под ударением - [ʌv]::
-
-  cover [ˈkʌvə], oven [ˈʌvn]
-
-
-"u" в открытом ударном слоге - [juː]::
-
-  pu-pil [pjuːpl], stu-dent [ˈstjuːdənt], use [juːz]
-
-"u" в закрытом ударном слоге - [ʌ]::
-
-  num-ber [ˈnʌmbə], un-cle [ʌŋkl], bus [bʌs]
-  !!! put [put], push [puʃ], pull [pul], full [ful], bush [buʃ]
-
-"ue" после "l", "r", "j" - [uː]::
-
-  blue [bluː], true [truː]
-
-"ui" после "l", "r", "j" - [uː]::
-
-  cruise [kruːz], juice [dʒuːs], fruit [fruːt]
-  !!! suit [sjuːt]
-
-"u" в неударном положении - [ə]::
-
-  upon [əˈpɔn], supply [səpˈlaɪ], suspend [səsˈpend], difficult [ˈdɪfɪcəlt]
-  !!! mercury [ˈməːkjuːrɪ]
-
-"ur" в ударном слоге - [əː]::
-
-  curtain [kəːtn], turn [təːn], curve [cəːv], surface [ˈsəːfɪs]
-
-"u" перед "r" + гласная - [juə]::
-
-  pure [pjuə], cure [kjuə], curious [ˈkjuərɪəs]
-  !!! sure [ʃuə]
-
-
-"y" в открытом ударном слоге - [aɪ]::
-
-  my [maɪ], try [traɪ], ty-pist [ˈtaɪpɪst], cycle [saɪkl]
-
-"y" в закрытом ударном слоге - [ɪ]::
-
-  sym-bol [ˈsɪməl], symptom [ˈsɪmptəm]
-
-"y" в открытом неударном слоге - [ɪ]::
-
-  sorry [ˈsɔrɪ], tasty [ˈteɪstɪ], family [ˈfæemɪlɪ], tardy [ˈtɑːdɪ]
-
-"y" в начале слов перед гласными - [j]::
-
-  yet [jet], yard [jɑːd], year [jəː]
-
-"yr" + гласная - [aɪə]::
-
-  tyre [taɪə], tyrant [taɪərənt], gyroplane [dzaɪrəpleɪn]
-
-"yr" + согласная - [əː]::
-
-  myrtle [məːtl]
-
-
-"alk" - [ɔːk]::
-
-  chalk [ʧɔːk], talk [tɔːk], walk [wɔːk]
-
-"aught" - [ɔːt]::
-
-  XXX
-
-"bt" - [t]::
-
-  debt [det], doubt [daut]
-
-"c" обычно - [k]::
-
-  cap [kæp], come [kʌm], cup [kʌp]
-
-"c" перед буквами "e", "i", "y" - [s]::
-
-  cent [sent], face [feɪs], city [ˈsɪtɪ]
-
-"ch" - [ʧ]::
-
-  child [ʧaɪld], chalk [ʧɔːk], chain [ʧeɪn], chess [ʧes]
-
-"cial" - [ʃ(ə)l]::
-
-  special [ˈspeʃ(ə)l], commercial [kəˈməːʃ(ə)l]
-
-"cient" - [ʃ(ə)nt]::
-
-  efficient [ɪˈfɪʃ(ə)nt]
-
-"ck" - [k]::
-
-  black [blæk], clock [klɔk], thick [θɪk].
-
-"g" обычно - [g]::
-
-  game [ɡeɪm], glad [ɡlæd], go [ɡəu]
-
-"g" перед буквами "e", "i", "y" - [dʒ]::
-
-  gypsy [ˈdʒɪpsɪ], gem [dʒem]
-
-"gn" - [n]::
-
-  sign [saɪn], gnome [nəum]
-
-"gm" - [m]::
-
-  paradigm ['pærədaɪm]
-
-"gh" не читается::
-
-  though [ðəʊ], through [θruː]
-  !!! enough [ɪˈnʌf], laugh [lɑːf]
-
-"ght" - [t]::
-
-  might [maɪt], fight [faɪt]
-
-"igh" - [aɪ]::
-
-  high [haɪ], fight [faɪt]
-
-"ild" - [aɪld]::
-
-  child [ʧaɪld], wild [waɪld]
-
-"imb" - [aɪm]::
-
-  climb - [klaɪm]
-
-"ince" - [aɪns]::
-
-  XXX
-
-"ind" - [aɪnd]::
-
-  mind [maɪnd], find [faɪnd], kind [kaɪnd]
-
-"ing" - [iŋ]::
-
-  signing [ˈsaɪniŋ], running [ˈrʌnɪŋ]
-
-"ink" - [iŋk]::
-
-  think [θɪŋk], link [lɪŋk]
-
-"j" - [dʒ]::
-
-  jump [dʒʌmp]
-
-"kn" в начале слова - [n]::
-
-  know [kəu], knot [nɔt]
-
-"lf" - [f]::
-
-  calf [kɑːf], half [hɑːf]
-  !!! gulf [ɡʌlf]
-
-"lm" - [m]::
-
-  balm [bɑːm], calm [kɑːm], holm [həum], palm [pɑːm]
-
-"mb" - [m]::
-
-  climb [klaɪm], limb [laɪm], comb [kəʊm]
-
-"mn" на конце слова - [m]::
-
-  autumn [ˈɔːtəm], damn [dæm], hymn [hɪm]
-
-"ness" в неударном положении - [nɪs]::
-
-  emptiness - [ˈemptɪnɪs]
-
-"ng" - [ŋ]::
-
-  long [lɔŋ], song [sɔŋ], string [strɪŋ]
-
-"ng" и "g" относится к разным слогам - [ŋɡ]::
-
-  angry [ˈæŋɡrɪ], English [ˈɪŋɡliʃ]
-
-"nk" - [ŋk]::
-
-  ink [ɪŋk], think [θɪŋk]
-
-"ough" без последующего "t" - [uː]::
-
-  XXX
-
-"ought" - [ɔːt]::
-
-  brought [brɔːt], thought [θɔːt], fought [fɔːt]
-
-"ould" - [ud]::
-
-  could [kud], should [shud], would [wud]
-
-"ph" - [f]::
-
-  photo [ˈfəʊtəʊ], sphere [sfɪə], phrase [freɪz]
-
-"pn" - [n]::
-
-  pneumonia [njuːˈmənjə]
-
-"pt" - [t]::
-
-  receipt [rɪˈsiːt]
-
-"qu" - [kw]::
-
-  quick [kwɪk], question ['kwesʧ(ə)n]
-
-"ft" - [f]::
-
-  often [ɔfn]
-
-"r" в конце слов если следующее слова начинается с гласной - [r]::
-
-  our own room [auər əʊn rum]
-
-"s" в начале слов - [s]::
-
-  send [send], spend [spend]
-
-"s" перед и после глухой согласной - [s]::
-
-  test [test], cups [kʌps]
-
-"s" после гласных - [z]::
-
-  as [az], days [deɪz]
-
-"s" между гласными - [z]::
-
-  nose [nəʊz]
-
-"s" на конце слов после звонких согласных и гласных - [z]::
-
-  pens [penz], bells [belz]
-
-"sh" - [ʃ]::
-
-  she [ʃiː], should [ʃud], sheep [ʃiːp]
-
-"sion" после гласной - [ʒn]::
-
-  incision [ɪnˈsɪʒ(ə)n]
-
-"sion" после согласной - [ʃn]::
-
-  pension [penʃn]
-
-"sl" - [l]::
-
-  aisle [aɪl], island [ˈaɪlənd]
-
-"ss" - [s]::
-
-  chess [ʧes], Bess [bes], dress [dres]
-
-"st" - [s]::
-
-  castle [kaːsl], listen [lɪsn], whistle [wɪsl]
-
-"ssion" - [ʃ(ə)n]::
-
-  commission [kəˈmɪʃ(ə)n], progression [prəuˈɡreʃ(ə)n]
-
-"ssure" - [ʃə]::
-
-  XXX
-
-"stion" - [sʧn]::
-
-  question [qwesʧn]
-
-"sure" -[ʒə]::
-
-  measure [ˈmeʒə], pleasure [ˈplezhə]
-
-"tch" - [ʧ]::
-
-  watch [wɔʧ], pitch [pɪʧ]
-
-"tion" - [ʃ(ə)n]::
-
-  communication [kəˌmjuːnɪˈkeɪʃ(ə)n], station [steɪʃ(ə)n], nation [neɪʃn]
-
-"th" в начале и в конце знаменательных слов - [θ]::
-
-  thin [θin], thick [θik], bath [bɑːθ]
-
-"th" в служебных словах, наречиях, местоимениях - [ð]::
-
-  the [ðə], with [wið], though [ðəʊ], then [ðen], this [ðis], that [ðæt]
-
-"th" между двумя гласными - [ð]::
-
-  bathe [beið], clothe [kləʊð]
-
-"ture" - [ʧə]::
-
-  picture [ˈpɪkʧə], lecture [ˈlekʧə], culture [ˈcʌlʧə]
-
-"x" - [ks]::
-
-  six [sɪks]
-
-"wa" - [wɔ]::
-
-  want [wɔnt], wash [wɔʃ]
-
-"wh" перед гласными кроме "o" - [w]::
-
-  while [waɪl], whack [wæk]
-
-"wh" перед "o" - [h]::
-
-  who [huː], whom [huːm], whose [huːz]
-
-"wha" - [wɔ]::
-
-  what [wɔt]
-
-"wor" в ударном положении - [wəː]::
-
-  worse [wəːs], world [wəːld], work [wəːk], worm [wəːm]
-  !!! worn [wɔːn]
-
-"wr" - [r]::
-
-  write [raɪt], wrong [rɔŋ]
-
-"xh" - [ks]::
-
-  exhibition [ˌeksɪˈbɪʃn]
--- a/en-punctuation_en.rst	Sun Mar 13 16:46:19 2016 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,309 +0,0 @@
-.. -*- coding: utf-8 -*-
-.. include:: header.rst
-
-============================
- English Punctuation Guide.
-============================
-
-Punctuation symbol.
-===================
-::
-
-  !  exclamation mark
-  "" single quotation marks
-  '' double quotation marks
-  '  apostrophe
-  ,  comma
-  -  hyphen
-  .  full stop (period USA)
-  :  colon
-  ;  semi colon
-  ?  question mark
-  ... ellipsis
-
-General rules.
-==============
-
- * Put end-of-sentence punctuation inside quotation marks.
- * Put commas and other sentence punctuation outside of parentheses.
- * Put a comma (plus a space) before and, but, or, and nor when they
-   join two sentences.
- * The semicolon (;) is not used widely in English and probably should
-   be avoided by non-native writers.
- * Names of newspapers, books, movies, ships, magazines, journals, and
-   poems are usually italicized or underlined.
-
-Capital letter.
-===============
-
- 1. A capital is used for the first letter of a new sentence, of quoted
-    speech or proper nouns.
- 2. The first letter of a sentence does not need to be capitalized if it
-    is included in parenthesis within another sentence.
- 3. A capital letter is always used for the first person singular
-    subjective personal pronoun I.
- 4. A capital is used for the first letter of key words in headings and
-    titles. If such titles are hyphenated then both components are given
-    capitalized first letters.
- 5. A capital is used for the first letter of key words in historical
-    events.
- 6. A capital is used for the first letter of religions and many other
-    religious words.
- 7. A capital is used for the first letter of names of months and days of
-    the week, but not of seasons.
- 8. Holidays should also be capitalized.
-
-Examples::
-
-  [3] My boss and I agreed that I should make up for the time I  had lost.
-  [4] The Minister of Agriculture and Fisheries
-  [4] The Centers for Disease Control
-  [4] Vice-President Dick Cheney
-  [5] The Battle of Waterloo
-  [5] The Great Fire of London
-  [6] Devout Christians do daily Bible study.
-  [7] After a long, hot summer she married him on a sultry Saturday in September.
-  [8] January 1 is New Year's Day.
-
-Spaces.
-=======
-
- * Put one space after punctuation.
- * Put no spaces before punctuation, but always put a space between words.
- * Put no spaces after periods inside abbreviations.
- * Put no space before or after an apostrophe.
- * Put no space on the "inside" of quotation marks (often called "quotes").
- * Put no space on the "inside" of parentheses.
-
-Some old rules:
-
- * Put two spaces after colons and between sentences.
-
-Exclamation mark, '!'.
-======================
-
- * Exclamation marks act as a full stop.
- * An exclamation mark is most often used to show shock, surprise,
-   horror or pleasure.
- * No space is needed before an exclamation mark, at least one space
-   after one (two spaces for purists).
-
-Examples::
-
-  Oh! Wow! Brilliant!
-  It was shocking!
-
-Apostrophe, "'".
-================
-
- * Apostrophes next to the letter ('s) indicate possession or belonging.
- * They are also used to show missing letters in shortened words, especially in
-   informal writing.
- * No space is needed before or after the apostrophe.
-
-Examples::
-
-  This is Lynne's web site.
-  It's a nice day today, isn't it? I've got an idea. Let's go out.
-
-Comma, ','.
-===========
-
- 1. Separate items in long lists.
- 2. Commas point out brief pauses in a complex sentence or a long
-    prepositional phrase.
- 3. Comma is included before the conjunction 'and' which comes before
-    the final element of a list (for purists).
- 4. Introduce a direct quote.
- 5. Separate appositives (a noun, or noun phrase) or non-defining
-    relative clauses.
- 6. Use a comma if your subject has two or more adjectives describing
-    it.
- 7. You do not put a space before a comma, but you do need a space after
-    one.
- 8. We don't usually put a comma before the word 'and'.
-
-Examples::
-
-  [1] There were a lot of people in the room, teachers, students and parents.
-  [2] The teachers were sitting, the students were listening and the parents
-      were just worrying.
-  [2] Although he wanted to come, he wasn't able to attend the course.
-  [3] I like reading, listening to music, and visiting with my friends.
-  [4] The boy said, "My father is often away during the week on business trips."
-  [4] His doctor replied, "If you don't stop smoking, you run the risk of a
-      heart attack."
-  [5] Bill Gates, the richest man in the world, comes from Seattle.
-  [5] My only sister, who is a fantastic tennis player, is in great shape.
-  [6] The powerful, resonating sound caught our attention.
-
-Colon, ':'.
-===========
-
- 1. Colons precede a list, an explanation or an example.
- 2. The colon is used to separate two main clauses where the first is an
-    introduction to the second.
- 3. To introduce a direct quote (a comma can also be used in this
-    situation).
- 4. You do not put a space before a colon, but you do need a space after
-    one.
-
-Examples::
-
-  [1] There are two main shopping areas in Nottingham: Broadmarsh Centre and
-      Victoria Centre.
-  [2] The pilot had an awful realization: he had forgotten to turn off the gas
-      at breakfast time.
-  [3] He announced to his friends: "I'm getting married!"
-
-Full stop (period), '.'.
-========================
-
- 1. Full stops (periods in the USA) go at the end of sentences that are
-    statements.
- 2. They are also used to mark abbreviations. If such an abbreviation
-    occurs at the very end of a sentence, the final dot is not usually
-    written twice.
- 3. You do not put a space before a full stop, but you do need at least
-    one space after one (two spaces for purists).
-
-Examples::
-
-  [1] My name is Lynn. I am a teacher.
-  [2] An overhead projector is often referred to as an O.H.P.
-
-Hyphen, '-'.
-============
-
- * Hyphens are used to connect words or syllables, or to divide words into
-   parts.
- * You don't use a space on either side of a hyphen.
-
-Examples::
-
-  There were ninety-nine red balloons.
-
-Question mark, '?'.
-===================
-
- 1. Question marks go at the end of sentences that are questions.
- 2. You need a question mark at the end of tag questions.
- 3. For quotes within quotes, use single quotes.
- 4. You do not put a space before a question mark, but you do need at
-    least one space after one (two spaces for purists).
-
-Examples::
-
-  [1] Is my name Lynn? Of course it is.
-  [2] It's a nice day, isn't it?
-
-Semicolon, ';'.
-===============
-
- 1. Semicolons are used to separate two sentences that would otherwise
-    be joined with a word such as 'and', 'because', 'since', 'unless' or
-    'while'. 2 To separate groups of words that are themselves separated
-    by commas.
- 2. You do not put a space before a semicolon, but you do need a space
-    after one.
-
-Examples::
-
-  [1] I'm looking forward to our next lesson; I'm sure it will be a lot of fun.
-  [2] They plan to study German, for their travels; chemistry, for their work;
-  and literature, for their own enjoyment.
-
-Quotation mark (speech mark), '""', "''".
-=========================================
-
-Double quotes '""', single quotes "''".
-
- * Quotation marks (single or double) are used to show words that are
-   directly spoken (direct speech).
- * Only the words actually being quoted are enclosed by speech marks.
- * You need a space before the opening speech mark, but no space after
-   it, and a space after the closing one, but no space before it.
- * Another general rule is to use a comma after the introduction to
-   quoted speech or writing.
- * Sometimes when writing a spoken sentence it is split in two. The
-   speech marks must then be placed at the beginning and end of each
-   part of the sentence. Commas are used to separate the spoken part
-   from the rest of the sentence.
- * If you need a question mark or exclamation mark the markers that
-   punctuate the quoted words are enclosed by the speech marks.
-
-Examples::
-
-  "Could everyone sit down please," said the teacher.
-  Jaime said, "I love you."
-  "I wonder," she said quietly, "whether people will ever truly understand each other."
-  "I don't understand," replied Nathan.
-  "Do you understand?" asked Nathan.
-  "I don't understand!" shouted Nathan.
-  Nathan replied, "I don't understand."
-  Nathan asked, "Do you understand?"
-  Nathan shouted, "I don't understand!"
-  He wrote in 1946 that, "The key word in digital computer is 'digital'."
-
-Ellipsis, '...'.
-================
-
- 1. Ellipsis used to show that something has been omitted, indicate
-    missing words in an incomplete quotation.
-
-Examples::
-
-  [1] Chomsky suggested that, "Language is a system that...can be described in
-      an algebraic notation."
-
-Dash, '-', '--'.
-================
-
- 1. The dash should be used when making a brief interruption within a
-    statement, a sudden change of thought, an additional comment, or a
-    dramatic qualification.
-
-Parentheses '()'.
-=================
-
- 1. Use parentheses to clarify, to place an afterthought, or to add a
-    personal comment. Be sure to include the period after the closing
-    parenthesis.
-
-Examples::
-
-  [1] Steve Case (AOL's former CEO) resigned from the Time-Warner board of
-      directors in 2005.
-  [1] You will need a flashlight for the camping trip (don't forget the
-      batteries!).
-  [1] Most grammarians believe that parentheses and commas are always
-      interchangeable (I disagree).
-
-Brackets '[]'.
-==============
-
- 1. Use brackets to signify an editor's note in a regular piece of
-    writing. You can also use brackets to clarify or to revise a direct
-    quote so that it appeals to your own writing.
- 2. The first brackets are rounded, and brackets inside brackets are
-    squared.
-
-Examples::
-
-  [1] "[The blast] was absolutely devastating," said Susan Smith.
-
-Slash '/'.
-==========
-
- 1. Use the slash to separate "and" and "or", when appropriate.
- 2. The slash can replace the word "and" to join two nouns.
- 3. The slash is used when quoting lyrics and poetry to denote a line
-    break. Be sure to add spaces between your slashes here.
-
-Examples::
-
-  [1] To register, you will need your driver's license and/or your birth
-      certificate."
-  [2] The student/part-time employee has very little free time.
-  [3] "Row, row, row your boat / gently down the stream / life is but a dream."
-
--- a/header.rst	Sun Mar 13 16:46:19 2016 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,20 +0,0 @@
-
-.. _Home: http://gadict.sourceforge.net/
-.. _UP: .
-.. _CHANGES: CHANGES.html
-.. _Changes: CHANGES.html
-.. _README: README.html
-.. _About: README.html
-.. _INSTALL: INSTALL.html
-.. _Installing: INSTALL.html
-.. _Statistics: STAT.html
-.. _LICENSE: LICENSE.html
-.. _License: LICENSE.html
-.. _AUTHORS: AUTHORS.html
-.. _Authors: AUTHORS.html
-.. _HACKING: HACKING.html
-.. _Hacking: HACKING.html
-.. _Misc: MISC.html
-
-[ About_ | Installing_ | Misc_ | Statistics_ | Changes_ | License_ | Authors_ | Hacking_ ]
-
--- a/rst.css	Sun Mar 13 16:46:19 2016 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,62 +0,0 @@
-body, frameset { background-color: ivory; }
-body {
-    padding: 0 10px 0 10px;
-    max-width: 800px;
-    margin: 0 auto;
-}
-
-a { text-decoration:none; }
-a:link { color: brown; }
-a:visited { color: IndianRed; }
-a:hover { background: bisque; border-radius: 10px; padding: 1px; }
-p { text-indent: 2em; }
-
-#contents {
-    max-width: 500px;
-    margin: 0 auto;
-    padding: 5px 0;
-    background: cornsilk;
-    border: 1px solid red;
-    border-radius: 10px;
-}
-
-.formula, .literal-block {
-    display: inline-block;
-    overflow: auto;
-    box-sizing: border-box;
-    max-width: calc(100% - 4em);
-    margin: 0 0 0 4em;
-    padding: 5px;
-    border: 1px solid brown;
-    background: LightYellow;
-}
-table {
-    border-collapse:collapse;
-    margin-left:auto;
-    margin-right:auto;
-}
-table, tr, td {
-    border: 1px dotted maroon;
-    background-color: cornsilk;
-}
-table tr td {
-    margin: 3px;
-    padding: 3px;
-}
-
-.cr { color: red; }
-.cg { color: green; }
-
-colgroup { display: none; }
-
-pre span.keyword {
-    color: blue;
-}
-pre span.function {
-    color: brown;
-}
-pre span.literal {
-    color: green;
-}
-
-
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/www/AUTHORS.rst	Sun Mar 13 18:20:35 2016 +0200
@@ -0,0 +1,13 @@
+.. -*- coding: utf-8 -*-
+
+===============
+ AUTHORS list.
+===============
+.. contents::
+   :local:
+
+Original authors.
+=================
+
+ * Oleksandr Gavenko <gavenkoa@gmail.com>
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/www/CHANGES.rst	Sun Mar 13 18:20:35 2016 +0200
@@ -0,0 +1,55 @@
+.. -*- coding: utf-8 -*-
+
+=====================
+ CHANGES for gadict.
+=====================
+.. contents::
+   :local:
+
+v0.7, 2016-03-13
+================
+
+ * New home page. SF is used as mirror.
+
+v0.6, 2015-10-13.
+=================
+
+ * VOA dictionary in print form.
+ * Miscellaneous supplementary info.
+
+v0.5, 2012-07-13.
+=================
+
+ * VOA "Special English Word Book" thesaurus was added.
+ * GoldenDict installation instruction was added.
+ * Documentation was hardly improved for end users.
+ * Fixed links.
+ * Removed outdated data.
+ * Added a lot on exceptions for English spelling rules.
+
+v0.4, 2012-07-10.
+=================
+
+ * English spelling rules guide was imported from gavenkoa personal
+   ``tips`` project. This guide is main source for word transcription.
+ * Improved home page appearance.
+ * Fixed for ``dist``-like targets was fixed build dependencies.
+
+v0.3, 2012-01-15.
+=================
+
+ * Fix misc issue in deploy targets.
+
+v0.2, 2012-01-15.
+=================
+
+ * Add target to check of release sanity.
+ * Include article count statistics in release docs.
+ * Fix source release target (dictionary files are missing).
+
+v0.1, 2012-01-12.
+=================
+
+ * First public release.
+ * Summary nearly 800 words in all dictionaries.
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/www/HACKING.rst	Sun Mar 13 18:20:35 2016 +0200
@@ -0,0 +1,175 @@
+.. -*- coding: utf-8 -*-
+
+=======================
+ gadict HACKING guide.
+=======================
+.. contents::
+   :local:
+
+Versioning rules.
+=================
+
+We use **major.minor** schema.
+
+Until we reach 5000 words **major** is 0. **minor** updated from time to time.
+
+Getting sources (VCS).
+======================
+
+Cloning repository::
+
+  $ hg clone http://hg.defun.work/gadict gadict
+  $ hg clone http://hg.code.sf.net/p/gadict/code gadict-hg
+
+Pushing changes::
+
+  $ hg push ssh://$USER@hg.defun.work/gadict
+  $ hg push ssh://$USER@hg.code.sf.net/p/gadict/code
+  $ hg push https://$USER:$PASS@hg.code.sf.net/p/gadict/code
+
+Browsing sources.
+=================
+
+  http://hg.defun.work/gadict
+    hgweb at home page.
+  http://hg.code.sf.net/p/gadict/code
+    hgweb at old home page (but supported as mirror).
+  https://sourceforge.net/p/gadict/code/
+    Sourceforge Allure interface (not primary, a mirror).
+
+Dictionary source file format.
+==============================
+
+For source file format used dictd C5 file format. See::
+
+  $ man 1 dictfmt
+
+Shortly:
+
+ * Headwords was preceded by 5 or more underscore characters ``_`` and a blank
+   line.
+ * All text until the next headword is considered the definition.
+ * Any leading ``@`` characters are stripped out, but the file is otherwise
+   unchanged.
+
+For convenience also used such assumptions:
+
+ * Headwords was separated by ``;<SPACE>`` (and all was placed on single line).
+ * UTF-8 encoding was used.
+ * Lines started with ``#`` striped out (comment syntax).
+ * First line with ``ABOUT:`` used as description of dictionary.
+ * First URL (line with ``http://``) used as dictionary home page.
+
+Comment syntax convention.
+==========================
+
+As 'dictd -c5' format does not support comment syntax we filter out all
+lines that start with '#'.
+
+TODO convention.
+================
+
+Entries or parts of text that was not completed marked by keywords:
+
+  TODO
+                incomplete
+  XXX
+                urgent incomplete
+
+Makefile rules ``todo`` find this occurrence in sources::
+
+  $ make todo
+
+Dictionary file name convention.
+================================
+
+BNF form::
+
+  FILE ::= PREFIX "-" NAME "-" LANG ".dict-c5"
+  PREFIX ::= "gadict"
+  LANG ::= ISOCODE | ISOCODE "-" ISOCODE
+
+where ``ISOCODE`` is ISO 639-1 language (2 letter) code, currently ``en``,
+``ru``, ``uk`` in use, ``NAME`` is dictionary abbreviated name.
+
+World wide dictionary formats and standards.
+============================================
+
+  http://en.wikipedia.org/wiki/Dictionary_writing_system
+                Dictionary writing system
+  http://www.sil.org/computing/shoebox/mdf.html
+                Multi-Dictionary Formatter (MDF). It defines about 100 data
+                field markers.
+  http://fieldworks.sil.org/flex/
+                FieldWorks Language Explorer (or FLEx, for short) is designed
+                to help field linguists perform many common language
+                documentation and analysis tasks.
+  http://code.google.com/p/lift-standard/
+                LIFT (Lexicon Interchange FormaT) is an XML format for storing
+                lexical information, as used in the creation of dictionaries.
+                It's not necessarily the format for your lexicon.
+  http://www.lexiquepro.com/
+                Lexique Pro is an interactive lexicon viewer and editor, with
+                hyperlinks between entries, category views, dictionary
+                reversal, search, and export tools. It's designed to display
+                your data in a user-friendly format so you can distribute it
+                to others.
+  http://deb.fi.muni.cz/index.php
+                DEBII — Dictionary Editor and Browser
+
+Register gadict dictionaries for dictd under Debian.
+====================================================
+::
+
+  $ su
+  $ cat >>etc/dictd/dictd.order <<EOF
+  gadict-dictabbr
+  /home/user/usr/share/dictd/
+  $ dictdconfig --write
+  $ /etc/init.d/dictd restart
+  $ ^D
+  $ dictdconfig --list
+  $ dict -d gadict-dictabbr v
+
+Typing IPA chars in Emacs.
+==========================
+
+For entering IPA chars use IPA input method. To enable it type::
+
+  C-u C-\ ipa <enter>
+
+All chars from alphabet typed as usual. To type special IPA chars use next key
+bindings (or read help in Emacs by ``M-x describe-input-method`` or ``C-h I``).
+
+For vowel::
+
+  æ  ae
+  ɑ  o| or A
+  ɒ  |o  or /A
+  ʊ  U
+  ɛ  /3 or E
+  ɔ  /c
+  ə  /e
+  ʌ  /v
+  ɪ  I
+
+For consonant::
+
+  θ  th
+  ð  dh
+  ʃ  sh
+  ʧ  tsh
+  ʒ  zh or 3
+  ŋ  ng
+  ɡ  g
+  ɹ  /r
+
+Special chars::
+
+  ː  : (semicolon)
+  ˈ  ' (quote)
+  ˌ  ` (back quote)
+
+Alternatively use ``ipa-x-sampa`` or ``ipa-kirshenbaum`` input method (for help
+type: ``C-h I ipa-x-sampa RET`` or ``C-h I ipa-kirshenbaum RET``).
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/www/INSTALL.rst	Sun Mar 13 18:20:35 2016 +0200
@@ -0,0 +1,63 @@
+.. -*- coding: utf-8 -*-
+
+=================================
+ Installing gadict dictionaries.
+=================================
+.. contents::
+   :local:
+
+Obtaining.
+==========
+
+For distribution tarbol use (for regular users)::
+
+  gadict-$major.$minor.tar.bz2
+
+For source tarboll use::
+
+  gadict-$major.$minor_src.tar.gz
+
+``$major`` and ``$minor`` represent version components.
+
+To get these files use appropriate links:
+
+ * https://sourceforge.net/projects/gadict/files/v$major.$minor/gadict-$major.$minor_src.tar.gz
+ * https://sourceforge.net/projects/gadict/files/v$major.$minor/gadict-$major.$minor.tar.gz
+
+Manual installation instruction for GoldenDict.
+===============================================
+
+Get distribution tarboll and extract all files to any directory. Select::
+
+ Edit ==> Dictionaries...
+
+in GoldenDict menu (or just press ``F3``) and add directory to where you
+extracted files. Press ``Refresh`` button. That's all.
+
+**Note** only ``*.dict.dz`` and ``*.index`` files are required for GoldenDict.
+You can safely remove other fils.
+
+How to build and install from supplied Makefile.
+================================================
+
+To build and install in /usr/local/ run as root::
+
+  $ make install
+
+If you run as regular user ``prefix`` set to::
+
+  $HOME/usr
+
+To build and install in different place run::
+
+  $ make install prefix=PREFIX
+
+How to uninstall from supplied Makefile.
+========================================
+
+To uninstall run one command from list accordingly to installation procedure::
+
+  $ make uninstall
+  $ make uninstall prefix=PREFIX
+  $ make prefix=PREFIX uninstall uninstall-local-symlink
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/www/IPA.rst	Sun Mar 13 18:20:35 2016 +0200
@@ -0,0 +1,222 @@
+.. -*- coding: utf-8 -*-
+
+================
+ IPA in gadict.
+================
+.. contents::
+   :local:
+
+Pronunciation rules for English.
+================================
+
+In English written symbol represent different sounds::
+
+  rough [XXX]
+  through [XXX]
+  bough [XXX]
+  though [XXX]
+  cough [XXX]
+
+Many linguists argue that English require spelling reform.
+
+Pronunciation keys for EN gadict.
+=================================
+
+``gadict`` project try to follow OED 2ed (Oxford English Dictionary)
+pronunciation for dialect known as RP (Received Pronunciation) and uses IPA for
+representation of pronunciation like in Wikipedia project:
+
+  http://en.wikipedia.org/wiki/Help:IPA_for_English
+                Wikipedia IPA for English.
+  http://en.wikipedia.org/wiki/IPA_chart_for_English
+                This concise chart shows the most common applications of the
+                International Phonetic Alphabet (IPA) to represent English
+                language pronunciations.
+  http://en.wikipedia.org/wiki/Received_Pronunciation
+                Wiki about RP.
+  http://en.wikipedia.org/wiki/Oed
+                Oxford English Dictionary.
+
+Compare:
+
+ * http://en.wikipedia.org/wiki/International_Phonetic_Alphabet_chart_for_English_dialects
+ * http://en.wikipedia.org/wiki/Help:IPA_conventions_for_English
+
+Consonants.
+-----------
+
+[b]::
+
+  bed [XXX], bird [XXX], baby [XXX]
+
+[p]::
+
+  pen [XXX], people [XXX]
+
+[d]::
+
+  dead [XXX], dust [XXX]
+
+[t]::
+
+  tree [XXX]
+
+[ʧ]::
+
+  XXX
+
+[]::
+
+
+
+[f]::
+
+  flow [XXX], fine [XXX]
+
+[g]::
+
+  glove [XXX], give [XXX]
+
+[j]::
+
+  job [XXX]
+
+[k]::
+
+  cat [kæt]
+
+[l]::
+
+  lamp [læmp]
+
+[m]::
+
+  milk [mɪlk]
+
+[n]::
+
+  note [nəʊt]
+
+[r]::
+
+  road [rəʊd]
+
+[s]::
+
+  sofa [səʊfə]
+
+[ð]::
+
+  both [bəʊð]
+
+[θ]::
+
+  think [θɪnk]
+
+[ʒ]::
+
+  pleasure [pleʒə]
+
+[dʒ]::
+
+  bridge [brɪdʒ]
+
+Vowels.
+-------
+
+[ʌ]::
+
+  son [sʌn], ɡun [ɡʌn]
+
+[ɑː]::
+
+  car [kɑː]
+
+[ɒ]::
+
+  lot [lɒt], hot [hɒt]
+
+[ɔː]::
+
+  fork [fɔːk], or [ɔː], fall [fɔːl]
+
+[ɔɪ]::
+
+  choice [ʧɔɪs], boy [bɔɪ]
+
+[əʊ]::
+
+  open [əʊpən], colon [kəʊlən]
+
+[ʊ]::
+
+  xxx
+
+[ɛ]::
+
+  pen [pɛn], text [tɛxt], pet [pɛt]
+
+[ɪ]::
+
+  pin [pɪn], milk [mɪlk]
+
+[iː]::
+
+  tree [triː], see [siː], me [miː], tea [tiː]
+
+[ɪə]::
+
+  ear [ɪə], dear [dɪə]
+
+[ɜr]::
+
+  girl [gɜrl], first [fɜrst], work [wɜrk]
+
+[æ]::
+
+  fat [fæt], happy [hæppɪ]
+
+[eə]::
+
+  where [weə], fair [feə]
+
+List of IPA chars for English transcription.
+============================================
+
+
+  θ ð ʃ ŋ ʧ ʒ ı ɡ ː ˌ ˈ ˑ ˏ ˊ ˋ
+  æ ɑ ɒ ʌ ʊ ɒ ɛ ə ɜ ɔ ɪ є ɚ
+
+You can copy/paste they in phonetic string.
+
+TODO
+====
+::
+
+            Front       Central     Back
+         long  short long  short long  short
+  Close   iː    ɪ                 uː    ʊ
+  Mid           ɛ     ɜː    ə     ɔː
+  Open          æ           ʌ     ɑː    ɒ
+
+      Diphthong          Triphthong
+  Closing    Centring
+   /eɪ/       /ɪə/        /aɪə/
+   /aɪ/       /eə/        /ɑʊə/
+   /ɔɪ/       /ʊə/
+   /əʊ/
+   /aʊ/
+
+Old vs. new transcription.
+==========================
+
+From "Better English pronunciation."::
+
+  Old  iː i e ɔː u uː ei ou ai au ɔi æ ɔ ʌ əː ɑː iə ɛə uə ə
+  New  iː ɪ e ɔː ʊ uː eɪ əʊ aɪ aʊ ɔɪ æ ɒ ʌ ɜː ɑː ɪə eə ʊə ə
+
+Also from Wikipedia::
+
+  Old  æ e əː ʌɪ ɑʊ ɛə
+  New  a ɛ ɜː aɪ aʊ eə
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/www/LICENSE.rst	Sun Mar 13 18:20:35 2016 +0200
@@ -0,0 +1,14 @@
+.. -*- coding: utf-8 -*-
+
+=================
+ gadict LICENSE.
+=================
+.. contents::
+   :local:
+
+License statement.
+==================
+
+You can use any **gadict** dictionaries for any purpose without any
+restriction.
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/www/MISC.rst	Sun Mar 13 18:20:35 2016 +0200
@@ -0,0 +1,22 @@
+.. -*- coding: utf-8 -*-
+
+===================================
+ Miscellaneous supplementary info.
+===================================
+.. contents::
+   :local:
+
+Well known free dictionaries.
+=============================
+
+ * `VOA <voa-special.pdf>`_ - Voice of America Public Domain English dictionary.
+
+English.
+========
+
+ * `IPA conventions <IPA.html>`_.
+ * `English punctuation <en-punctuation_en.html>`_.
+ * `English pronunciation <en-pronunciation_ru.html>`_.
+ * `English pronunciation  training exercise <en-pronunciation_en.html>`_.
+ * `English phrase examples <en-phrase-examples_ru.html>`_.
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/www/README.rst	Sun Mar 13 18:20:35 2016 +0200
@@ -0,0 +1,110 @@
+.. -*- coding: utf-8 -*-
+
+======================
+ gadict dictionaries.
+======================
+.. contents::
+   :local:
+
+About gadict.
+=============
+
+``gadict`` is a collection of en-ru dictionaries and some freely available
+English thesaurus.
+
+Also project provide some useful information. Check the `sitemap
+<index.html#sitemap>`_.
+
+Home page.
+==========
+
+  http://gadict.sourceforge.net/
+                Home page.
+  http://sourceforge.net/p/gadict/
+                SourceForge home page.
+  http://sourceforge.net/projects/gadict
+                SourceForge (old look) home page.
+
+Project goals.
+==============
+
+ * Create and maintain good quality EN-RU dictionaries.
+ * Host some free dictionaries (to make them available to broad auditory).
+ * Provide all data in most liberal restrictions (public domain).
+ * Supply additional information about English language and tools for creating
+   and maintaining dictionaries.
+
+Target audience.
+================
+
+ * Regular users for using dictionaries and reading articles.
+ * Dictionary develpers for checking dictionary building and maintaining
+   techniques.
+
+Project quality.
+================
+
+Currently dictionaries have very small size and less useful. You can see
+`statistics <STAT.html>`_ on articles count.
+
+I check spelling and translation of most words with old learning books and
+sometimes with free dictionaries.
+
+But *gadict-irregular-verbs-en-ru* dictionary contain mostly all irregular
+verbs.
+
+Project history.
+================
+
+Project born in 2009-06-28 as collection of irregular verbs which I learn.
+
+It use inconvenient for editing Stardict TAB format. Later project switched to
+much verbose C5 dictfmt format.
+
+Licensing, term of use.
+=======================
+
+Generally speak: all files released for free use without any restrictions and
+warranty.
+
+See `<LICENSE.html>`_ file.
+
+Download page.
+==============
+
+Check `Obtaining instructions <INSTALL.html#obtaining>`_.
+
+  https://sourceforge.net/projects/gadict/files/
+                gadict releases at SourceForge.
+
+Installation instructions.
+==========================
+
+Check `Installation instructions <INSTALL.html>`_.
+
+Documentation.
+==============
+
+ * `Statistics on count of articles in gadict dictionaries <STAT.html>`_.
+ * `English punctuation <en-punctuation_en.html>`_.
+ * `English pronunciation <en-pronunciation_en.html>`_.
+ * `English pronunciation on Russian <en-pronunciation_ru.html>`_.
+
+Reporting issue.
+================
+
+Just mail me <gavenkoa@gmail.com>.
+
+Fill bug reports and suggestions in Trac instance by:
+
+  TODO
+
+Don't forget add your email address to ticket *CC* field to be notified on
+ticket changes!
+
+Software directory.
+===================
+
+  https://www.ohloh.net/p/gadict
+                ohloh home page for gadict
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/www/en-phrase-examples_ru.rst	Sun Mar 13 18:20:35 2016 +0200
@@ -0,0 +1,243 @@
+
+==================================
+ Речевые образцы/Phrase examples.
+==================================
+.. contents::
+   :local:
+
+.. role:: cr
+  :class: cr
+.. role:: cg
+  :class: cg
+
+Пояснения
+=========
+
+Разговорный словарь - Phrase book. Речевые образцы - Phrase examples.
+
+Present Simple Tense
+====================
+
+``SUB-S`` - single subject, ``SUB-P`` - plural subject, ``V1`` - infinitive form of
+verb.
+
+For verbs that ends on: ``s``, ``ss``, ``sh``, ``ch``, ``x`` used ``-es``
+suffix, otherwise ``-s``. TODO
+
+.. table:: Statement sentence
+
+  +--------------------------+-----+
+  || SUB-S :cr:`V1`          | OBJ |
+  || SUB-P :cr:`V1 + -s/-es` |     |
+  +--------------------------+-----+
+
+.. table:: Negation sentence
+
+  +--------------------------------+-----+
+  || SUB-S :cg:`do not` :cr:`V1`   | OBJ |
+  || SUB-S :cg:`don't` :cr:`V1`    |     |
+  || SUB-P :cg:`does not` :cr:`V1` |     |
+  || SUB-P :cg:`doesn't` :cr:`V1`  |     |
+  +--------------------------------+-----+
+
+.. table:: Question sentence
+
+  +----------------------------+------+
+  || :cg:`Do` SUB-S :cr:`V1`   | OBJ? |
+  || :cg:`Does` SUB-P :cr:`V1` |      |
+  +----------------------------+------+
+
+Present Simple Tense  for be
+============================
+
+.. table:: Statement sentence
+
+  +-----------------+-----+
+  || I :cg:`am`     | OBJ |
+  || :cg:`I'm`      |     |
+  +-----------------+     |
+  || You :cg:`are`  |     |
+  || :cg:`You're`   |     |
+  || We :cg:`are`   |     |
+  || :cg:`We're`    |     |
+  || They :cg:`are` |     |
+  || :cg:`They're`  |     |
+  +-----------------+     |
+  || He :cg:`is`    |     |
+  || :cg:`He's`     |     |
+  || She :cg:`is`   |     |
+  || :cg:`She's`    |     |
+  || It :cg:`is`    |     |
+  || :cg:`It's`     |     |
+  +-----------------+-----+
+
+.. table:: Negation sentence
+
+  +---------------------+-----+
+  || I :cg:`am not`     | OBJ |
+  || :cg:`I'm not`      |     |
+  +---------------------+     |
+  || You :cg:`are not`  |     |
+  || You :cg:`aren't`   |     |
+  || :cg:`You're not`   |     |
+  || We :cg:`are not`   |     |
+  || We :cg:`aren't`    |     |
+  || :cg:`We're not`    |     |
+  || They :cg:`are not` |     |
+  || They :cg:`aren't`  |     |
+  || :cg:`They're not`  |     |
+  +---------------------+     |
+  || He :cg:`is not`    |     |
+  || He :cg:`isn't`     |     |
+  || :cg:`He's not`     |     |
+  || She :cg:`is not`   |     |
+  || She :cg:`isn't`    |     |
+  || :cg:`She's not`    |     |
+  || It :cg:`is not`    |     |
+  || It :cg:`isn't`     |     |
+  || :cg:`It's not`     |     |
+  +---------------------+-----+
+
+.. table:: Question sentence.
+
+  +------------+--------+-------+
+  || :cg:`Am`  || I     || OBJ? |
+  +------------+--------+       |
+  || :cg:`Are` || we    |       |
+  |            || you   |       |
+  |            || they  |       |
+  +------------+--------+       |
+  || :cg:`Is`  || he    |       |
+  |            || she   |       |
+  |            || it    |       |
+  +------------+--------+-------+
+
+Present Simple Tense for have
+=============================
+
+.. table:: Statement sentence
+
+  +------------------+------+
+  || I :cg:`have`    || OBJ |
+  || :cg:`I've`      || OBJ |
+  || You :cg:`have`  |      |
+  || :cg:`You've`    |      |
+  || We :cg:`have`   |      |
+  || :cg:`We've`     |      |
+  || They :cg:`have` |      |
+  || :cg:`They've`   |      |
+  +------------------+------+
+  || He :cg:`has`    |      |
+  || :cg:`He's`      |      |
+  || She :cg:`has`   |      |
+  || :cg:`She's`     |      |
+  || It :cg:`has`    |      |
+  || :cg:`It's`      |      |
+  +------------------+------+
+
+.. table:: Negation sentence
+
+  +---------------------+------+
+  || I :cg:`have no`    || OBJ |
+  || :cg:`I've no`      |      |
+  || You :cg:`have no`  |      |
+  || :cg:`You've no`    |      |
+  || We :cg:`have no`   |      |
+  || :cg:`We've no`     |      |
+  || They :cg:`have no` |      |
+  || :cg:`They've no`   |      |
+  +---------------------+------+
+  || He :cg:`has no`    |      |
+  || :cg:`He's no`      |      |
+  || She :cg:`has no`   |      |
+  || :cg:`She's no`     |      |
+  || It :cg:`has no`    |      |
+  || :cg:`It's no`      |      |
+  +---------------------+------+
+
+.. table:: Question sentence
+
+  +-------------+-------+-------+
+  || :cg:`Have` || I    || OBJ? |
+  ||            || you  |       |
+  ||            || we   |       |
+  ||            || they |       |
+  +-------------+-------+       |
+  || :cg:`Has`  || he   |       |
+  ||            || she  |       |
+  ||            || it   |       |
+  +-------------+-------+-------+
+
+Past simple tense
+=================
+
+``SUB`` - subject, ``V2`` - past form of verb.
+
+.. table:: Statement sentence
+
+  +-------------------+
+  || SUB :cr:`V2` OBJ |
+  +-------------------+
+
+.. table:: Negation sentence
+
+  +------+----------------+--------------+
+  || SUB || :cg:`did not` | :cr:`V1` OBJ |
+  ||     || :cg:`did't`   |              |
+  +------+----------------+--------------+
+
+.. table:: Question sentence
+
+  +-------------------------+------+
+  || :cg:`Did` SUB :cr:`V1` | OBJ? |
+  +-------------------------+------+
+
+Imperative mood
+===============
+
+``V1`` - infinitive form of verb, ``OBJ`` - object, ``ADV`` - adverb.
+
+.. table:: imperative mood
+
+  +-------------------+
+  || :cr:`V1` OBJ     |
+  || :cr:`V1` OBJ ADV |
+  +-------------------+
+
+.. line-block::
+
+  Get this!
+  Bring him immediately!
+  Do that right now!
+
+TODO
+====
+
+Negative question sentence.
+
+An S (sentence) consists of an NP (noun phrase) followed by a VP (verb phrase).
+The second rule reads: A noun phrase consists of a Det (determiner) followed by
+an N (noun). Some further categories are listed here: AP (adjective phrase),
+AdvP (adverb phrase), PP (prepositional phrase), etc. Specific notations for
+writing phrase structure rules can be identified in the third rule. The round
+brackets around AP and PP indicate that these constituents are optional. A
+single noun can still stand as a noun phrase.
+
+http://en.wikipedia.org/wiki/Sentence_(linguistics)
+http://en.wikipedia.org/wiki/Noun_phrase
+http://en.wikipedia.org/wiki/Verb_phrase
+http://en.wikipedia.org/wiki/Adjective_phrase
+http://en.wikipedia.org/wiki/Adverb_phrase
+http://en.wikipedia.org/wiki/Prepositional_phrase
+
+http://en.wikipedia.org/wiki/Phrase_structure_grammar
+http://en.wikipedia.org/wiki/X-bar_theory
+http://en.wikipedia.org/wiki/Phrase_structure_rules
+http://en.wikipedia.org/wiki/Minimalist_program
+http://en.wikipedia.org/wiki/Dependency_grammar
+
+http://en.wikipedia.org/wiki/English_clause_syntax
+http://en.wikipedia.org/wiki/Uses_of_English_verb_forms
+http://en.wikipedia.org/wiki/Phrasal_verb
+
+http://en.wikipedia.org/wiki/Auxiliary_verb
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/www/en-pronunciation_en.rst	Sun Mar 13 18:20:35 2016 +0200
@@ -0,0 +1,82 @@
+.. -*- coding: utf-8 -*-
+
+========================
+ English pronunciation.
+========================
+.. contents::
+   :local:
+
+Allophone.
+==========
+
+  https://en.wikipedia.org/wiki/Allophone
+    Is one of a set of multiple possible spoken sounds (or phones) or
+    signs used to pronounce a single phoneme in a particular language.
+
+  https://en.wikipedia.org/wiki/Russian_phonology#Allophony
+  https://en.wikipedia.org/wiki/Allophone#English
+  https://en.wikipedia.org/wiki/English_phonology#Allophones_of_consonants
+  https://en.wikipedia.org/wiki/English_phonology#Allophones_of_vowels
+
+Russian analog.
+===============
+
+``[æ]``::
+
+  пять [pʲætʲ]
+
+
+Exercises.
+==========
+
+[iː] vs [ɪ].
+============
+::
+
+  These six silly sisters are sweet to meet.
+  [ðiːz sɪks sɪlɪ sɪstə aː swiːt tuː miːt]
+
+  sheep    ship
+  heat     hit
+  eel      ill
+  receive  sieve
+  leave    live
+
+[ɪ] vs [e].
+===========
+::
+
+  Did Ed wed Liz or did Liz wed Ted?
+  tin     ten
+  hill    hell
+  did     dead
+
+[e] vs [æ].
+===========
+::
+
+  I bet you bat better then your fans in the fens.
+  head    had
+  shell   shall
+  net     gnat
+
+[æ] vs [ʌ].
+===========
+::
+
+  Cut the cackle and come up with the cash!
+  cat    cut
+  dam    dumb
+  stamp  stump
+
+[æ] vs [aː].
+============
+::
+
+  My hard hearted aunt had a fat cat in her flat.
+  cat    cart
+  hat    heart
+  had    hard
+  am     arm
+  chat   chart
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/www/en-pronunciation_ru.rst	Sun Mar 13 18:20:35 2016 +0200
@@ -0,0 +1,811 @@
+.. -*- coding: utf-8 -*-
+
+========================
+ English pronunciation.
+========================
+.. contents::
+   :local:
+
+About.
+======
+
+ * http://en.wikipedia.org/wiki/English_phonology
+ * http://en.wikipedia.org/wiki/Pronunciation_respelling_for_English
+ * http://en.wikipedia.org/wiki/English_orthography
+ * http://en.wikipedia.org/wiki/American_and_British_English_spelling_differences
+ * http://en.wikipedia.org/wiki/IPA_chart_for_English_dialects
+ * http://en.wikipedia.org/wiki/Wikipedia:IPA_for_English
+
+Деление на слоги (syllable).
+============================
+
+В слове число слогов равно числу гласных звуков::
+
+  ba-by, pis-ton
+
+Если на границе слогораздела одна согласная, то она отходит ко второму
+слогу::
+
+  e-ven, o-pen, i-tem
+
+Если на границе слогораздела более одной согласной, то только первая
+согласная относится к первому слогу::
+
+  hus-band, pen-cil, mem-ber, sym-ptom
+
+Слог образуют сочетания согласных с ``l`` и ``r``, если за ними следует
+конечное нечитаемое "e"::
+
+  ta-ble, a-ble, cy-cle, a-cre
+
+Типы слогов.
+============
+
+Открытый слог (open syllable).
+------------------------------
+
+Заканчивается на гласную::
+
+  ba-by
+
+Слог, который стоит перед ND / LD, считается открытым::
+
+  cold [kɔuld], child [ʧaɪld], old [ɔuld]
+
+Закрытый слог (closed syllable).
+--------------------------------
+
+Заканчивается на согласную, кроме "r"::
+
+  sys-tem
+
+Ударный слог (stressed syllable).
+---------------------------------
+
+Обычно первый слог::
+
+  pi-lot [ˈpaɪlot], paper [ˈpeɪpə]
+
+В производных словах смещение ударения как правило не происходит::
+
+  nature/natural [ˈneɪʧə/ˈnæʧrəl]
+  mark/remark [mɑːk/rɪˈmɑːk]
+  press/impress [pres/ɪmˈpres]
+
+Неударный слог (unstressed syllable).
+-------------------------------------
+
+Чтение согласных.
+=================
+
+Чтение гласных.
+===============
+
+Буква "e" в конце слова не читается::
+
+  life [laɪf], table [teɪbl], dandle [dændl]
+
+"a" в открытом ударном слоге  - [eɪ]::
+
+ na-me [neɪm], la-ter [ˈlaɪtə]
+ !!! have [hæv], many [ˈmenɪ], family [ˈfæemɪlɪ]
+
+"a" перед "nge" - [eɪ]::
+
+  range [reɪndʒ], danger [deɪndʒə]
+
+"ai" в ударном положении - [eɪ]::
+
+  main [meɪn], traine [treɪn], raise [reɪz], straight [streɪt]
+  !!! said [sed]
+
+"ay" в ударном положении - [eɪ]::
+
+  may [meɪ], lay [leɪ], pay [peɪ], play [pleɪ], stay [steɪ]
+
+"a" в закрытом ударном слоге - [æ]::
+
+  cat [cæt], lat-ter [ˈlætə], fan-cy [ˈfænsɪ]
+
+"ar" - [ɑː]::
+
+  car [cɑː], arm [ɑːm], park [pɑːk]
+
+"a" в сочетании "ass" - [ɑː]::
+
+  glass [ɡlɑːs], pass [pɑːs], class [klɑːs]
+  !!! mass [mæs]
+
+"a" в сочетании "ast" - [ɑː]::
+
+  fast [fɑːst], mast [mɑːst], cast [cɑːst], past [pɑːst], last [lɑːst]
+  !!! tasty [ˈteɪstɪ]
+
+"a" в сочетании "ant" - [ɑː]::
+
+  grant [ɡrɑːnt], plant [plɑːnt], slant [slɑːnt]
+
+"a" в сочетании "anch" - [ɑː]::
+
+  branch [brɑːnʧ]
+
+"a" в сочетании "alf" - [ɑː]::
+
+  half [hɑːlf], calf [kɑːlf]
+
+"a" в сочетании "ask" - [ɑː]::
+
+  ask [ɑːsk], task [tɑːsk], mask [mɑːsk]
+
+"a" в сочетании "ath" - [ɑː]::
+
+  father [ˈfɑːθə], bath [bɑːθ]
+  !!! gather [ˈɡæðə]
+
+"a" в сочетании "ance" - [ɑː]::
+
+  chance [ʧɑːns], advance [ədˈvɑːns]
+
+"a" в сочетании "aft" - [ɑː]::
+
+  shaft [ʃɑːft], after [ˈɑːftə], craft [krɑːft], draft [drɑːft]
+
+"air" - [ɛə]::
+
+  stair [stɛə], hair [hɛə], fair [fɛə], affair [əˈfɛə]
+
+"are" - [ɛə]::
+
+  care [kɛə], fare [fɛə], scare [skɛə]
+
+"a" перед "ll" или "l"+согласная - [ɔː]::
+
+  all [ɔːl], ball [bɔːl], wall [wɔːl], small [smɔːl], hall [hɔːl]
+  chalk [ʧɔːk], install [ɪnˈstɔːl], almost [ɔːlməust]
+
+"au" - [ɔː]::
+
+  launch [lɔːnʧ], autumn [ˈɔːtəm]
+  !!! aunt [ɑːnt]
+
+"aw" - [ɔː]::
+
+  saw [sɔː], draw [drɔː]
+
+"aught" - [ɔːt]::
+
+  naught [nɔːt]
+
+"auth" - [ɔːθ]::
+
+  author [ˈɔːθə]
+
+"ar" после "w" или "qu" - [ɔː]::
+
+  war [wɔː], warm [wɔːm], quartz [kwɔːts]
+
+"a" в закрытом слоге после "w" или "wh" - [ɔ]::
+
+  want [wɔt], wash [wɔʃ], what [wɔt], watch [wɔʧ]
+
+"a" в неударном положении - [ə]::
+
+  data [ˈdeɪtə], agenda [əˈdʒendə]
+
+"ai", "ay" в неударном положении - [ɪ]::
+
+  captain [ˈkæptɪn], Monday [ˈmʌndɪ]
+
+"age" в неударном положении - [ɪdʒ]::
+
+  marriage [ˈmærɪdʒ], sausage ['sɔsɪdʒ]
+
+
+"e" в открытом ударном слоге - [iː]::
+
+  he [hiː], le-gal [ˈliːɡəl]
+
+"ea" - [iː]::
+
+  mean [miːn], seat [siːt], speak [spiːk]
+  !!! great [ɡreɪt], bread [bred], head [hed]
+
+"ee" - [iː]::
+
+  keen [kiːn], feel [fiːl], see [siː]
+
+"e" в закрытом ударном слоге - [e]::
+
+  bed [bed], letter [ˈletə], nest [nest]
+
+"ea" перед "d", "n", "th", "sure" - [e]::
+
+  bread [bred], ready [ˈredɪ], weather [ˈweθə], pleasure [ˈpleʒə], measure [ˈmeʒə], meant [ment]
+
+"er" в ударном слоге - [əː]::
+
+  her [həː], term [təːm], serve [səːv], permanent [ˈpəːmənənt]
+
+"ear" + согласная - [əː]::
+
+  heard [həːd], learn [ləːn], earth [əːθ]
+
+"ear" - [ɪə]::
+
+  ear [ɪə], near [nɪə], fear [fɪə], clear [klɪə]
+
+"eer" - [ɪə]::
+
+  cheer [ʧɪə], engineer [ˌendʒɪˈnɪə], pioneer [ˌpaɪəˈniə]
+
+"ere" - [ɪə]::
+
+  mere [mɪə], here [hɪə], sphere [sfɪə]
+  !!! there [θɛə], where [wɛə], were [wəː]
+
+"e" в закрытом неударном слоге - [ə]::
+
+  sentence - [ˈsentəns]
+
+"er" в неударном положении - [ə]::
+
+  member [ˈmembə], answer [ˈɑːnsə], maker [ˈmeɪkə], perhaps [pəˈhæps]
+
+"e" в открытом неударном слоге - [ɪ]::
+
+  event [ɪˈvent], effect [ɪˈfect], elect [iˈlekt]
+
+"er" в открытом неударном слоге - [ɪ]::
+
+  regret [rɪˈɡret], repair [rɪˈpɛə], remain [rɪˈmeɪn]
+
+"et" в конце слова - [ɪt]::
+
+  market [ˈmɑːkɪt], planet [ˈplænɪt], genet [ˈdʒenɪt], cutlet [ˈcʌltɪd]
+
+"ei" в неударном слоге - [ɪ]::
+
+  foreign [ˈfɔrɪn]
+
+"ey" - [ɪ]::
+
+  hockey [ˈhɔkɪ], money [ˈmʌnɪ]
+
+"ew" - [juː]::
+
+  new [njuː], few [fjuː]
+
+"ew" после звуков [r, l, dʒ] - [uː]::
+
+  crew [kruː], grew [gruː]
+
+"eu" - [juː]::
+
+  deuce [djuːs]
+
+"ei" в ударном слоге - [eɪ]::
+
+  vein [veɪn], freight [freɪt], eight [eɪt]
+
+"ey" в ударном слоге - [eɪ]::
+
+  they [θeɪ]
+
+
+"i" в открытом ударном слоге - [aɪ]::
+
+  fi-ve [faɪv], li-ner [ˈlaɪnə],  pi-lot [ˈpaɪlət], time [taɪm]
+  !!! machine [məʃiːn], cinema [ˈsɪnimə], live [lɪv], give [ɡɪv]
+
+"i" перед "nd" - [aɪ]::
+
+  kind [kaɪnd], find [faɪnd].
+  !!! wind [wɪnd]
+
+"i" перед "ld" - [aɪ]::
+
+  wild [waɪld], mild [maɪld]
+
+"i" перед "gn" - [aɪ]::
+
+  sign [saɪn], design [dɪˈzaɪn]
+
+"i" перед "gh" - [aɪ]::
+
+  light [laɪt], sight [saɪt], right [raɪt]
+
+"ie" на конце односложных слов - [aɪ]::
+
+  die [daɪ], lie [laɪ]
+
+"i" в закрытом ударном слоге - [i]::
+
+  pin [pɪn], din-ner [ˈdɪnə], stick [stɪk], since [sɪns]
+
+"i" в неударном положении - [i]::
+
+  immense [ɪˈmens], imagine [ɪˈmædʒɪn]
+
+"ir" в ударном положении - [əː]::
+
+  first [fəːst], girl [ɡəːl], third [θəːd]
+
+"ire" - [aɪə]::
+
+  fire [faɪə], mire [maɪə], entire [inˈtaɪə]
+
+"ia" - [aɪə]::
+
+  diamond [daɪəmənd], dialogue [ˈdaɪəlɔɡ]
+
+"io" - [aɪə]::
+
+  prior [praɪə], pioneer [ˌpaɪəˈniə], violate [ˈvaɪəleɪt]
+
+"ie" в середине корневых слов - [iː]::
+
+  field [fiːld], brief [briːf], grieve [ɡriːv]
+  !!! friend [frend], piece [piːs]
+
+"o" в открытом ударном слоге - [əʊ]::
+
+  no [nəʊ], ro-se [rəʊz], so-fa [ˈsəʊfə]
+  !!! do [duː], does [dʌz], shoe [ʃuː], to [tuː]
+
+"old" - [əʊl]::
+
+  old [ɔuld], cold [cəʊld], hold [həʊld]
+
+"ol" - [əʊl]::
+
+  control [kəntrəʊl]
+
+"oll" - [əʊl]::
+
+  roll [rəʊl]
+
+"oa" - [əʊ]::
+
+  road [rəʊd], boat [bəʊt], load [ləʊd], loan [ləʊn], oak [əʊk]
+
+"ow" в конце слов - [əʊ]::
+
+  know [nəʊ], show [ʃəʊ], snow [snəʊ], window [ˈwindəʊ], low [ləʊ], bowl [bəʊl]
+  !!! now [nau], how [hau], cow [kau]
+
+"ow" в середине слов - [au]::
+
+  brown [braun], down [daun], flower [ˈflauə]
+
+"o" перед "st" - [əʊ]::
+
+  post [pəʊst], most [məʊst]
+  !!! cost [kɔst], lost [lɔst], frost [frɔst]
+
+"o" в закрытом ударном слоге - [ɔ]::
+
+  on [ɔn], clock [clɔk], ob-ject [ɔbdʒɪkt], stop [stɔp], not [nɔt], got [ɡɔt]
+  !!! son [sʌn], mother [ˈmʌðə], woman [ˈwumən], colour [ˈkʌlə]
+  !!! brother [ˈbrʌðə]
+
+"ou" в середине слова - [au]::
+
+  out [aut], town [taun], brown [braun], found [faund], pound [paud]
+  sound [saund], trousers [ˈtrauzəz]
+  !!! enough [ɪˈnʌf], country [ˈkʌntrɪ], trouble [trʌbl], touch [tʌʧ]
+  !!! young [jʌŋ], you [juː]
+
+"or" в ударном положении - [ɔː]::
+
+  fork [fɔːk], short [ʃɔːt], sport [spɔːt], port [pɔːt]
+
+"oor" - [ɔː]::
+
+  floor [flɔː], door [dɔː]
+  !!! pore [puə]
+
+"ore" - [ɔː]::
+
+  more [mɔː], core [cɔː], bore [bɔː], ore [ɔː], before [bɪˈfɔː]
+
+"oar" - [ɔː]::
+
+  board [bɔːd]
+
+"our" в середине слова - [ɔː]::
+
+  mourn [mɔːn], source [sɔːs]
+  !!! courage [ˈcʌridʒ]
+
+"our" под ударением - [auə]::
+
+  our [auə], hour [hauə], sour [sauə]
+
+"or" в неударном положении - [ə]::
+
+  visitor [ˈvɪzɪtə], doctor [ˈdɔktə], operator [ˈɔpəreɪtə]
+
+"our" на конце слов - [ə]::
+
+  labour [ˈleɪbə], vapour [ˈveɪpə]
+
+"oi" - [ɔɪ]::
+
+  voice [vɔɪs], coil [cɔɪl], toil [tɔɪl], oil [ɔɪl], noise [nɔɪz]
+
+"oy" - [ɔɪ]::
+
+  alloy [ˈælɔɪ], boy [bɔɪ], toy [tɔɪ]
+
+"oo" - [uː]::
+
+  food [fuːd], root [ruːt], noon [nuːn], too [tuː], moon [muːn], pool [puːl], doom [duːm]
+  !!! good [ɡud], wood [wud], foot [fut], blood [blʌd], flood [flʌd]
+
+"oo" перед "k" - [u]::
+
+  book [buk], look [luk], took [tuk], hook [huk]
+
+"ous" на конце слов - [əs]::
+
+  various [ˈvɛərɪəs], tremendous [trɪˈmendəs]
+
+"oth" под ударением - [ʌθ]::
+
+  mother [ˈmʌθə], other [ˈʌθə], brother [ˈbrʌθə], another [əˈnʌθə]
+  !!! both [bəʊθ]
+
+"on" под ударением - [ʌn]::
+
+  month [mʌnθ], son [sʌn], front [frʌnt], London [ˈlʌndən]
+  !!! on [ɔn]
+
+"om" под ударением - [ʌm]::
+
+  come [kʌm], some [sʌm]
+
+"ov" под ударением - [ʌv]::
+
+  cover [ˈkʌvə], oven [ˈʌvn]
+
+
+"u" в открытом ударном слоге - [juː]::
+
+  pu-pil [pjuːpl], stu-dent [ˈstjuːdənt], use [juːz]
+
+"u" в закрытом ударном слоге - [ʌ]::
+
+  num-ber [ˈnʌmbə], un-cle [ʌŋkl], bus [bʌs]
+  !!! put [put], push [puʃ], pull [pul], full [ful], bush [buʃ]
+
+"ue" после "l", "r", "j" - [uː]::
+
+  blue [bluː], true [truː]
+
+"ui" после "l", "r", "j" - [uː]::
+
+  cruise [kruːz], juice [dʒuːs], fruit [fruːt]
+  !!! suit [sjuːt]
+
+"u" в неударном положении - [ə]::
+
+  upon [əˈpɔn], supply [səpˈlaɪ], suspend [səsˈpend], difficult [ˈdɪfɪcəlt]
+  !!! mercury [ˈməːkjuːrɪ]
+
+"ur" в ударном слоге - [əː]::
+
+  curtain [kəːtn], turn [təːn], curve [cəːv], surface [ˈsəːfɪs]
+
+"u" перед "r" + гласная - [juə]::
+
+  pure [pjuə], cure [kjuə], curious [ˈkjuərɪəs]
+  !!! sure [ʃuə]
+
+
+"y" в открытом ударном слоге - [aɪ]::
+
+  my [maɪ], try [traɪ], ty-pist [ˈtaɪpɪst], cycle [saɪkl]
+
+"y" в закрытом ударном слоге - [ɪ]::
+
+  sym-bol [ˈsɪməl], symptom [ˈsɪmptəm]
+
+"y" в открытом неударном слоге - [ɪ]::
+
+  sorry [ˈsɔrɪ], tasty [ˈteɪstɪ], family [ˈfæemɪlɪ], tardy [ˈtɑːdɪ]
+
+"y" в начале слов перед гласными - [j]::
+
+  yet [jet], yard [jɑːd], year [jəː]
+
+"yr" + гласная - [aɪə]::
+
+  tyre [taɪə], tyrant [taɪərənt], gyroplane [dzaɪrəpleɪn]
+
+"yr" + согласная - [əː]::
+
+  myrtle [məːtl]
+
+
+"alk" - [ɔːk]::
+
+  chalk [ʧɔːk], talk [tɔːk], walk [wɔːk]
+
+"aught" - [ɔːt]::
+
+  XXX
+
+"bt" - [t]::
+
+  debt [det], doubt [daut]
+
+"c" обычно - [k]::
+
+  cap [kæp], come [kʌm], cup [kʌp]
+
+"c" перед буквами "e", "i", "y" - [s]::
+
+  cent [sent], face [feɪs], city [ˈsɪtɪ]
+
+"ch" - [ʧ]::
+
+  child [ʧaɪld], chalk [ʧɔːk], chain [ʧeɪn], chess [ʧes]
+
+"cial" - [ʃ(ə)l]::
+
+  special [ˈspeʃ(ə)l], commercial [kəˈməːʃ(ə)l]
+
+"cient" - [ʃ(ə)nt]::
+
+  efficient [ɪˈfɪʃ(ə)nt]
+
+"ck" - [k]::
+
+  black [blæk], clock [klɔk], thick [θɪk].
+
+"g" обычно - [g]::
+
+  game [ɡeɪm], glad [ɡlæd], go [ɡəu]
+
+"g" перед буквами "e", "i", "y" - [dʒ]::
+
+  gypsy [ˈdʒɪpsɪ], gem [dʒem]
+
+"gn" - [n]::
+
+  sign [saɪn], gnome [nəum]
+
+"gm" - [m]::
+
+  paradigm ['pærədaɪm]
+
+"gh" не читается::
+
+  though [ðəʊ], through [θruː]
+  !!! enough [ɪˈnʌf], laugh [lɑːf]
+
+"ght" - [t]::
+
+  might [maɪt], fight [faɪt]
+
+"igh" - [aɪ]::
+
+  high [haɪ], fight [faɪt]
+
+"ild" - [aɪld]::
+
+  child [ʧaɪld], wild [waɪld]
+
+"imb" - [aɪm]::
+
+  climb - [klaɪm]
+
+"ince" - [aɪns]::
+
+  XXX
+
+"ind" - [aɪnd]::
+
+  mind [maɪnd], find [faɪnd], kind [kaɪnd]
+
+"ing" - [iŋ]::
+
+  signing [ˈsaɪniŋ], running [ˈrʌnɪŋ]
+
+"ink" - [iŋk]::
+
+  think [θɪŋk], link [lɪŋk]
+
+"j" - [dʒ]::
+
+  jump [dʒʌmp]
+
+"kn" в начале слова - [n]::
+
+  know [kəu], knot [nɔt]
+
+"lf" - [f]::
+
+  calf [kɑːf], half [hɑːf]
+  !!! gulf [ɡʌlf]
+
+"lm" - [m]::
+
+  balm [bɑːm], calm [kɑːm], holm [həum], palm [pɑːm]
+
+"mb" - [m]::
+
+  climb [klaɪm], limb [laɪm], comb [kəʊm]
+
+"mn" на конце слова - [m]::
+
+  autumn [ˈɔːtəm], damn [dæm], hymn [hɪm]
+
+"ness" в неударном положении - [nɪs]::
+
+  emptiness - [ˈemptɪnɪs]
+
+"ng" - [ŋ]::
+
+  long [lɔŋ], song [sɔŋ], string [strɪŋ]
+
+"ng" и "g" относится к разным слогам - [ŋɡ]::
+
+  angry [ˈæŋɡrɪ], English [ˈɪŋɡliʃ]
+
+"nk" - [ŋk]::
+
+  ink [ɪŋk], think [θɪŋk]
+
+"ough" без последующего "t" - [uː]::
+
+  XXX
+
+"ought" - [ɔːt]::
+
+  brought [brɔːt], thought [θɔːt], fought [fɔːt]
+
+"ould" - [ud]::
+
+  could [kud], should [shud], would [wud]
+
+"ph" - [f]::
+
+  photo [ˈfəʊtəʊ], sphere [sfɪə], phrase [freɪz]
+
+"pn" - [n]::
+
+  pneumonia [njuːˈmənjə]
+
+"pt" - [t]::
+
+  receipt [rɪˈsiːt]
+
+"qu" - [kw]::
+
+  quick [kwɪk], question ['kwesʧ(ə)n]
+
+"ft" - [f]::
+
+  often [ɔfn]
+
+"r" в конце слов если следующее слова начинается с гласной - [r]::
+
+  our own room [auər əʊn rum]
+
+"s" в начале слов - [s]::
+
+  send [send], spend [spend]
+
+"s" перед и после глухой согласной - [s]::
+
+  test [test], cups [kʌps]
+
+"s" после гласных - [z]::
+
+  as [az], days [deɪz]
+
+"s" между гласными - [z]::
+
+  nose [nəʊz]
+
+"s" на конце слов после звонких согласных и гласных - [z]::
+
+  pens [penz], bells [belz]
+
+"sh" - [ʃ]::
+
+  she [ʃiː], should [ʃud], sheep [ʃiːp]
+
+"sion" после гласной - [ʒn]::
+
+  incision [ɪnˈsɪʒ(ə)n]
+
+"sion" после согласной - [ʃn]::
+
+  pension [penʃn]
+
+"sl" - [l]::
+
+  aisle [aɪl], island [ˈaɪlənd]
+
+"ss" - [s]::
+
+  chess [ʧes], Bess [bes], dress [dres]
+
+"st" - [s]::
+
+  castle [kaːsl], listen [lɪsn], whistle [wɪsl]
+
+"ssion" - [ʃ(ə)n]::
+
+  commission [kəˈmɪʃ(ə)n], progression [prəuˈɡreʃ(ə)n]
+
+"ssure" - [ʃə]::
+
+  XXX
+
+"stion" - [sʧn]::
+
+  question [qwesʧn]
+
+"sure" -[ʒə]::
+
+  measure [ˈmeʒə], pleasure [ˈplezhə]
+
+"tch" - [ʧ]::
+
+  watch [wɔʧ], pitch [pɪʧ]
+
+"tion" - [ʃ(ə)n]::
+
+  communication [kəˌmjuːnɪˈkeɪʃ(ə)n], station [steɪʃ(ə)n], nation [neɪʃn]
+
+"th" в начале и в конце знаменательных слов - [θ]::
+
+  thin [θin], thick [θik], bath [bɑːθ]
+
+"th" в служебных словах, наречиях, местоимениях - [ð]::
+
+  the [ðə], with [wið], though [ðəʊ], then [ðen], this [ðis], that [ðæt]
+
+"th" между двумя гласными - [ð]::
+
+  bathe [beið], clothe [kləʊð]
+
+"ture" - [ʧə]::
+
+  picture [ˈpɪkʧə], lecture [ˈlekʧə], culture [ˈcʌlʧə]
+
+"x" - [ks]::
+
+  six [sɪks]
+
+"wa" - [wɔ]::
+
+  want [wɔnt], wash [wɔʃ]
+
+"wh" перед гласными кроме "o" - [w]::
+
+  while [waɪl], whack [wæk]
+
+"wh" перед "o" - [h]::
+
+  who [huː], whom [huːm], whose [huːz]
+
+"wha" - [wɔ]::
+
+  what [wɔt]
+
+"wor" в ударном положении - [wəː]::
+
+  worse [wəːs], world [wəːld], work [wəːk], worm [wəːm]
+  !!! worn [wɔːn]
+
+"wr" - [r]::
+
+  write [raɪt], wrong [rɔŋ]
+
+"xh" - [ks]::
+
+  exhibition [ˌeksɪˈbɪʃn]
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/www/en-punctuation_en.rst	Sun Mar 13 18:20:35 2016 +0200
@@ -0,0 +1,308 @@
+.. -*- coding: utf-8 -*-
+
+============================
+ English Punctuation Guide.
+============================
+
+Punctuation symbol.
+===================
+::
+
+  !  exclamation mark
+  "" single quotation marks
+  '' double quotation marks
+  '  apostrophe
+  ,  comma
+  -  hyphen
+  .  full stop (period USA)
+  :  colon
+  ;  semi colon
+  ?  question mark
+  ... ellipsis
+
+General rules.
+==============
+
+ * Put end-of-sentence punctuation inside quotation marks.
+ * Put commas and other sentence punctuation outside of parentheses.
+ * Put a comma (plus a space) before and, but, or, and nor when they
+   join two sentences.
+ * The semicolon (;) is not used widely in English and probably should
+   be avoided by non-native writers.
+ * Names of newspapers, books, movies, ships, magazines, journals, and
+   poems are usually italicized or underlined.
+
+Capital letter.
+===============
+
+ 1. A capital is used for the first letter of a new sentence, of quoted
+    speech or proper nouns.
+ 2. The first letter of a sentence does not need to be capitalized if it
+    is included in parenthesis within another sentence.
+ 3. A capital letter is always used for the first person singular
+    subjective personal pronoun I.
+ 4. A capital is used for the first letter of key words in headings and
+    titles. If such titles are hyphenated then both components are given
+    capitalized first letters.
+ 5. A capital is used for the first letter of key words in historical
+    events.
+ 6. A capital is used for the first letter of religions and many other
+    religious words.
+ 7. A capital is used for the first letter of names of months and days of
+    the week, but not of seasons.
+ 8. Holidays should also be capitalized.
+
+Examples::
+
+  [3] My boss and I agreed that I should make up for the time I  had lost.
+  [4] The Minister of Agriculture and Fisheries
+  [4] The Centers for Disease Control
+  [4] Vice-President Dick Cheney
+  [5] The Battle of Waterloo
+  [5] The Great Fire of London
+  [6] Devout Christians do daily Bible study.
+  [7] After a long, hot summer she married him on a sultry Saturday in September.
+  [8] January 1 is New Year's Day.
+
+Spaces.
+=======
+
+ * Put one space after punctuation.
+ * Put no spaces before punctuation, but always put a space between words.
+ * Put no spaces after periods inside abbreviations.
+ * Put no space before or after an apostrophe.
+ * Put no space on the "inside" of quotation marks (often called "quotes").
+ * Put no space on the "inside" of parentheses.
+
+Some old rules:
+
+ * Put two spaces after colons and between sentences.
+
+Exclamation mark, '!'.
+======================
+
+ * Exclamation marks act as a full stop.
+ * An exclamation mark is most often used to show shock, surprise,
+   horror or pleasure.
+ * No space is needed before an exclamation mark, at least one space
+   after one (two spaces for purists).
+
+Examples::
+
+  Oh! Wow! Brilliant!
+  It was shocking!
+
+Apostrophe, "'".
+================
+
+ * Apostrophes next to the letter ('s) indicate possession or belonging.
+ * They are also used to show missing letters in shortened words, especially in
+   informal writing.
+ * No space is needed before or after the apostrophe.
+
+Examples::
+
+  This is Lynne's web site.
+  It's a nice day today, isn't it? I've got an idea. Let's go out.
+
+Comma, ','.
+===========
+
+ 1. Separate items in long lists.
+ 2. Commas point out brief pauses in a complex sentence or a long
+    prepositional phrase.
+ 3. Comma is included before the conjunction 'and' which comes before
+    the final element of a list (for purists).
+ 4. Introduce a direct quote.
+ 5. Separate appositives (a noun, or noun phrase) or non-defining
+    relative clauses.
+ 6. Use a comma if your subject has two or more adjectives describing
+    it.
+ 7. You do not put a space before a comma, but you do need a space after
+    one.
+ 8. We don't usually put a comma before the word 'and'.
+
+Examples::
+
+  [1] There were a lot of people in the room, teachers, students and parents.
+  [2] The teachers were sitting, the students were listening and the parents
+      were just worrying.
+  [2] Although he wanted to come, he wasn't able to attend the course.
+  [3] I like reading, listening to music, and visiting with my friends.
+  [4] The boy said, "My father is often away during the week on business trips."
+  [4] His doctor replied, "If you don't stop smoking, you run the risk of a
+      heart attack."
+  [5] Bill Gates, the richest man in the world, comes from Seattle.
+  [5] My only sister, who is a fantastic tennis player, is in great shape.
+  [6] The powerful, resonating sound caught our attention.
+
+Colon, ':'.
+===========
+
+ 1. Colons precede a list, an explanation or an example.
+ 2. The colon is used to separate two main clauses where the first is an
+    introduction to the second.
+ 3. To introduce a direct quote (a comma can also be used in this
+    situation).
+ 4. You do not put a space before a colon, but you do need a space after
+    one.
+
+Examples::
+
+  [1] There are two main shopping areas in Nottingham: Broadmarsh Centre and
+      Victoria Centre.
+  [2] The pilot had an awful realization: he had forgotten to turn off the gas
+      at breakfast time.
+  [3] He announced to his friends: "I'm getting married!"
+
+Full stop (period), '.'.
+========================
+
+ 1. Full stops (periods in the USA) go at the end of sentences that are
+    statements.
+ 2. They are also used to mark abbreviations. If such an abbreviation
+    occurs at the very end of a sentence, the final dot is not usually
+    written twice.
+ 3. You do not put a space before a full stop, but you do need at least
+    one space after one (two spaces for purists).
+
+Examples::
+
+  [1] My name is Lynn. I am a teacher.
+  [2] An overhead projector is often referred to as an O.H.P.
+
+Hyphen, '-'.
+============
+
+ * Hyphens are used to connect words or syllables, or to divide words into
+   parts.
+ * You don't use a space on either side of a hyphen.
+
+Examples::
+
+  There were ninety-nine red balloons.
+
+Question mark, '?'.
+===================
+
+ 1. Question marks go at the end of sentences that are questions.
+ 2. You need a question mark at the end of tag questions.
+ 3. For quotes within quotes, use single quotes.
+ 4. You do not put a space before a question mark, but you do need at
+    least one space after one (two spaces for purists).
+
+Examples::
+
+  [1] Is my name Lynn? Of course it is.
+  [2] It's a nice day, isn't it?
+
+Semicolon, ';'.
+===============
+
+ 1. Semicolons are used to separate two sentences that would otherwise
+    be joined with a word such as 'and', 'because', 'since', 'unless' or
+    'while'. 2 To separate groups of words that are themselves separated
+    by commas.
+ 2. You do not put a space before a semicolon, but you do need a space
+    after one.
+
+Examples::
+
+  [1] I'm looking forward to our next lesson; I'm sure it will be a lot of fun.
+  [2] They plan to study German, for their travels; chemistry, for their work;
+  and literature, for their own enjoyment.
+
+Quotation mark (speech mark), '""', "''".
+=========================================
+
+Double quotes '""', single quotes "''".
+
+ * Quotation marks (single or double) are used to show words that are
+   directly spoken (direct speech).
+ * Only the words actually being quoted are enclosed by speech marks.
+ * You need a space before the opening speech mark, but no space after
+   it, and a space after the closing one, but no space before it.
+ * Another general rule is to use a comma after the introduction to
+   quoted speech or writing.
+ * Sometimes when writing a spoken sentence it is split in two. The
+   speech marks must then be placed at the beginning and end of each
+   part of the sentence. Commas are used to separate the spoken part
+   from the rest of the sentence.
+ * If you need a question mark or exclamation mark the markers that
+   punctuate the quoted words are enclosed by the speech marks.
+
+Examples::
+
+  "Could everyone sit down please," said the teacher.
+  Jaime said, "I love you."
+  "I wonder," she said quietly, "whether people will ever truly understand each other."
+  "I don't understand," replied Nathan.
+  "Do you understand?" asked Nathan.
+  "I don't understand!" shouted Nathan.
+  Nathan replied, "I don't understand."
+  Nathan asked, "Do you understand?"
+  Nathan shouted, "I don't understand!"
+  He wrote in 1946 that, "The key word in digital computer is 'digital'."
+
+Ellipsis, '...'.
+================
+
+ 1. Ellipsis used to show that something has been omitted, indicate
+    missing words in an incomplete quotation.
+
+Examples::
+
+  [1] Chomsky suggested that, "Language is a system that...can be described in
+      an algebraic notation."
+
+Dash, '-', '--'.
+================
+
+ 1. The dash should be used when making a brief interruption within a
+    statement, a sudden change of thought, an additional comment, or a
+    dramatic qualification.
+
+Parentheses '()'.
+=================
+
+ 1. Use parentheses to clarify, to place an afterthought, or to add a
+    personal comment. Be sure to include the period after the closing
+    parenthesis.
+
+Examples::
+
+  [1] Steve Case (AOL's former CEO) resigned from the Time-Warner board of
+      directors in 2005.
+  [1] You will need a flashlight for the camping trip (don't forget the
+      batteries!).
+  [1] Most grammarians believe that parentheses and commas are always
+      interchangeable (I disagree).
+
+Brackets '[]'.
+==============
+
+ 1. Use brackets to signify an editor's note in a regular piece of
+    writing. You can also use brackets to clarify or to revise a direct
+    quote so that it appeals to your own writing.
+ 2. The first brackets are rounded, and brackets inside brackets are
+    squared.
+
+Examples::
+
+  [1] "[The blast] was absolutely devastating," said Susan Smith.
+
+Slash '/'.
+==========
+
+ 1. Use the slash to separate "and" and "or", when appropriate.
+ 2. The slash can replace the word "and" to join two nouns.
+ 3. The slash is used when quoting lyrics and poetry to denote a line
+    break. Be sure to add spaces between your slashes here.
+
+Examples::
+
+  [1] To register, you will need your driver's license and/or your birth
+      certificate."
+  [2] The student/part-time employee has very little free time.
+  [3] "Row, row, row your boat / gently down the stream / life is but a dream."
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/www/tmpl/rst.css	Sun Mar 13 18:20:35 2016 +0200
@@ -0,0 +1,127 @@
+html, body, iframe {
+    margin: 0px;
+    padding: 0px;
+}
+.document {
+    max-width: 800px;
+    margin: .5em auto;
+    overflow: hidden;
+}
+
+.header {
+    font-size: 1.2em;
+    text-align: center;
+}
+.header.small {
+    font-size: 0.8em;
+}
+
+div.contents ul {
+    max-width: 600px;
+    margin: 0 auto;
+}
+div.contents ul ul {
+    margin-left: 1em;
+}
+
+a {
+    text-decoration:none;
+    color: hsl(240, 100%, 50%);
+}
+a:hover { opacity: .5; }
+h1 a {
+    color: hsla(0, 0%, 0%, .8);
+}
+h2 a, h3 a, h4 a, .contents a {
+    color: hsl(0, 100%, 25%);
+}
+h1 { text-align: center; }
+div > p:first-child:first-letter,
+h2 + p:first-letter,
+h3 + p:first-letter,
+h4 + p:first-letter,
+h5 + p:first-letter {
+    font-weight: bold;
+}
+
+blockquote {
+    margin: 1em 0;
+}
+ul, ol {
+    margin-left: 1em;
+    padding-left: 1em;
+}
+dl {
+    margin-left: 1em;
+}
+.formula {
+    padding: 0 .5em;
+    background-color: hsl(0, 10%, 95%);
+}
+div.formula {
+    border: 1px;
+    border-left-style: solid;
+    border-right-style: solid;
+    border-color: hsl(0, 100%, 25%);
+}
+.literal-block {
+    margin: 0 0 0 1em;
+    padding: 5px;
+    border: 1px;
+    border-style: solid;
+    border-color: hsl(0, 100%, 25%);
+    background-color: hsl(0, 10%, 95%);
+    overflow: auto;
+}
+tt.literal {
+    outline: 1px dotted orange;
+    padding: 1px;
+}
+table { border-collapse:collapse; margin-left:auto; margin-right:auto; }
+table, tr, td { padding: 3px; border: 1px dotted maroon; background-color: cornsilk; }
+
+pre.code.keyword, pre.code.tag {
+    color: blue;
+}
+pre.code.string, pre.code.preproc  {
+    color: green;
+}
+pre.code.name.decorator, pre.code.literal {
+    color: brown;
+}
+pre.code.comment {
+    color: magenta;
+}
+pre.code span.generic.prompt {
+    color: magenta;
+}
+pre.code span.generic.output {
+    color: gray;
+}
+
+.attention, .caution, .danger, .error, .warning, .important, .hint, .note, .tip {
+    padding: 0px;
+    margin: 5px 0px;
+    text-indent: 2em;
+}
+.hint, .note, .tip { border: green 1px solid; }
+.warning, .important { border: gold 1px solid; }
+.attention, .caution, .danger, .error { border: red 1px solid; }
+.attention p.first, .caution p.first, .danger p.first, .error p.first, .warning p.first, .important p.first, .hint p.first, .note p.first, .tip p.first {
+    margin: 0px;
+    padding: 5px 0px;
+}
+.hint p.first, .note p.first, .tip p.first { background: rgb(176, 255, 176); }
+.warning p.first, .important p.first { background: rgb(255, 233, 176); }
+.attention p.first, .caution p.first, .danger p.first, .error p.first { background: rgb(255, 196, 180); }
+.attention p, .caution p, .danger p, .error p, .warning p, .important p, .hint p, .note p, .tip p {
+    margin: 5px;
+}
+.attention pre, .caution pre, .danger pre, .error pre, .warning pre, .important pre, .hint pre, .note pre, .tip pre {
+    margin: 0 5px 5px 4em;
+}
+
+.def {
+    font-family: monospace;
+    color: hsl(120, 100%, 25%);
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/www/tmpl/rst.tmpl.in	Sun Mar 13 18:20:35 2016 +0200
@@ -0,0 +1,30 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta name=viewport content="width=device-width, initial-scale=1">
+<meta charset="utf-8">
+%(head)s
+%(stylesheet)s
+%(body_prefix)s
+  <div class="header container">
+      [ <a class="reference external" href="README.html">About</a>
+      | <a class="reference external" href="INSTALL.html">Installing</a>
+      | <a class="reference external" href="MISC.html">Misc</a>
+      | <a class="reference external" href="STAT.html">Statistics</a>
+      | <a class="reference external" href="CHANGES.html">Changes</a>
+      | <a class="reference external" href="LICENSE.html">License</a>
+      | <a class="reference external" href="AUTHORS.html">Authors</a>
+      | <a class="reference external" href="HACKING.html">Hacking</a> ]
+  </div>
+  <div class="header small container">
+      <p>
+          Compiled on <tt class="docutils literal"><span class="pre">{date}</span></tt>
+          from rev <tt class="docutils literal">{rev}</tt>.
+      </p>
+      <p>{warn1}</p>
+      <p>{warn2}</p>
+  </div>
+%(body_pre_docinfo)s
+%(docinfo)s
+%(body)s
+%(body_suffix)s