Comments (6)
I also don't really know a lot about the locale IDs. The only reason they are included is because KLC uses them. I didn't even know that apparently KLC uses only part of the ID.
from klfc.
I'm asking because at the moment (as per other thread) I'm only doing the Conventional ANSI, and English only on top of that.
But there are people trying to make Spanish/English, Dutch/English, even Russian/English layouts and then locale IDs become a bit confused ...
I've even got a layout aimed at Southern Africa that tries to cater for over a dozen languages.
from klfc.
The 4-digit part before the colon is the language LangID, which is not necessarily the same as the keyboard ID after the colon. There may be many LocIDs for each language ID. It's the LocID that uniquely identifies a keyboard layout, the LangIDs are for sorting these into which languages they belong to. So KLC shouldn't use the LangID as that's a job for the OS, but define the layout's LocID only.
EPKL has a table of layout LocIDs, and AHK has some functionality to tap into the MS DLL functions for the IDs. In case that's helpful.
from klfc.
That's what worries me ... the scheme does not cater for keyboards meant for more than one language.
Thanks for the table :-)
Cheers, Ian
from klfc.
I think you're wrong? The "scheme" consists of a LangID for each language and a unique LocID for each keyboard layout. To use a layout with more than one language. use couplets of LangID1:LocID1 LangID2:LocID1 etc where both are applied. Is anything stopping you from doing that somehow?
Mostly when designing keyboard layouts however, you don't need to worry about LangIDs but focus on the keyboard layout's unique LocID alone.
I can see how it gets somewhat restricting that each layout has to belong to a language in a LangID:LocID pair. But that's typical of OS implementation for you, and as I said it's solved by duplicating your layout to all languages it belongs to. For most languages there are some tweaks you should do to accommodate better locale typing anyway.
from klfc.
Ah. Did not know you could specify more than one set. Linux does not concern itself to that level with such things, just as far as "region (eg "_us") AFAIK.
I'm generating input files for KLFC and was worried about wrong values in the LocaleID borking someone's install.
I have generated the files for all the "conventional" layouts I have, now need to Take Courage and try a test install and uninstall, and then find people able to test the Win and Mac versions.
I notice the xkb file does not include the usual
include "level3(ralt_switch)"
... do I need to add that in to the files I feed KLFC ?
Thanks, Ian
from klfc.
Related Issues (20)
- Space as modifier key without losing space functionality HOT 2
- run-session.sh errors HOT 1
- OEM_102 not present HOT 4
- MSKLC does not accept LF line endings generated on Linux HOT 7
- "dead key is not defined" when converting from .klc HOT 9
- Contribution: Keyboard Layout Editor .json generator
- Exporting to keymaps format (linux virtual console) HOT 1
- issues with 'cabal install' HOT 1
- Update/fix klfc-bin in AUR HOT 2
- Build failures HOT 5
- Set umask in xkb's install-system and uninstall-system scripts
- [macOS] `keylayout` generation does not take into account the top-left key on ANSI keyboards. HOT 3
- Extend xkb support HOT 1
- Add Yen and Ro support for klc
- Not happy with my beautiful json. HOT 4
- Cannot bind `≅` when using X Keyboard Extension format, instead `≈` is bound to the desired key. HOT 2
- Are custom dead keys and ligatures supposed to work with the X Keyboard Extension format or not? HOT 3
- How to use xkb keycode for position for hiragana-katakana key? HOT 2
- XKB: arrow keys from Extend layer behave differently than arrow keys in Base layer HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from klfc.