Opened 13 years ago
Closed 13 years ago
#8536 closed enhancement (fixed)
Czech (Mac) keymap
Reported by: | janiczek | Owned by: | jscipione |
---|---|---|---|
Priority: | normal | Milestone: | R1 |
Component: | Preferences/Keymap | Version: | R1/Development |
Keywords: | czech mac keymap | Cc: | |
Blocked By: | Blocking: | ||
Platform: | All |
Description
Haiku has a Czech keymap, but Mac OS X uses a different layout. Aaaand I kind of missed it. O:-)
When I saw that other languages have Mac versions of the keymaps too, I created a Czech one (followed the Mac "Keyboard and Character Viewer" closely).
In the attachment.
My environment:
- Walter (hrev44122-dirty), GCC 2
- VMware Fusion, MacBook (Intel)
Attachments (6)
Change History (15)
by , 13 years ago
Attachment: | Czech (Mac) added |
---|
follow-up: 2 comment:1 by , 13 years ago
Owner: | changed from | to
---|---|
Status: | new → assigned |
Our resident Mac keyboard guru should probably czech this out.
follow-up: 3 comment:2 by , 13 years ago
Replying to luroh:
Our resident Mac keyboard guru should probably czech this out.
Yeah, be funny all you want :)
I'm just jumping ahead, but is there something more needed for the inclusion than copying the text version into src/data/keymaps/Czech (Mac).keymap?
comment:3 by , 13 years ago
Replying to janiczek:
Replying to luroh:
Our resident Mac keyboard guru should probably czech this out.
Yeah, be funny all you want :)
I'm just jumping ahead, but is there something more needed for the inclusion than copying the text version into src/data/keymaps/Czech (Mac).keymap?
As long as the file ends in .keymap it should get included in the image by build/jam/HaikuImage.
follow-up: 5 comment:4 by , 13 years ago
While I may be the Mac keyboard expert, I know nothing about Czech except for what I can look up online. A cursory look at the map most of it looks okay to me.
There are a couple of problems with the attached keyboard layout file though other than it should end in .keymap instead of .txt.
There is a number of spaces in the option map in keys other than 0x5e (the space key). This is true for many international maps though, is there a good reason for this?
Also, RCommand is not mapped. Looking at http://support.apple.com/kb/HT2841 the Czech standard keyboard has both left and right Command keys so it should be mapped AFAIK. The standard code to map RCommand to is 0x67.
Circumflex does not have a character defined in the first slot, but it does map dead key tables. Either put a
'^'
there or don't include any dead key maps if circumflex is not used on a Czech keyboard.
I see that the 'S' key gets a character printed on the Apple Aluminum keyboard for the option map, but it looks like you also defined some characters for the 'A', 'D', 'H', 'J', 'L', and 'N' keys. Not knowing Czech I can't say if that is normal or not.
I'll have to investigate a bit more to see if the non-ASCII characters are all correct.
comment:5 by , 13 years ago
Replying to jscipione:
While I may be the Mac keyboard expert, I know nothing about Czech except for what I can look up online. A cursory look at the map most of it looks okay to me.
There are a couple of problems with the attached keyboard layout file though other than it should end in .keymap instead of .txt.
Yes, I didn't know about the .keymap extension convention until I found out where the keymaps live in the source code. I will use the right extension in the patch (if I am the one to patch it).
There is a number of spaces in the option map in keys other than 0x5e (the space key). This is true for many international maps though, is there a good reason for this?
This is probably because of the way I (and presumably the other keymap makers?) created the map in the Keymaps application. See, I drag'n'dropped the "empty character" (well, now we know it was a space) to the previously occupied keys before I put the right characters in their place.
So, the spaces don't really have a use. I will delete them in the .keymap file directly (the application doesn't give me a way to do it).
Also, RCommand is not mapped. Looking at http://support.apple.com/kb/HT2841 the Czech standard keyboard has both left and right Command keys so it should be mapped AFAIK. The standard code to map RCommand to is 0x67.
Yes, that escaped my attention. I'll add the RCommand there.
Circumflex does not have a character defined in the first slot, but it does map dead key tables. Either put a '' there or don't include any dead key maps if circumflex is not used on a Czech keyboard.
I'll remove the circumflex from dead key tables.
I see that the 'S' key gets a character printed on the Apple Aluminum keyboard for the option map, but it looks like you also defined some characters for the 'A', 'D', 'H', 'J', 'L', and 'N' keys. Not knowing Czech I can't say if that is normal or not.
These are all quirks of Mac keyboard layout and mathematical or Polish, I'd say, characters. That was blind copying of the Mac layout from my side. Or shouldn't I?
Oh, and I completely forgot the Option+Command combo. Whole new lot of characters that I'll never use :) Should I put them there? (Will attach a screenshot with all the variants.)
I'll have to investigate a bit more to see if the non-ASCII characters are all correct.
They're written at Mac, copied to pastebin.com and then retrieved on the Haiku box in virtual machine. (wget of the raw input, so no browser encoding reinterpreting)
So, recap:
- spaces -> empty strings (with the exception of spacebar, obviously)
- add RCommand
- remove circumflex from dead key tables
- add Option+Command set of characters, so it's mimicking the Mac layout completely? Should I?
comment:6 by , 13 years ago
- done. Now the unassigned combinations fall through.
- done. And it's switched with the ROption.
- after discussion on IRC we found out that carons and rings aren't supported as dead keys in Haiku. So I did the following:
- acute is acute, diaeresis are diaeresis, circumflex is circumflex
- caron is in the place of tilde (PC Czech layout uses that too)
- ring is in the place of grave
- since the Option and Command+Option layouts are not really all that useful for Czechs and they're more of a quirk of the Czech Mac keyboard layout, I didn't add them.
Two issues with the dead keys though:
- ring ... none of 0xcb9a, 0xcc8a and 0xc2b0 works as intended (write ring, write letter -> have combined letter)
- circumflex ... the same problem, tried
'^'
, 0xcb86, 0xcc82
Because of these two things I don't yet consider this done. But I'm clueless on how to fix it.
comment:7 by , 13 years ago
Duh, had the wrong GraveTab and CircumflexTab.
Ring (at the place of grave) works great now, but circumflex still nothing. But I'm content to let it go, though, because its mainly use in Czech is for the programmers; as a dead key only use I can think of is some Slovak words.
Attaching a patch.
comment:8 by , 13 years ago
So, on IRC we fixed the circumflex thing. Attaching (hopefully) the final version.
comment:9 by , 13 years ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Included in hrev44139. Thanks for your hard work on this janiczek.
Binary version of the keymap