Bug 102055 - Adding Finnish Dvorak layout
Summary: Adding Finnish Dvorak layout
Status: RESOLVED FIXED
Alias: None
Product: xkeyboard-config
Classification: Unclassified
Component: General (show other bugs)
Version: unspecified
Hardware: All All
: medium enhancement
Assignee: xkb
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-08-06 01:58 UTC by Pekka Oinas
Modified: 2017-09-03 00:21 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments
Finnish Dvorak keyboard symbols file patch (3.01 KB, patch)
2017-08-06 01:58 UTC, Pekka Oinas
Details | Splinter Review
Finnish Dvorak keyboard base.xml.in patch (488 bytes, patch)
2017-08-06 01:59 UTC, Pekka Oinas
Details | Splinter Review

Description Pekka Oinas 2017-08-06 01:58:42 UTC
Created attachment 133262 [details] [review]
Finnish Dvorak keyboard symbols file patch

There's no existing Dvorak layout for Finnish included in XKB, and few exist to begin with. This is me trying to fix that.

This layout includes dedicated keys for adiaeresis and odiaeresis; adiaeresis on the extra LSGT key to the left side of shift found on nordic keyboards, and odiaeresis on the QWERTY Z key. This places them in a quite comfortable and logical spot in the Dvorak vowel cluster. Colon and semicolon, normally found on the QWERTY Z key on Dvorak, have been moved to shift-period and shift-comma respectively, and the less and greater than symbols have been moved to altgr-comma and altgr-period respectively.

There are a few differences from the US/International Dvorak layout, in the form of extra glyphs on the 3rd and 4th level, mostly focused on those in use in the Nordic languages. Other than that, and the colon, semicolon, and less and greater than symbols mentioned above, the layout is identical to the US/International Dvorak.

I've personally used this layout for 6 years now, but haven't published it anywhere so I can't say it has any other users. Regardless, I'm submitting it into base instead of extra because there is no existing Finnish Dvorak layout. If you disagree with me, you may put it in extra.
Comment 1 Pekka Oinas 2017-08-06 01:59:14 UTC
Created attachment 133263 [details] [review]
Finnish Dvorak keyboard base.xml.in patch
Comment 2 Pekka Oinas 2017-08-06 02:03:40 UTC
Comment on attachment 133262 [details] [review]
Finnish Dvorak keyboard symbols file patch

>--- xkeyboard-config/symbols/fi 2017-08-06 04:02:48.933042231 +0300
>+++ fi  2017-08-06 04:17:37.721579350 +0300
>@@ -280,3 +280,70 @@
>     include "level3(ralt_switch)"
>     include "compose(rwin)"
> };
>+
>+default partial alphanumeric_keys
>+xkb_symbols "fidvorak" {
>+    //Finnish Dvorak keyboard
>+    //by Pekka Oinas
>+    //A Dvorak layout designed for use with Finnish.
>+    //Dedicated keys for adiaeresis and odiaeresis by utilizing the extra LSGT key found on Finnish keyboards
>+    //and by moving colon and semicolon behind shift-modifiers on comma and period.
>+    //Less and greater than symbols moved behind 3rd level modifiers on comma and period.
>+    //Includes an assortment of dead keys but is not made with them in mind.
>+    name[Group1]= "Finnish Dvorak";
>+
>+    key <TLDE> { [ grave, asciitilde, dead_grave, dead_tilde ] };
>+
>+    key <AE01> { [ 1, exclam, NoSymbol, exclamdown ] };
>+    key <AE02> { [ 2, at, cent, rightdoublequotemark] };
>+    key <AE03> { [ 3, numbersign, sterling ] };
>+    key <AE04> { [ 4, dollar, currency ] };
>+    key <AE05> { [ 5, percent, U2030, leftdoublequotemark ] };
>+    key <AE06> { [ 6, asciicircum, dead_circumflex, doublelowquotemark ] };
>+    key <AE07> { [ 7, ampersand, section, singlelowquotemark ] };
>+    key <AE08> { [ 8, asterisk ] };
>+    key <AE09> { [ 9, parenleft ] };
>+    key <AE10> { [ 0, parenright, dead_abovering, degree ] };
>+    key <AE11> { [ bracketleft, braceleft ] };
>+    key <AE12> { [ bracketright, braceright ] };
>+
>+    key <AD01> { [ apostrophe, quotedbl, dead_acute, dead_doubleacute ] };
>+    key <AD02> { [ comma, semicolon, less, leftsinglequotemark ] };
>+    key <AD03> { [ period, colon, greater ] };
>+    key <AD04> { [ p, P ] };
>+    key <AD05> { [ y, Y, yen ] };
>+    key <AD06> { [ f, F ] };
>+    key <AD07> { [ g, G ] };
>+    key <AD08> { [ c, C ] };
>+    key <AD09> { [ r, R ] };
>+    key <AD10> { [ l, L, notsign ] };
>+    key <AD11> { [ slash, question, NoSymbol, questiondown ] };
>+    key <AD12> { [ equal, plus ] };
>+
>+    key <AC01> { [ a, A, schwa ] };
>+    key <AC02> { [ o, O, aring, Aring ] };
>+    key <AC03> { [ e, E, EuroSign ] };
>+    key <AC04> { [ u, U, udiaeresis, Udiaeresis ] };
>+    key <AC05> { [ i, I, idotless, Iabovedot ] };
>+    key <AC06> { [ d, D, eth, ETH ] };
>+    key <AC07> { [ h, H ] };
>+    key <AC08> { [ t, T, thorn, THORN ] };
>+    key <AC09> { [ n, N, eng, ENG ] };
>+    key <AC10> { [ s, S, ssharp, U1E9E ] };
>+    key <AC11> { [ minus, underscore, endash, emdash ] };
>+    key <BKSL> { [ backslash, bar, dead_caron, dead_breve ] };
>+
>+    key <LSGT> { [ adiaeresis, Adiaeresis, ae, AE ] };
>+    key <AB01> { [ odiaeresis, Odiaeresis, dead_diaeresis, dead_macron ] };
>+    key <AB02> { [ q, Q, ooblique, Ooblique ] };
>+    key <AB03> { [ j, J ] };
>+    key <AB04> { [ k, K, kra ] };
>+    key <AB05> { [ x, X, multiply, periodcentered ] };
>+    key <AB06> { [ b, B, hyphen ] };
>+    key <AB07> { [ m, M, mu, emdash ] };
>+    key <AB08> { [ w, W ] };
>+    key <AB09> { [ v, V ] };
>+    key <AB10> { [ z, Z, U0292, U01B7 ] };
>+
>+    include "level3(ralt_switch)"
>+};
Comment 3 Sergey V. Udaltsov 2017-09-03 00:21:33 UTC
Thank you committed. But I put it into extras.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.