Realtime Singlish Documentation for version 2.01 and higher
Realtime singlish uses the following table/scheme(by default) to convert user's singlish input. And this document will only include the instructions needed to use the default scheme(code.txt), for other schemes please reffer to their own schemes.
|
අ
|
ආ
|
ඇ
|
ඈ
|
ඉ
|
ඊ
|
|
a
|
aa
|
ae
|
A
|
i
|
I
|
|
උ
|
ඌ
|
සෘ
|
සෲ
|
ඏ
|
ඐ
|
|
u
|
U
|
sru
|
srU
|
lr
|
Lr
|
|
එ
|
ඒ
|
ඓ
|
ඔ
|
ඕ
|
ඖ
|
|
e
|
E
|
ei
|
o
|
O
|
au
|
|
අං
|
අඃ
|
|
|||
|
a+q
|
a+Q
|
||||
|
ක්
|
ඛ්
|
ග්
|
ඝ්
|
ඞ්
|
ඟ
|
|
k,c
|
K
|
g
|
Gh
|
nq
|
gh
|
|
ච්
|
ඡ්
|
ජ්
|
ඣ්
|
ඤ්
|
ඥ්
|
|
ch
|
Ch
|
j
|
jh
|
Kn
|
Gn
|
|
ට්
|
ඨ්
|
ඩ්
|
ඪ්
|
ණ්
|
ඬ්
|
|
t
|
T
|
d
|
dD |
N
|
DH
|
|
ත්
|
ථ්
|
ද්
|
ධ්
|
න්
|
ඳ්
|
|
th
|
Th
|
dh
|
Dh
|
n
|
dH
|
|
ප්
|
ඵ්
|
බ්
|
භ්
|
ම්
|
ඹ්
|
|
p
|
ph
|
b
|
bh
|
m
|
B
|
|
ය්
|
ර්
|
ල්
|
ව්
|
|
|
|
y
|
r
|
l
|
v,w
|
||
|
ශ්
|
ෂ්
|
ස්
|
හ්
|
ළ්
|
ෆ්
|
|
sh
|
Sh
|
s
|
h
|
L
|
f
|
|
්ය්
|
ZWJ*
|
|
|||
|
Y
|
x
|
||||
2. How to use Realtime Singlish to enter Sinhala text.* ZWJ - Zero width joiner, you can use this charater to enter Sinhala joined letters(බැඳි අකුරු).
First of all you'd have to turn on Realtime Singlish(from here it'll be refered as 'rsinglish'). To do that extract the package to a localtion in your hard drive and run 'rsinglish.exe'.
Shutdown any other IME applications, keyboard hooking applications, before you start rsinglish(some programs will work with rsinglish without errors but it is not recommended).
Turn on the mode for typing Sinhala by pressing SCROLL LOCK key(if you want to assign another key see "Configuring Realtime Singlish").Now you can type Sinhala according to the Transliteration scheme. For those who are not familiar with this type of typing, the following text explains the basics of using rsinglish.
Rsinglish generates the letters that are not listed on the table in a similar way to the way that we generate sinhala letters ourselves. It just combines swara(ස්වර) with ව්යඤ්ජනාක්ෂර. For instance,
ක = ක් + අ
so the input to get the above character(ක) is, "k+a". The letters inside the brackets are the keys you need to press.
කැ = ක්(k) + ඇ(ae)
therefore, kae=කැ. That means, when you type "kae" කැ will be printed on the screen.
It'll be easier for the program and to the user when letters are generated in a way like that, you'd be able to memorise less individual characters that represent Sinhala letters. Similarly the program reads a smaller file from the hard drive.
To enter බැඳි අකුරු you should use the ZWJ(Zero Width Joiner) to type a ZWJ character press 'x' while you are typing Sinhala with rsinglish. It'll enter a ZWJ charater where the cursor was at the time of pressing 'x'
For instance, if I want to type ක්ෂ I should follow the steps below. The letters inside the brackets are the keys you need to press.
ක්(k) + ZWJ(x) + ෂ(Sha) = ක්ෂ
There are more to it though, letters like ක්ර, ප්ර, ව්ර..etc are outputed when you type kra,pra,wra....etc. And ඏ,ඐ do not behave as true ස්වර which means that they are not combined with other letters, they are there for the completeness of the application.
3. Configuring Realtime Singlish.
There are two ways which you can configure rsinglish, one is file based which means you'd have to edit a file that rsinglish uses the other is GUI based configuration. GUI based configuration is discussed here first.
The main window offers you most of the options to configure rsinglish. To bring up the main window left click on the rsinglish icon(same as rsinglish.exe's icon) on the system tray.
This is the window that is shown to you when you left click on the tray icon. To change the configuring frame(as shown in the next picture) use the scroll bar to the right of the window.Transliteration Scheme files list
The list box in "Options" frame lists available Transliteration text files in the path of rsinglish.exe(root folder). These files must have "code" as the first 4 characters of their filename and should have the extension "txt". You can make new "code" files and put them in the root folder of rsinglish and select them in the list box to use them as your Transliteration Schemes. By default rsinglish comes with one Transliteration Scheme, which is in "code.txt". If you are planning to make a new Transliteration Scheme for rsinglish please refer to "Customising Transliteration".
Start with සිංහල turned on
Application will start with the Sinhala input mode on, when ticked.
Start Minimized
Helper
Application will start minimized to the tray area, when ticked.
Displays a list of matches(letters) that are candidates for what you have typed, this works as you type.
Smart Language Shift
Remembers the language setting(සිංහල or English) for dialog boxes that you interact with.
Language Shifting key
Click on the small text box and press any key on the keyboard to assign a new language shifter key(the default key SCROLL LOCK, will always work). Avoid from assigning keys like ALT, CTRL, A-Z, symbol keys others are ok but Fx (x:2 to 12) is recommended.
Output Engine
SendInput API Engine is the recommended Engine but if it fails to work on any application juat use the Clipboard Engine, it uses the clipboard to paste text into the text field.
3.2 Customising Transliteration(file based)
Every transliteration file for rsinglish has 4 areas, each separated by the text "<end>,<end>". These are,
It is not needed to have all 4 areas, you
can have 4, 3, 2 or 1 area(s) in a tranliteration file. The only
allowed combinations are abcd, abc, ab or a (the letters reffer to the
different areas listed above)
a. ස්වර
Below are the default
contents of this area and descriptions of them, $ is used because the
numbers are in hexadecimal.
# rsinglish default scheme
# This file is in the public domain, anyone can edit these are comment lines, # for the first character makes a line a comment
# and redistribute versions of this file without the
# author's knowledge, how ever do mail the updates to
# me I might bundle them with the rsinglish package.
# - Madura A.
# PS: Read rsinglish Documentation on how to edit this
# file
ex,$0DCA ex is a keyword for the letter creation engine in rsinglish, this is documented below
x,$200D this is a normal ස්වර definition line, x is not a proper ස්වර in සිංහල but the direct
a,$0D85 mapping of English words is used here to define the ZWJ character(0x200D)
aa,$0D86
ae,$0D87 so in this area you can define proper and non proper ස්වර for your usage, for example
A,$0D88 if you want to create a scheme which has explicit definitions for the characters, meaning
i,$0D89 that the letter database isn't generated by the machine, it'll use only the definitions listed
I,$0D8A on the file; that can be done by only using this area! more infomation is documented below.
...
<end>,<end> the mark of ending an area
ex,$0DCA : This is nothing but a
predefined special character to ease up the generation of letters to
explain the reason behind this would take some time and make this more
technical than it is meant to be, so in simple terms 'ex' is the
predefined keyword(which can't be modified) and $0DCA is the Unicode
Hex value for the හල්කිරීම(which is used to generate සිංහල letters,
Tamil can be generated the sameway all you have to do is to give the
Unicode value of the apporpriate Tamil character instead of $0DCA).
For those who are willing to find out why
this was introduced, just think of a way how we are going to define
ව්යඤ්ජනාක්ෂර and හල්කරන ලද ව්යඤ්ජනාක්ෂර in two ways,
a.
k -> ක
k + [some other character] -> ක්
b.
k -> ක්
k + [some other character] -> ක
Both ways are good to make schemes but
1st one is hard for new people trying to use the scheme and the 2nd on
is faster because letters like ක,ට,ප ..etc are widely used in සිංහල and
everytime you'll have to type 2 characters(like in a.) instead of
one(like in b.). Rsinglish' default scheme uses the b. method and
defines [some other character] as 'a' which makes ka - ක, this is what
people are used to. By using this method we have a problem at joining,
k is representing two characters and ka is representing 1 character it
was because of this reason that the ex keyword was introduced so
rsinglish can read both types of schemes. For the 1st type(a.) don't
use a line with ex instead just use a key or word to define හල්කිරීම in
the same area(e.g. w,$0DCA).
b. ව්යඤ්ජනාක්ෂර + special
These are the consonants each letter in this area is joined with a ස්වර modifier, if there are no ස්වර modifiers then it'll not combine.
k,$0D9A these are the normal definitions, ක්, ච් ..etc
c,$0D9A
ch,$0DA0
....
....
Y,$200D $0DBA this is a special one it represents යන්සය, its listed under consonants because the part with
y,$0DBA යන්සය is used like ක්යැ(kYae), ක්යෑ(kYA), ඛ්යෛ(kYei) ..etc on these ස්වර modifiers are combined
r,$0DBB with යන්සය not the actual base character
l,$0DBD
v,$0DC0
w,$0DC0
....
....
dhr,$0DAF $0DCA $200D $0DBB these are special listings too, there is no රකාරාංශය listed here but there is
dr,$0DA9 $0DCA $200D $0DBB a list of letters that are defined with it, this is only to stop people
tr,$0DA7 $0DCA $200D $0DBB writing invalid සිංහල as an alternative රකාරාංශය can be defined the same
br,$0DB6 $0DCA $200D $0DBB way as යන්සය is defined(on some versions of code.txt you may see this)
...
c. ස්වර modifier
Above described ස්වර modifiers are listed in this area, these are combined only with the consonants.
d. Ignore list
The
combinations listed here(in the format
<consonant>,<modifier>) will not be added to the resulting
database of letters. A classic example for this is,
in
code.txt you'll find entries like kr,u this simply means that 'don't
include ක්ර +ු' if the letter is written with out + mark, 'ක්රු'
eventhough a glyph is generated this is utter garbage! We don't need
this in our database what we need is k + ru which translates to කෘ
which is a proper සිංහල character. Note that both combinations result
as 'kru' that's why we need to ignore one.
3.3 Editing smilies.txt
For v2.01 and upper you only need to list
the smily symbols in this file. For v2.00 and below, well you can
DOWNLOAD the new version, which saves a lot of typing for me and alot
of work for you!
The known problems of v2.00 are fixed as
of this writing, you are always invited to drop a mail on my inbox if
any issues are raised.
1. I have a laptop and I'm having trouble switching
languages, what
should I do?
Reason : Most laptops don't have a
separate SCROLL LOCK key, so the virtual key returned when you press
the key combination in a laptop is not the same as the virtual key that
is returned when the SCROLL LOCK of a standard desktop keyboard is
pressed.
Fix : To get around this, just assign some other key that gives the
same virtual key as in a desktop keyboard. i.e. Ctrl key or a function
key(pick a key that isn't used much in applications such as F12)
2. I have put rsinglish on startup, now its not working properlly, what
should I do?
Reason : This happens when
rsinglish.exe is drag and droped in to the startup folder, rsinglish
needs other files on its application directory to run properly.
Fix : Make a shortcut to rsinglish.exe and put it in startup folder or
put a direct link to rsinglish.exe in windows registry.
3. The picture if 'සි' on the main window of risnglish doesn't show,
what should I do?
Reason : There have been a startup
error, mostly an error that wasn't handled by the developer.
Fix : Recheck the files that are needed to run rsinglish, if they are
there still delete the settings.ini and try running rsinglish again. If
that doesn't work out, download the package again and erase the
previous package(keep the settings file if you need to, but if there
was an version update the old settings.ini might not work with the new
version)
4. An IO error comes up on startup, what should I do?
Reason : There are many reasons for
this to happen, mostly it's because of a file(one or more) is missing.
Fix : Just download the package again and extract it or you can delete
the settings.ini and try to run rsinglish.exe, it'll write the default
settings file automatically(note that this will only work if the the
problem was with the settings file)
5. Is rsinglish portable?
Yes, it's fully portable it just
needs the files in it's directory.
6. I have MS Windows 7/Vista, and I recieve error messages("Access Denied" ..etc) and rsinglish doesn't load up on startup.
You can do two things for this, you can disable UAC or you can run the program "As Administrater" everytime.
To do the latter, just goto properties of the rsinglish shortcut in the
startup folder(this is in your programs menu(all programs in XP)) and
check "Run AsAdministrater".
* If you find any more problems other than listed here please mail me, madura[DOT]x86[AT]gmail[DOT]com
* * *
Please do read this documentation thoroughly before mailing me, thank you.
- © 2010 madura.x86 -