Demagog
Speaking Text Editor

User Guide

(edited 2023-09-21)

Chapter 1. What Is It And Why Is It Nesessary?
Глава 2. Installation
Chapter 3. Text Editing
Chapter 4. Read Aloud
Chapter 5. Dictionaries of Pronunciation Correction
       Format DIC
       Format REX. Regular Expressions 
Chapter 6. Stilish speech
       Tags to modify speech synthesis
       Insert Control Tags Automatically
       Phonetic alphabets 
       Reading multilingual texts. Multilingua
Chapter 7.  Make Audio Book by Own Hands
Chapter 8. Print
Chapter 9. Additional Features
       Series
       Customize the appearance of text in the window
       Stats
       Spelling
       Highlighting 
       Bookmarks
       Built-in interpreter
       Call from the command line 
Chapter 10. F.A.Q.
Contacts

Chapter 1. What Is It And Why Is It Necessary?

    It is the simple plain text editor with Text To Speech functions. There are two Speech Application Programming Interface versions for MS Windows: SAPI4 and SAPI5. They are absolutely not compatible between each other, but may work on the one computer.

    There are many speech engines (voices) for SAPI4 and SAPI5.

    Demagog is "Two In One", because it is SAPI4 and SAPI5 compatible.

    If your computer is not installed SAPI4, then you can get it a free online http://activex.microsoft.com/activex/controls/sapi/spchapi.exe  (824 Kb) or visit the author's site  http://aloys.narod.ru/SAPI40.zip .

    Switch SAPI4 and SAPI5: menu item "Speak - SAPI" or press button or press key F12.

 <<

Chapter 2. Installation

    Requires a PC with Windows XP, Vista, 7 or 8, and RAM at least 1 Gb. At least one voice engine must be installed on your computer.

    Download the distributive Demagog.zip. Unpack zip-archive into any folder. After that, you'll find in this folder:

Demagog.exe - executable file
lame.exe - audio-converter WAV to MP3
oggenc2.exe - audio-converter WAV to OGG
wm8eutil.exe - ... to WMA
neroaacenc.exe - ... to MP4
Demagog-*.chm - User Guide
\dic - subfolder for dictionaries of pronunciate correction and homographs, and spelltables, see Format DIC Format REX Spelling Highlighting
\languages - subfolder for language resources
\profiles - subfolder for profiles and backgrounds
\sounds - subfolder for files of sound effects
_Tests_ - subfolder for scripting

    Program does not write to the registry. So, it is a portable program, you can run it even with the stick.

 <<

Chapter 3. Text Editing

    Demagog is the multi-windowed plain text editor with full Unicode support. Supports "Drag and Drop" - to load the text have to drag (hold the left mouse button) a text file  icon on the active Demagog-window. When you download a file in the active window - to  tab number will be added the file name. The exception - the last window, labeled 0, whose name is invariably: "Stats". It displays the results of the various options main menu item "Service - Stats". However, it is also possible to upload files. We need only remember that the output-stats in this window - "replace" the file downloaded earlier.

    Poorly formatted text can be improved by selecting the "Format - Literary Text", or clicking .

    A very useful option "Edit - Find / Replace", which provided a great opportunity to find and replace words in a text. "Replace" is done in seconds, regardless of file size. Note that the DIC / REX / "Fresh Eye" Pattern search will show the entire word / phrase in which a match was found.

    What formats other than "plain" understands Demagog?

Web pages *.html, *.htm, *.shtml, *.xhtml
E-books *.fb2, *.epub
Rich Text Format *.rtf 
Documents MS Word *.doc, *.docx

     The text of these documents will be extracted into the newly created plain text file. Original documents remain unchanged.

     External text converters. Used to load documents, the format of which has not been supporting by the program Demagog. The settings file is ..\profiles\aliens.lst. Command line parameters:

