smashgen / keyboardlayouteditor Goto Github PK
View Code? Open in Web Editor NEWAutomatically exported from code.google.com/p/keyboardlayouteditor
Automatically exported from code.google.com/p/keyboardlayouteditor
The physical F and J keys have a small bump on them so that when typing you
can feel and orient properly your hands.
It would be nice to have these shown on the visual keyboard so that the
users can orient themselves (especially when starting with a blank layout).
Original issue reported on code.google.com by [email protected]
on 7 Sep 2008 at 4:48
The keyboard background color is quite light, making it difficult to
distinguish between the keys, especially when the layout is quite full of
characters.
1. Make keyboard background slightly darker
2. Increase the spacing between the keys (from 5 to 6 pixels).
Original issue reported on code.google.com by [email protected]
on 8 Sep 2008 at 2:44
Currently each key has the same colour on its surface.
It would be desirable for levels 3,4 to have a stronger/weaker highlight
from 1,2, so that they are easier to distinguish.
Original issue reported on code.google.com by [email protected]
on 9 Sep 2008 at 10:39
In GNOME, when you drag an item, you can program the operation so that a
custom image is shown instead of the generic document icon.
We should create a custom image when we drag and drop the dead keys to the
keyboard.
Original issue reported on code.google.com by [email protected]
on 7 Sep 2008 at 4:54
What steps will reproduce the problem?
1.
2.
3.
What is the expected output? What do you see instead?
Please use labels and text to provide additional information.
Original issue reported on code.google.com by [email protected]
on 7 Sep 2008 at 3:39
What steps will reproduce the problem?
1. Install Greek Polytonic Keyboard Layout in Ubuntu/GNU/Linux distro
2. type the :; key and then a vowel, such as "a"
3. the Tonos appears on top of the vowel, instead of the oxia!
What is the expected output? What do you see instead?
It is supposed to output U+1FFD GREEK OXIA, but instead it outputs U+0301
COMBINING ACUTE ACCENT or U+00B4 ACUTE ACCENT, which is no good (notice these
unicode values correspond to the dead_acute ONLY, not the vowel that it calls
to form one unicode character with an accent.
What version of the product are you using? On what operating system?
Guys, no offense, but for the love of Jesus or whatever you believe in I can't
figure out how to install this program. It would be very nice If you had a step
by step SIMPLE way in the front page on how to isntall this
Please provide any additional information below. Here you go:
-------------------------------------------------
Change Key Bindings for Modifier Character in Keyboard layout
Hi everyone,
I have a severe problem; any help to resolve this would be appreciated. (This
does not happen in MS Windows!!! Grrr)
(YOU DON'T NEED TO KNOW HOW TO WRITE IN ANCIENT GREEK TO HELP ME WITH THIS - I
PROVIDE THE UNICODE CHARACTER NUMBERS - JUST TELL ME HOW TO CREATE THE BININGS,
BUT READ ON, PLEASE)
I use Ubuntu 10.04, Openoffice 3.02 and I need to be able to write correctly in
Ancient Greek. My keyboard layout model is set to Dell PrecisionM65 (I have a
Dell Inspiron 9400 laptop, but this is the exact match from the list -- my
exact model does not appear, all other keyboards do not look right or respond
correctly). I have two keyboard layouts: USA and Greece Polytonic. I switch
between keyboard layouts using Ctrl+Shift, in case it matters.
Recently, I downloaded this awesome Ancient Greek Spellchecker, which takes
care of much hassle in mistakes concerning diacritics (diacritics are little
symbols on top of vowels, such as what you would commonly know as: acute
accent, acute grave, etc, also known to us classicists as daseia, psili, oxia,
baria, perispomene, upogegrammene, dialytika, etc.).
However, I noticed that the diacritic associated with the Oxia (the acute
accent -- it looks like a tiny frontslash but on top of a vowel) that my
computer outputs, is not correct, which also results in the spell checker
"seeing" words that are spelled correctly as incorrect. On a closer inspection
one notices that what is supposed to be outputed as an Oxia is not bound to the
keys it is supposed to, but my computer outputs a Tonos instead. This
difference goes far beyond the simple issue of making the typing of words
"appear" correct, or be suitable for the spellchecker, whose settings are
correct by the way. It is a matter of setting the Operating System to output
key bindings correctly, and it also matters for educational reasons, when
typing serious texts.
In order for you to understand the problem, you need to know a tiny bit of
history. In ancient Greek, the Oxia is used to signify high pitch in the
pronunciation of a word. In modern Greek, the Tonos is used to signify stress
in the pronunciation of a word. The difference between the two is also in
writing: the oxeia is literally like a tiny frontslash over the vowel, while
the Tonos is like a straight vertical line over the vowel. This must be
corrected. For some reason when I type an Oxia using the Greek Polytonic
keyboard layout, I get a Tonos. It is either that the keys are incorrectly
bound, or that it overrides it somehow.
For your visual reference, the common diacritics are:
1. oxia: ά
2. baria: ὰ
3. perspomene: ᾶ
4. psili: ἀ
5. daseia: ἁ
6. upogegramene: ᾳ
and combinations of these.
Only the first example above concerns us and only in a specific case.
Everything seems fine at a first glance. But compare 1. (oxia) "/" against 2.
"\" (baria); obviously #2. is correct, and #1 should be just as slanted as #2
and in the opposite direction, to the right. Instead, my system picks up the
input from a Greek Polytonic layout and outputs a Tonos "|" (straight down) in
place of an Oxia "/". Even the letter Alpha is different!!!
Now here's the catch: when I type a combintaion of a diacritic that contains
the Oxia, my system outputs the Oxia correctly, and does not give me a Tonos
over the vowel!
ἄ (alpha with psili and oxia) U+1FFD GREEK OXIA (plus psili plus alpha)
ά (alpha with just oxia) U+0301 COMBINING ACUTE ACCENT or U+00B4 ACUTE ACCENT
(plus alpha)
(THE UNICODE NUMBERS ABOVE REFER TO THE ACCENT/OXIA NOT THE WHOLE CHARACTER
(ACCENT/OXIA AND CHARACTER), BECAUSE THE ACCENTS/OXIA THEMSELVES ARE MODIFIERS)
There is obviously a problem with the keyboard bindings! The mapping is
correct. It should call U+1FFD GREEK OXIA instead ofU+0301 COMBINING ACUTE
ACCENT or U+00B4 ACUTE ACCENT when I press the corresponding key.
--------------------------------------------------------------------------------
----------------
After some digging around, I managed to get as far as here, but I'm stuck. Any
help would be appreciated.
One solution is to use the Extended Greek keyboard layout and type using
Palatino Linotype font, which contains characters for the second Unicode block,
that contains the Oxia, so it will correctly choose the Unicode output
bindings. I have not tested it with other fonts, except the following, and does
not work with them: Sans Serif, Times New Roman or Arial. However, the extended
Greek keyboard is cumbersome to use because the accents and diacritics in
general are all in the third level/modifier of the keyboard (first is just
regular typing, second level is using shift, third level is using AltGr fourth
level is Shift+AltGr... Not your ideal situation, when you want to type fast,
or you are used to typing a certina way for a few years, unless you want to
remake a keyboard layout.
Another solution is to create your own keyboard layout... It's doable, it will
just be a bit of work, I'm willing to do it, but maybe someone can tell me how.
I'm willing to do it, based on the Polytonic Greek layout, as we merely have to
change the all unicode bindings for vowels with TONOS to unicode bindings to
vowels with Oxeia...
A third solution is that we can change the kecode keymap for the specific key
that calls the unicode TONOS/Acute Accent so that it calls the unicode Oxeia,
BUT NOT FOR THE USA KEYBOARD LAYOUT. This seems to me to be the best way and
easiest way to tackle the problem. By extension, we could merely change the
keymap settings one by one or we could replace certain things inside
keysymdef.h.
The character that the Greek Polytonic Keyboard Layout has assigned for the
output of the Oxia is the key : ; to the left of the Enter key.
It produces U+0301 COMBINING ACUTE ACCENT or U+00B4 ACUTE ACCENT instead of
only just U+1FFD GREEK OXIA, so after a vowel is keyed in, it leads the
computer to make use of the unicode bindings associated only with the Tonos,
not the Oxia, unfortunately. LIke I said, if another diacritic is typed in over
the vowel together with the Tonos or the Oxia, (such as a (Psili, like an
apostrophe), or a daseia (an apostrophe in the oposite direction) or whatever),
the correct unicode block is evoked, and the Tonos is appears correctly as an
Oxia.
--------------------------------------------------------------------------------
------------
In our case, the key I want to change, is the key that has the following two
symbols on it, (if you use a USA keyboard layout): : ; .
We just need to tell Linux to go to the unicode block that has the OXEIA not
the TONOS when we press : and then the vowel. (Pressing "Shift+:" produces a
psili, so immediately we are taken to the correct (extended) unicode block).
The problem here is that the monotonic system overrides the Polytonic system in
cases where only an Oxeia appears, thereby replacing it with a Tonos)
-----------------------
So, here it goes:
1. I HAVE IDENTIFIED THE KEYMAP CODE FOR my : ; KEY. Mine happens to be the
number 47, (after using xev in a terminal).
Mine returns:
Keyrelease Event, Serial 36, synthetic NO, window, 0x50000001,
root 0x108, subw 0x0, time 6205231, (65, 109), root: (1102,635),
state 0x0, keycode 47 (keysym 0x3b, semicolon), same_screen YES,
XLookupString gives 1 bytes: (3b) ";"
XFilterEvent returns: False
then I typed in the terminal:
xmodmap -pke | grep 47
I used 47 because that's my keycode for the key in question. My terminal
returns:
keycode 47 = semicolon colon dead_acute dead_abovecomma leftsinglequotemark
minutes leftsinglequotemark
keycode 147 = XF86MenuKB NoSymbol XF86MenuKB
keycode 247 =
The list that I see tells me that for Key 47 the following bindings are
present, in sequence of level/modifier:
semicolon (regular keystroke)
colon (Shift+ keystroke)
dead_acute (AltGr+ keystroke)
dead_abovecomma (AltGr+Shift+ keystroke)
leftsinglequotemark
minutes
leftsinglequotemark
Fifth and sixth level I do not know... I thought keyboards had four levels of
modifiers (Typewriters had only two (regular and Shift)...so we are still
learning.. .I wonder how those extra two levels are accessed... anyway...). The
changes appear to be immediate.
In any case, I am not sure if this is what i want to change! when use me USA
keyboard layout, I don't want it to type an Oxia when i press that key. Here is
what this key outputs as it is:
; just regular keystroke
: with shift
‘ with Right_Alt (a.k.a. AltGr) (nothing to do with Baria)
′ with Right_Alt+Shift (nothing to do with Oxia)
I installed x11proto-core-dev, ("sudo apt-get install x11proto-core-dev")
without the quotes. Then after some digging around, I finally found the Keysym
lists that we need in order to assign the correct name, I mean, I call it
Oxeia, you call it Oxia, and the Kesyms list may have it as
OXEIA_Greek_Unicode, or called it Funny_Looking_FrontSlash, I don't know, we
are looking for the mnemonic name or the number that corresponds to the Oxeia.
So anyway, this list should is in the file: "/usr/include/X11/keysymdef.h"
without the quotes. There I read:
[blah blah blah...]
* This file is also compiled (by src/util/makekeys.c in libX11) into
* hash tables that can be accessed with X11 library functions such as
* XStringToKeysym() and XKeysymToString().
*
* Where a keysym corresponds one-to-one to an ISO 10646 / Unicode
* character, this is noted in a comment that provides both the U+xxxx
* Unicode position, as well as the official Unicode name of the
* character.
[blah blah blah...]
* the following algorithm shall be
* used. The new keysym code position will simply be the character's
* Unicode number plus 0x01000000. The keysym values in the range
* 0x01000100 to 0x0110ffff are reserved to represent Unicode
* characters in the range U+0100 to U+10FFFF.
[blah blah blah...]
* When adding new keysyms to this file, do not forget to also update the
* following:
* - the mappings in src/KeyBind.c in the repo
* git://anongit.freedesktop.org/xorg/lib/libX11
*
* - the protocol specification in specs/XProtocol/X11.keysyms
* in the repo git://anongit.freedesktop.org/xorg/doc/xorg-docs
Can somebody tell me please for the love of Jesus, Zeus, or Allah, or anything
you believe in!
1. How do I go from 0x01000000 to U+1FFD?? (Are these Hexadecimal values?) and
how do I type this value instead of a name (such as dead_accent) or whatever
into xmodmasp for a key corresponding to the Oxia and not the Tonos???
2. How do I update the mappings in src/KeyBind.c in the repo? and the protocol
specification in specs/XProtocol/X11.keysyms that it mentions in that file???
and Why?
3. What are XStringToKeysym() and XKeysymToString(). and how do I use them?
4. How do I change things in this file keysymdef.h directly? I also read
somewhere that someone can change the keyboard layout file as well. I found it
in
In any case...
Then, after I figure all this out, am I supposed to be able to put my Oxeia in
the third level of symbols, so first will be semicolon, then colon, then Oxeia,
then all the rest of the trash they key has assigned to it?
I Opened a terminal and I typed, the following anyway to test what I know so
far, until someone answers me the above questions and this thread in general:
xmodmap -e 'keycode 47 = dead_acute'
but nothing happens anymore when I type using the Greek Polytonic Layout.
However, I can now type accents above any vowel in English, like this: é
However, we only want to change the output for the Greek Polytonic Keyboard
layout!!!
Below I have pasted the information someone may need to help out.
I WANT TO CHANGE THE BINDING FOR THE GREEK POLYTONIC KEYBOARD LAYOUT (WHERE IS
THE FILE FOR THIS KEYOBOARD LAYOUT SAVED IN UBUNTU? AND HOW DOES IT ACCESS
keysymdef.h OR DOES IT?
Is there a way to just do this, but so that it affects only the Greek Polytonic
keyboard layout and not my USA keyboard layout, and so that "xxxxx_xxxx" calls
the Polytonic Unicode character called Oxia, found in the second unicode block,
known as U+1FFD GREEK OXIA :
xmodmap -e 'keycode 47 = semicolon, colon, xxxxx_xxxx dead_abovecomma
leftsinglequotemark '
I don't know what the hell to type there, obviously the dead_acute didn't work,
because it evoked a tonos. I tried oxia, and stuff, but it returns an error. I
think what needs to be done is tell it to call U+1FFD GREEK OXIA even though it
thinks it is calling dead_acute, because right now the dead_acute is actually
calling a Tonos, possibly U+00B4 ACUTE ACCENT,which I don't want!!!
----------------------------------
BELOW, TO HELP YOU HELP ME, I HAVE A QUICK LOOK AT THE CHARACTERS IN QUESTION
FROM THE CHARACTER MAP THAT REVEALS THE PROBLEM: UNICODE CONSIDERS THE OXEIA
AND THE TONOS INTERCHANGEABLE/EQUIVALENT.
----------------------------------
ί
U+03AF GREEK SMALL LETTER IOTA WITH TONOS
General Character Properties
In Unicode since: 1.1
Unicode category: Letter, Lowercase
Canonical decomposition: U+03B9 GREEK SMALL LETTER IOTA + U+0301 COMBINING
ACUTE ACCENT
Various Useful Representations
UTF-8: 0xCE 0xAF
UTF-16: 0x03AF
C octal escaped UTF-8: \316\257
XML decimal entity: ί
Annotations and Cross References
Equivalents:
• U+03B9 GREEK SMALL LETTER IOTA U+0301 COMBINING ACUTE ACCENT
----------------------------------
ί
U+1F77 GREEK SMALL LETTER IOTA WITH OXIA
General Character Properties
In Unicode since: 1.1
Unicode category: Letter, Lowercase
Canonical decomposition: U+03B9 GREEK SMALL LETTER IOTA + U+0301 COMBINING
ACUTE ACCENT
Various Useful Representations
UTF-8: 0xE1 0xBD 0xB7
UTF-16: 0x1F77
C octal escaped UTF-8: \341\275\267
XML decimal entity: ί
Annotations and Cross References
Equivalents:
• U+03AF GREEK SMALL LETTER IOTA WITH TONOS greek small letter iota with tonos
----------------------------------
´
U+00B4 ACUTE ACCENT (WE DON'T WANT THIS ONE, THIS ONE CAUSES THE PROBLEM, found
in keysymdef.h)
General Character Properties
In Unicode since: 1.1
Unicode category: Symbol, Modifier
Various Useful Representations
UTF-8: 0xC2 0xB4
UTF-16: 0x00B4
C octal escaped UTF-8: \302\264
XML decimal entity: ´
Annotations and Cross References
Notes:
• this is a spacing character
See also:
• U+02B9 MODIFIER LETTER PRIME
• U+02CA MODIFIER LETTER ACUTE ACCENT
• U+0301 COMBINING ACUTE ACCENT
• U+2032 PRIME
Approximate equivalents:
• U+0020 SPACE U+0301 COMBINING ACUTE ACCENT
----------------------------------
*́
U+0301 COMBINING ACUTE ACCENT (WE DON'T WANT THIS ONE, THIS ONE CAUSES THE
PROBLEM, found in keysymdef.h) (ignore the asterisk, I don't know why it comes
up there - I can't remove it)
General Character Properties
In Unicode since: 1.1
Unicode category: Mark, Non-Spacing
Various Useful Representations
UTF-8: 0xCC 0x81
UTF-16: 0x0301
C octal escaped UTF-8: \314\201
XML decimal entity: ́
Annotations and Cross References
Alias names:
• stress mark
• Greek oxia, tonos
See also:
• U+0027 APOSTROPHE
• U+00B4 ACUTE ACCENT
• U+02B9 MODIFIER LETTER PRIME
• U+02CA MODIFIER LETTER ACUTE ACCENT
• U+0384 GREEK TONOS
----------------------------------
´
U+1FFD GREEK OXIA (WE WANT THIS ONE, THE ONE THE SPELLCHECKER RECOGNIZES, not
found in keysymdef.h)
General Character Properties
In Unicode since: 1.1
Unicode category: Symbol, Modifier
Various Useful Representations
UTF-8: 0xE1 0xBF 0xBD
UTF-16: 0x1FFD
C octal escaped UTF-8: \341\277\275
XML decimal entity: ´
Annotations and Cross References
Equivalents:
• U+00B4 ACUTE ACCENT acute accent (obviously NOT an equivalent!!! duh, way
to go unicode people...)
(WE WANT THE ONE ABOVE. A SIMPLE TEST PROVES THIS (I opened OpenOffice and
typed the word ὑγεία using the extended Greek special characters from the
Insert character menu (not my keyboard) and the spellchecker found it to be
correct).
----------------------------------
ˊ
U+02CA MODIFIER LETTER ACUTE ACCENT (MIGHT WORK, NOT SURE, DEPENDS)
General Character Properties
In Unicode since: 1.1
Unicode category: Letter, Modifier
Various Useful Representations
UTF-8: 0xCB 0x8A
UTF-16: 0x02CA
C octal escaped UTF-8: \313\212
XML decimal entity: ˊ
Annotations and Cross References
Notes:
• high-rising tone (IPA), high tone, primary stress
• Mandarin Chinese second tone
Original issue reported on code.google.com by [email protected]
on 28 Jun 2011 at 11:15
First, let me thank you for this very promising program! : ).
Now, when I click in the 'start character map' button, nothing happens, and
nothing appears in the console output. At first I read the code and saw it
being called in "/usr/bin/gucharmap", and I saw I didn't have that program. But
after installing it, it still doesn't open the program, despite it being in
that path.
Keyboardlayouteditor works if I start gucharmap by myself.
What version of the product are you using? On what operating system?
I'm on an updated Debian Squeeze, using the git version cloned yesterday. The
gucharmap version is 2.22.3. Python 2.5.5. I don't know what else might be
relevant...
Original issue reported on code.google.com by [email protected]
on 20 Jun 2010 at 3:22
Great job. i've used the micro$oft keyboard layout creator. Your software
is quite powerfull
What steps will reproduce the problem?
1. add a mapping
2. right click to see remove button
3. click on remove button
What is the expected output? What do you see instead?
Nothing happens when you click on the remove button
What version of the product are you using? On what operating system?
KeyboardLayoutEditor-3.40
Please provide any additional information below.
Used on ubuntu 9.10
Thanks
Original issue reported on code.google.com by [email protected]
on 18 Jul 2009 at 1:06
What steps will reproduce the problem?
1. Save layout code with variant that is a number. e.g. 106
2. Run the previously saved layout
What is the expected output? What do you see instead?
The expected output is the layout loaded. The application hangs.
What version of the product are you using? On what operating system?
keyboardlayouteditor 3.4.0 on ubuntu/linux
Please provide any additional information below.
Terminal python backtrack: Keyerror: "106"
Buggy layout comes as attachment
Original issue reported on code.google.com by [email protected]
on 13 Nov 2009 at 1:02
Attachments:
What steps will reproduce the problem?
1. change base dir
2. exit with ctrl+c
What is the expected output? What do you see instead?
when started a new session with keyboardlayouteditor, the base dir is the
previous one. I see the default base dir instead.
What version of the product are you using? On what operating system?
keyboardlayouteditor 3.4.0 on ubuntu/linux
Please provide any additional information below.
Also exit button in menu file doesn't work, trying to exit the program in
the normal way.
Original issue reported on code.google.com by [email protected]
on 13 Nov 2009 at 1:35
There is a type in the keysyms; the result is that on the key of the
keyboard, the string "Greek_lamda" appears instead of the single character λ.
This requires some small investigation in the original keysym files.
Original issue reported on code.google.com by [email protected]
on 7 Sep 2008 at 4:32
The user can resize the program window.
The width of the window has a minimum size which is sufficient.
The height of the window has no minimum size, which can let the user make
the keyboard section look too small and unusable.
Original issue reported on code.google.com by [email protected]
on 7 Sep 2008 at 4:38
We do not have a tarball in the downloads section. Users are required to
figure out how to download an SVN client.
Original issue reported on code.google.com by [email protected]
on 9 Sep 2008 at 11:28
We use gtk.FontButton to let the user pick a font.
However, the font description returned is not immediately usable by Cairo.
We need something like a recipe that can convert the output of
gtk.FontButton into a construct that Cairo can use.
Currently, we perform a minimal conversion of the font style.
Original issue reported on code.google.com by [email protected]
on 7 Sep 2008 at 4:27
When saving the layout, we currently produce Unicode characters in the
Uxxxx notation, instead of 0x1000xxxx.
Although both currently appear to work, it is desirable to switch to the
0x1000xxxx notation.
Original issue reported on code.google.com by [email protected]
on 7 Sep 2008 at 4:30
When opening an existing layout which has two includes on the same layout
file, such as
include "eurosign(5)"
include "eurosign(e)"
which currently show two entries in the tree.
It is desirable to to show a single entry, as in
eurosign
|____________ e [x]
|_____________5 [x]
Original issue reported on code.google.com by [email protected]
on 7 Sep 2008 at 4:59
When saving a layout, the program generates lines such
key <AE01> { [ KP_1, exclam ] };
instead of
key <AE01> { [ 1, exclam ] };
(KP_1: Key Pad 1)
These appear to be equivalent (have same keysym value, that's why they are
substituted). Requires to investigate if there are any other issues,
probably fix to output just numbers.
Original issue reported on code.google.com by [email protected]
on 7 Sep 2008 at 4:36
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.