%1 - full name of sourse document (path + name + extension)
%2 - full name of target text (path + name + .txt), sometimes it may be omitted by default
%~p1 - full path of %1
%~n1 - only name of %1 without path and extension

    The command line should be formulated so that the target file is in the same folder and have the same name as the original, but with the extension .txt and target text must be in utf-8. Command line structure:

    Description|.ext1|.ext2|...|.extN=Executable ParametersString

    Description is the string that will be shown in the file open dialog. You can specify any number of converters.

     Pictures from  document MS Word or Fiction Book will not be lost when document converting to plain text. Demagog save them in a folder with the name of the downloaded document and extension .files, provided that in "Service - General Settings... - Pictures" is ticked the option "Show pictures of the documents MS Word; Fiction Book; Web-pages". By default, this option is disabled. Images are displayed to the right of the text, for navigation "back and forth" use buttons . Only formats jpg, jpeg, bmp, png, gif can be displayed. (For an animated gif will be shown only the static first frame). Image size varies proportionally with resizing the window. The boundary between text and pictures can be set by "Service - General Settings ... - Pictures - indented from a left margin". For delete any picture or all pictures use button "Delete" or "Delete All" . In the latter case, the directory  *. files will be deleted immediately. It also will be deleted, if by pressing the delete button, you clean it from all pictures.

    Global key Ctrl+"plus". Pasting text from clipboard. Works regardless of whether the Demagog window is active, inactive or minimized.

   Interruption of long-term processes. Any process that is accompanied by a "progress bar" indicator can be interrupted by pressing the Break. 

 <<

Chapter 4. Reading Aloud

    Choose voice engine from the drop-down list. Load the desired text. Press button "Read Aloud" or key F5. Reading starts from the cursor position. During the reading the text is automatically scrolls.

     Program store the selected parameters of reading, name of the text file and cursor position  in the text. With the new launch Demagog ready to continue from the place where it was stopped last time. You can wean this helpfulness, by the menu item "Service - General Settings... - Others - Do not open the previous file when the program starts".

    Pause read aloud:   or F6; stop read aloud: or F7. The program store up16 names of the latest downloaded files, re-download any of them you can by menu item "File - Recent".

    Read selected text - press F8. Read text from Clipboard - press F9. Read aloud the paragraph in which the cursor stands - press Ctrl+F5.

    Demagog - it is not just a Text To Speech program, but also quite functional text editor.  You can use it to compose love letters, memos, and campaign speeches. In this case, not to be distracted searching for blunders and typos, you can get it to read aloud the text you type. To do this, check "Service - General Options...- Typing - Read aloud". Specify the reading aloud mode: sentence or paragraph, and set the number of repetitions: 1 to 10.

    Global keys "Pause / Continue read aloud", "Stop / Read Aloud" and "Read Clipboard". You can control the reading text aloud while working in other programs. The key combination for this purpose shall be appointed in the "Service - General Settings... - Global Keys".

 <<

Chapter 5. Dictionaries of Pronunciation Correction

    Format DIC. This is a text file with extension .dic. For example:

# This is a comment
1-st=first
c'mon=came on
$UK=United Kingdom
##=number
$$100=one hundred dollars
auto*=avto
*Kbit/s=kilobit per secund
*.com*=dot com
...

    *  denotes substitute part of word (in the beginning, end, inside the word).  $ indicates case-sensitive replacement). $ indicates that the search is case-sensitive replacement. To specify a # and $ just like the characters at the beginning of the rule, they must be duplicated: $$1000000=one million dollars | ##2=number two.

     Rules are applied in descending order of the lengths of their left sides. Control characters * and $ in the computation of length not included. Rules with the same length of the left sides are applied in the order in which are in the dictionary.

    Show / Hide dictionaries: "Speak - Dictionaries" or press F10 or button . To use dictionary, it should be marked. At the same time could be used several dictionaries.

    Dictionary editing: Enter or DblClick on dictionary name. The dictionary will be opened for editing in the "0 - Stats".  

    Do not forget to save your changes in the dictionary by clicking Ctrl+S or press button . Then the changes made to the dictionary takes effect. Sometimes you want to see the replacement made in the text. Ctrl+J will show the changed text and the use of pronunciation rules. Not all, but only selection, but not more than 1024 characters. If no text is selected, then 1024 characters from the cursor position.

Note:

The rule of pronunciation - is a list of patterns to search for words in the text, and (after the equals sign), the corresponding replacements. For example: can't=cannot - a strict pattern matching and replacement. If number of replacements more number of patterns, the extra replacements are perceived as one: $Unites States=United States of America. If number of replacements is less than number of patterns, then the words matches patterns without any replacements will be ignored: $Russian Federation=Russia
The special case when the rule contains detached asterisks. If the left side of the rule contains asterisks only, then the rule is considered as a one pattern and a replacement. Examples: * * *=... new chapter ... | *= | *****=five stars. Otherwise detached star is a pattern along with others. The detached star matches any word in the text, and replacement shall not apply.
For example, the next rule mr. * OK=mister invited  give as the results:
mr. Smith OK => mister Smith invited | mr. Harrison OK => mister Harrison invited | mr. Ford OK => mister Ford invited
Unlike traditional practices, the rules apply to the text is not a one time, but as long as long as possible. For example, rules: *^*= | dragonfly=elephant and text: d^r^a^g^o^n^f^l^y. Rule with a greater length of left side applyed first, ie dragonfly=elephant. Not match, no substitutions. Then, the rule *^*= executed. Result: dragonfly. Here, the traditional algorithm would finish work, but Demagog continue. Now rule dragonfly=elephant may be successfully executed! Fynally: elephant.
Instead of the = sign you can use an alternative delimiter :: (double colon). For example: <=::less than or equal | <==::left arrow | = = =:: ...new chapter...

Attention. Option the "Edit - Find / Replace - Search pattern DIC" - search pattern and replacement are made, respectively, as the left and right sides of the rules in the dictionary format DIC.

    Format REX. Regular Expressions. It is a very effective but hard to understand. More...

# Comment
# For case sensitive first symbol must be "Commercial At"
@Regular expression=Replacement
Regular expression=Replacement

     Rules of REX-dictionary are executed in the order in which they are written, one after another. If both dictionaries DIC and REX are used, then REX dictionaries-substitutions performed first. Regular expression in Demagog based on module SkRegExp, created by Shuichi Komiya.

Characters and sequences that can be used

\ Marks the next character as either a special character or a literal. For example, "n" matches the character "n". "\n" matches a newline character. The sequence "\\" matches "\", "\(" matches "(" and "\=" matches "=".
^ Matches the beginning of input.
$ Matches the end of input.
* Matches the preceding character zero or more times. For example, "zo*" matches either "z" or "zoo".
+ Matches the preceding character one or more times. For example, "zo+" matches "zoo" but not "z".
? Matches the preceding character zero or one time. For example, "a?ve?" matches the "ve" in "never".
. Matches any single character except a newline character.
(pattern) Matches pattern and remembers the match. The matched substring can be retrieved using the special character $N, where N is the Nth parenthetical statement in the regular expression. To match parentheses characters ( ), use "\(" or "\)".
x|y Matches either x or y. For example, "z|food" matches "z" or "food". "(z|f)oo" matches "zoo" or "foo".
{n} n is a nonnegative integer. Matches exactly n times. For example, "o{2}" does not match the "o" in "Bob," but matches the first two o's in "foooood".
{n,} n is a nonnegative integer. Matches at least n times. For example, "o{2,}" does not match the "o" in "Bob" and matches all the o's in "foooood." "o{1,}" is equivalent to "o+". "o{0,}" is equivalent to "o*".
{n,m} m and n are nonnegative integers. Matches at least n and at most m times. For example, "o{1,3}" matches the first three o's in "fooooood." "o{0,1}" is equivalent to "o?".
[xyz] A character set. Matches any one of the enclosed characters. For example, "[abc]" matches the "a" in "plain".
[^xyz] A negative character set. Matches any character not enclosed. For example, "[^abc]" matches the "p" in "plain".
[a-z] A range of characters. Matches any character in the specified range. For example, "[a-z]" matches any lowercase alphabetic character in the range "a" through "z".
[^m-z] A negative range characters. Matches any character not in the specified range. For example, "[m-z]" matches any character not in the range "m" through "z".
\b Matches a word boundary, that is, the position between a word and a space. For example, "er\b" matches the "er" in "never" but not the "er" in "verb".
\B Matches a nonword boundary. "ea*r\B" matches the "ear" in "never early".
\d Matches a digit character. Equivalent to [0-9].
\D Matches a nondigit character. Equivalent to [^0-9].
\f Matches a form-feed character.
\n Matches a newline character.
\r Matches a carriage return character.
\s Matches any white space including space, tab, form-feed, etc. Equivalent to "[ \f\n\r\t\v]".
\S Matches any nonwhite space character. Equivalent to "[^ \f\n\r\t\v]".
\t Matches a tab character.
\v Matches a vertical tab character.
\w Matches any word character including underscore. Equivalent to "[A-Za-z0-9_]".
\W Matches any nonword character. Equivalent to "[^A-Za-z0-9_]".
\num Matches num, where num is a positive integer. A reference back to remembered matches. For example, "(.)\1" matches two consecutive identical characters.
\xn Matches n, where n is a hexadecimal escape value. Hexadecimal escape values must be exactly two digits long. For example, "\x41" matches "A". Allows ASCII codes to be used in regular expressions.
\x{n} Matches n, where n is a hexadecimal escape value. Hexadecimal escape values must be exactly four digits long. For example, "\x{00dc}" matches "Ü". Allows Unicode codes to be used in regular expressions.

 

Attention. Option the "Edit - Find / Replace - Search pattern REX" search pattern and replacement are made, respectively, as the left and right sides of the rules in the dictionary format REX.

 <<

Chapter  6. Stilish speech

    Not only the pronunciation of individual words can be wrong. A real speaker usually makes small pause before starting a new paragraph. More loudly says direct speech. We would like to teach Demagog this demagogic methods. This problem is solvable.

    Tags to modify speech synthesis. This is a special commands to be included in the text.

Basic Control Tags SAPI4

    They are not case sensitive, but whitespace sensitive.  I.e. any space between the symbols of the tag makes it invalid. It will be read aloud as a set of letters.

\Pau=number\

Pauses speech for the specified number of milliseconds. Example: \Pau=1000\

\Pit=number\ Sets the base pitch of speech mode to the specified value in hertz. Example: \Pit=90\
\Spd=number\ Sets the baseline average speed of speech mode to the specified number of words per minute.
\Vol=number\ Sets the baseline speaking volume for speech mode. (0 - silent, 65535 - maximum)
\Rst\ Undo all previously set tags.

 Basic XML Tags SAPI5

<silence msec= "number"/> Inserts a specified number of milliseconds of silence into the output audio stream. This tag must be empty, and must have one attribute, Msec. Example: <silence msec= "1000"/>
<pitch absmiddle="number"/> or <pitch absmiddle="number"> ... </pitch absmiddle>

Controls the pitch of a voice. The tag can be empty, in which case it applies to all subsequent text, or it can have content, in which case it only applies to that content. Examples: <pitch absmiddle="-10"/> <pitch absmiddle="10"/> <pitch absmiddle="0"/>

<pitch middle="number"/> or <pitch middle="number"/> ... </pitch> Controls the relative pitch of the voice. The absolute value is found by adding each Middle to the current absolute value (from -10 to +10). Examples: <pitch middle="5"> This text should be spoken at pitch five. <pitch middle="-5">  This text should be spoken at pitch zero. <pitch> </pitch>
<rate absspeed="number/"> or <rate absspeed="number"> ... </rate>

Controls the rate of a voice (from -10 to +10). The tag can be empty, in which case it applies to all subsequent text, or it can have content, in which case it only applies to that content.

<rate speed="number/"> or <rate speed="number"> ... </rate> Controls the relative rate of a voice (from -10 to +10).
<volume level="number/"> or <volume level="number"> ... </volume>

Controls the relative volume of a voice  (from 0 to 100. 100 is default volume). The tag can be empty, in which case it applies to all subsequent text, or it can have content, in which case it only applies to that content.

<emph> ... </emph> Makes voice engine change intonation in the pronunciation of the text. The tag can not be empty
<spell> ... </spell> Makes voice engine to read the text letter by letter. The tag can not be empty. Tag will be useful when the word is an abbreviation
<pron sym "..."/> Voice engine reads aloud phonetic transcription. Not all voice engines support this tag
<voice required="voice_name"> ... </voice> Reads the text in the specified voice

    Insert Tags Automatically. This can be done using a special dictionary format REX. Rules in this dictionary intended to search for an empty string; indentation; words with multiple punctuation (ie, containing more than one character, "...", "..", "?!", "!!!", etc.) - and paste these places control tags for short pauses. You can also create regular expressions to search for the beginning and end of direct speech - and inserting tags to indicate the volume and timbre of direct speech of the characters. This dictionary "stylish speech" can not be universal and should be established taking into account the rules of punctuation particular language.

     Phonetic alphabets. Phonetic alphabet contains a combination of letters, numbers and special characters. Each combination is called "phoneme". Phonemes - are the primary elements of the language. They can most accurately display the pronunciation of a word. Widely known for the International Phonetic Alphabet (IPA). On this basis, Microsoft has developed a computer-readable phonetic alphabets. Tag SAPI5 <PRON SYM> support them, and can be used to insert phonetic transcription instead of the word, which the voice engine speaks wrong. The menu item "Edit - Phonetic transcription (Shift+F1)" will help you to do this.

     Reading multilingual texts. Multilingua. The voice engine reads the texts in the language for which it is intended. How to be, when it is necessary to read the text written in several languages? Typical solution: insert in the text in the right places the SAPI5 tag for changing the voice. Here is an example of switching from Russian to English: Привет, мир! <voice required="Name=Microsoft Zira Desktop">Hello, World</voice>. It looks rather cumbersome. But it works. Of course, the corresponding Russian and English voices should be installed on the computer.

     Another way of reading Russian-English texts: "Speak - Multilingua". When it is on, the program performs the voice change commands inserted into the text: {{VoiceName, Rate, Pitch, Volume}}. The default values for rate, pitch and volume are 0, 0, 100. Example: {{Tatyana}}Привет, мир! {{Anna}}Hello, World! {{Kyoko}}こんにちは世界!

     Multilingua is only available under SAPI5. State "on" is indicated by a tick in the menu and a message in the status bar.

   <<

   Chapter  7. Make Audio Book by Own Hands

    Nothing could be easier. Click a button or press Ctrl+M and wait until the process is complete. Audio file will be created in the same directory where the text is placed. Type of audio filet will be mp3, ogg or wav - depending on what is specified in "Service - General Settings... - Audio".

     What is the difference between formats WAV and compressed MP3 or OGG? WAV-file have the best sound quality, but also the huge size. The voice engine always create the audio in WAV. At the same time, the popular MP3 format allows to reduce the size of audio files, but with the loss of sound quality. The same applies to a relatively new format OGG. Lame and Vorbis are open source projects, and are distributed online for free.

    When WAV-file will be created then will executed the external program LAME.EXE for converting to MP3 or OGGENC2.EXE for converting to OGG. Both are included in the Demagog installation kit.

     Both converters are highly customizable. Easy automatic method:  you choose settings from the list of "Bitrate" and / or "Quality" in the menu item "Sercice - General Settings... - Audio".  Advanced users can specify more complex settings manually. For example, for LAME: -b128 -h -m m --strictly-enforce-ISO. The results of the manual input is retained, until you again have selected automatic settings.

     The general rule for MP3 and OGG: the smaller file size, the worse the sound quality. Have to find a compromise. After completion of converting, a pre-created WAV-file will be deleted.

     If selected type WAV then coding is not performed. WAV-file remains alive and well. It will be a fine sound quality and tremendous size.

    Batch audio recording. When you run the menu item "Service - Batch Audio Recording..." opens a dialogue of multi-select choice. For all the selected text files will be sequentially created audio files. The names of audio files - such as in the original text, and they will be placed in the same directory.

    When menu item "Service - General Settings... - Series - Record audio file like series" is checked then, if the text file is large enough, it will automatically be divided (according to the settings for the series) on a set of smaller, which deleted after their converting to the audio files. Audio files will  be placed into subdirectory "Name of the text".audio.

    Note. The text file can be copied to the Demagog window from the clipboard and have not yet saved under any name. But it may be converted to the audio file with an automatically generated name, and be placed in the working Demagog directory. If text file converted to series, in the working Demagog directory will be created a subdirectory with the audio files with an automatically generated names.

    Custom Encoder. This is a user-designated converter. There are many console utilities for converting WAV to other formats. Place the utility executable file in the working folder of Demagog. In the audio settings, enter: the name of the executable file, the parameter line, the type of the output file. Instead of an executable file, you can specify a bat-file, in which the executable file is accessed. If the utility is not placed in the Demagog folder, then its name must be specified along with the full path.
    Some converters (or bat-files containing references to them) require you to specify the full path, even it are in the working folder of Demagog. Then write name with the prefix % ~ meaning the working folder Demagog. For example: % ~conv.bat 

 <<

Chapter  8. Print

     The printing is done through an automatic appeal to the Windows application, associated with text files printing. Typically, this is Notepad.exe. Note that the font and page settings will be taken from this application.

 <<

Chapter 9. Additional Features

     Series. For large texts audio recording requires a long time and even MP3 / OGG audio files are too large. Therefore provides the possibility of split large text into separate files. Menu item: "Service - Create Series". In the directory where the text is loaded, will create a subdirectory with the name of this text. For example, for "The Hot Rock.txt - subdirectory "The Hot Rock". In this directory will be placed files:

0001_The Hot Rock.txt

0002_The Hot Rock.txt

0003_The Hot Rock.txt

etc.

    Their size (number of characters) can be set in "Service - General Settings... - Series".

 <<

    Customize the appearance of text in the window. Demagog convenient for ordinary reading of the text on the screen.

    "Format - Font..." and "Format - Background..." allow easy choice of font and the background color. "Format Wrap Words" or Ctrl+W - a lines of text is always placed in the window, regardless of font size. Wrap words on / off  not really affect the text, but only on its appearance in the window.

    You can zoom in / zoom out the text without changing the font size, hold down the left mouse button and rotate the wheel. The scale can be varied from 10% to 500%.

 <<

    Stats. The results of this menu item displayed in the window with the same title.

    Menu items: "Modified Text", "Rules Application", "Names and Abbreviations" and "Compare Files" - show modified text with all lexical substitutions; "minimal vocabulary" - only those rules from the dictionary, that were applied to the text; a list of the names and abbreviations in the text; as well as results of  the two files comparison.

     The names and abbreviations are searched using empirical algorithm, so some errors are inevitable.

    Comparison of files - you can analyze "similarity" of two text files. The resulting file is sorted in alphabetical order.

  <<

    Spelling. Demagog.zip contains a special dictionary (so-called "spelltable") !!EN.orfo. If it is checked in dictionaries panel, then English spell checker is available. Similar tables can be created for any Indo-European language.

     Used the so-called N-Gramm method for N = 5. I.e. file *.orfo contain valid 5-letter combinations. Words shorter than 5 letters are included in its entirety. Since names and abbreviations are not subject to the laws of language, their inclusion into spelltable not recommended. Structure of spelltable are described  here.

    Press F4 to verify the spelling of any selected text. Ctrl+F4 adds to spelltable all 5-Gramms from the selected text. Shift+Ctr+F4 removes the 5-Gramms from spelltable for the selected text. For Russian language 5-Gramm method works good. Hypothesis: it must work good for all alphabetic languages. So, you can try to compose new spelltable for your native language.
    While compose
the spelltable not plug in the rare, exotic word forms. Removing some "bad" word forms, remember that removes all its 5-Gramms. Among them may be good 5-Gramms, generated by others, are perfectly normal words. Hence the rule: if you need add and delete the word forms, removal makes the first.

    Practice shows that the most effective spelltable size is about 100 thousand items, based on vernacular vocabulary.

    Highlighting. TThe menu item "Service - Spelling - Spelling" enable / disable text highlight misspelled words. Note that since spelltable was created without proper names and place names, they also will be highlighted. Get rid of it "Service - Spelling - Do Not Check Words With Capital Letters".

     The menu item "Service - Spelling - Homographs" enable / disable highlight homographs. It uses homographs dictionaries *.hmg - for various voice engines. They are placed in a subdirectory "dic" of the working directory of the program and visible in the list of dictionaries. In the menu "Edit - Change" you can choose to replace with the proper accent.

     "Service - Spelling - Fresh Eye" highlight the same or similar close standing words. To change the "sensitivity" of the search must enter in "Service - General Settings... - Fresh Eye". The parameter "Depth context". It indicates how many words checking forward. Range: 1 to 20. The best level: 5..6. The parameter "Level of similarity" can be varied from 1 to 100. 1 - words are recognized like with extremely low similarity; 100 - requires an exact match of words. The best level: 40..45.

 <<

    Bookmarks. You can use "bookmarks" for ease navigation through the text. If pressing Ctrl+F3 then the program remembers the current cursor position and line of text following it. Viewing and selection of bookmarks performed by pressing Shift+F3. If there is text selected, then bookmark is remembered only selected text.

    The menu item "Create Table Of Contents" uses rules based on regular expressions from a file profiles/headers.re. Rules drawn up for Russian and English. An experienced user can change them.

    Attention! For MS Word documents of the .docx type, automatic recognition of the "embedded table of contents" is implemented. If such a table of contents is present in the docx file, then when the file is opened, it will be converted to the Demagog bookmark list.

    Built-in interpreter. Demagog can perform pre-defined commands in a text file. This text containing only the commands and comments to them, called a script. Scripts runs by the built-in interpreter. Example scripts are included in the Demagog installation pack. The language of the built-in interpreter is the widely known scripting programming language Lua. The best guide: Roberto Jerusalimschy "Programming in Lua", in electronic form can be found on the Internet.

     Scripts must have the .lua extension and be located in the _Tests_ folder. In the scripts menu, you can navigate through subfolders you created in the _Tests_ folder.

   << 

    Call from the command line looks like this: Demagog.exe file_name parameters_list. List of parameters - optional. Parameters in the list are separated by spaces, and can be in any order. Their meanings are as follows:

/m - start the program minimized to an icon
/r - open file and read aloud
/s - open file and read the text to audio file
/c - read clipboard aloud
/q - quit after the reading's completion
/a "script name.lua" - start the program and execute the script

     For example:

     start /min Demagog.exe "d:\Books\prophet.txt" /a "d:\Demagog\_Tests_\YaTTS.lua" /m /q 

 <<

Chapter  10. F.A.Q.

    ?? How the program govern the volume of the speech?

     !! This function is given to the operating system - the icon "loudspeaker" in the system tray. Before recording audio file is recommended to set the volume to maximum.

    ?? How to know what voice engines installed on the computer?

    !! See drop-down "List of Speakers" at the top of the program window.

    ?? The voice says "space" every time, when a text contains a nonbreak space. How to fix this?

    !! "Edit - Find / Replace - Replace". Search mode: "extend". Text to search: #160 . Instead of the replacement text, enter one space. Click the "Replace All" button.

    ?? What is the role Demagog among other similar programs?

    !! Published in 15 languages, the magazine "CHIP" №5 / 2014 in the article "Learning computer talk" has revealed the Top-5 "Software for managing speech engines":  TextAloud, Demagog, MP3book2005, Web service iSpeech, Balabolka.

 <<

Contacts

     Bug reports and suggestions for improving the program send on e-mail:  lotonges@gmail.com или n1d3@yahoo.com Benedict Lee.

 <<