Add Double acute diacritic

Will be used by the Hungarian language.
This commit is contained in:
Jules Aguillon 2022-04-24 01:15:41 +02:00
parent d8e475467a
commit 2900e8d197
5 changed files with 28 additions and 3 deletions

View File

@ -15,7 +15,7 @@
<key key0="a" key2="1" key4="!"/> <key key0="a" key2="1" key4="!"/>
<key key0="o" key1="accent_macron" key2="2" key3="\@" key4="accent_ogonek"/> <key key0="o" key1="accent_macron" key2="2" key3="\@" key4="accent_ogonek"/>
<key key0="e" key1="accent_caron" key2="3" key3="\#" key4="accent_dot_above"/> <key key0="e" key1="accent_caron" key2="3" key3="\#" key4="accent_dot_above"/>
<key key0="u" key2="4" key3="$"/> <key key0="u" key2="4" key3="$" key4="accent_double_aigu"/>
<key key0="i" key2="5" key3="%"/> <key key0="i" key2="5" key3="%"/>
<key key0="d" key2="6" key3="^"/> <key key0="d" key2="6" key3="^"/>
<key key0="h" key2="7" key3="&amp;"/> <key key0="h" key2="7" key3="&amp;"/>

View File

@ -20,7 +20,7 @@
<key key0="g" key1="accent_caron" key2="-" key3="_"/> <key key0="g" key1="accent_caron" key2="-" key3="_"/>
<key key0="h" key2="=" key3="+"/> <key key0="h" key2="=" key3="+"/>
<key key0="j" key1="accent_trema" key2="accent_circonflexe" key4="}" key3="{"/> <key key0="j" key1="accent_trema" key2="accent_circonflexe" key4="}" key3="{"/>
<key key0="k" key3="[" key4="]"/> <key key0="k" key1="accent_double_aigu" key3="[" key4="]"/>
<key key0="l" key2="|" key3="\\"/> <key key0="l" key2="|" key3="\\"/>
</row> </row>
<row> <row>

View File

@ -80,6 +80,15 @@ class KeyModifier
return (char)KeyCharacterMap.getDeadChar('\u02DB', c); return (char)KeyCharacterMap.getDeadChar('\u02DB', c);
case KeyValue.FLAG_ACCENT_DOT_ABOVE: case KeyValue.FLAG_ACCENT_DOT_ABOVE:
return (char)KeyCharacterMap.getDeadChar('\u02D9', c); return (char)KeyCharacterMap.getDeadChar('\u02D9', c);
case KeyValue.FLAG_ACCENT_DOUBLE_AIGU:
switch (c)
{
// Composite characters: ӳ
case 'o': return 'ő';
case 'u': return 'ű';
case ' ': return '˝';
default: return c;
}
case KeyValue.FLAG_ACCENT_ORDINAL: case KeyValue.FLAG_ACCENT_ORDINAL:
switch (c) switch (c)
{ {

View File

@ -39,6 +39,7 @@ class KeyValue
public static final int FLAG_META = (1 << 14); public static final int FLAG_META = (1 << 14);
// Accent flags // Accent flags
public static final int FLAG_ACCENT_DOUBLE_AIGU = (1 << 9);
public static final int FLAG_ACCENT_DOT_ABOVE = (1 << 15); public static final int FLAG_ACCENT_DOT_ABOVE = (1 << 15);
public static final int FLAG_ACCENT1 = (1 << 16); // Grave public static final int FLAG_ACCENT1 = (1 << 16); // Grave
public static final int FLAG_ACCENT2 = (1 << 17); // Aigu public static final int FLAG_ACCENT2 = (1 << 17); // Aigu
@ -60,7 +61,8 @@ class KeyValue
FLAG_ACCENT3 | FLAG_ACCENT4 | FLAG_ACCENT5 | FLAG_ACCENT6 | FLAG_ACCENT3 | FLAG_ACCENT4 | FLAG_ACCENT5 | FLAG_ACCENT6 |
FLAG_ACCENT_CARON | FLAG_ACCENT_MACRON | FLAG_ACCENT_SUPERSCRIPT | FLAG_ACCENT_CARON | FLAG_ACCENT_MACRON | FLAG_ACCENT_SUPERSCRIPT |
FLAG_ACCENT_SUBSCRIPT | FLAG_ACCENT_ORDINAL | FLAG_ACCENT_ARROWS | FLAG_ACCENT_SUBSCRIPT | FLAG_ACCENT_ORDINAL | FLAG_ACCENT_ARROWS |
FLAG_ACCENT_BOX | FLAG_ACCENT_RING | FLAG_ACCENT_OGONEK | FLAG_ACCENT_DOT_ABOVE; FLAG_ACCENT_BOX | FLAG_ACCENT_RING | FLAG_ACCENT_OGONEK |
FLAG_ACCENT_DOT_ABOVE | FLAG_ACCENT_DOUBLE_AIGU;
// Language specific keys that are removed from the keyboard by default // Language specific keys that are removed from the keyboard by default
public static final int FLAG_LOCALIZED = (1 << 25); public static final int FLAG_LOCALIZED = (1 << 25);
@ -173,6 +175,7 @@ class KeyValue
addModifierKey("accent_trema", "\u0058", FLAG_ACCENT6 | FLAG_KEY_FONT | FLAG_LOCALIZED); addModifierKey("accent_trema", "\u0058", FLAG_ACCENT6 | FLAG_KEY_FONT | FLAG_LOCALIZED);
addModifierKey("accent_ogonek", "\u0059", FLAG_ACCENT_OGONEK | FLAG_KEY_FONT | FLAG_LOCALIZED); addModifierKey("accent_ogonek", "\u0059", FLAG_ACCENT_OGONEK | FLAG_KEY_FONT | FLAG_LOCALIZED);
addModifierKey("accent_dot_above", "\u005a", FLAG_ACCENT_DOT_ABOVE | FLAG_KEY_FONT | FLAG_LOCALIZED); addModifierKey("accent_dot_above", "\u005a", FLAG_ACCENT_DOT_ABOVE | FLAG_KEY_FONT | FLAG_LOCALIZED);
addModifierKey("accent_double_aigu", "\u005b", FLAG_ACCENT_DOUBLE_AIGU | FLAG_KEY_FONT | FLAG_LOCALIZED);
addModifierKey("superscript", "Sup", FLAG_ACCENT_SUPERSCRIPT | FLAG_SMALLER_FONT); addModifierKey("superscript", "Sup", FLAG_ACCENT_SUPERSCRIPT | FLAG_SMALLER_FONT);
addModifierKey("subscript", "Sub", FLAG_ACCENT_SUBSCRIPT | FLAG_SMALLER_FONT); addModifierKey("subscript", "Sub", FLAG_ACCENT_SUBSCRIPT | FLAG_SMALLER_FONT);
addModifierKey("ordinal", "Ord", FLAG_ACCENT_ORDINAL | FLAG_SMALLER_FONT); addModifierKey("ordinal", "Ord", FLAG_ACCENT_ORDINAL | FLAG_SMALLER_FONT);

13
srcs/special_font/5B.svg Normal file
View File

@ -0,0 +1,13 @@
<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" viewBox="-20 0 1184 2048">
<g transform="matrix(1 0 0 -1 0 1536)">
<path fill="currentColor"
d="M931.256 1002.78l-69.3145 -69.3145q-112.472 86.3154 -249.792 98.0859v99.3945q176.555 -11.7715 319.106 -128.166v0zM516.679 1031.55q-133.396 -10.4619 -249.792 -100.701q0 1.30859 -71.9297 74.5449l2.61523 -2.61523q142.554 116.396 319.106 128.166v-99.3945
v0zM197.572 860.229q-90.2393 -103.316 -107.24 -245.867h-99.3936q17.001 181.786 137.32 319.104l-6.53906 5.23145l3.92285 -2.61523l41.8506 -43.1582q30.0791 -31.3867 30.0791 -32.6953v0zM1137.89 614.361h-99.3936q-17.001 141.242 -107.239 248.483
l69.3135 70.6211q120.318 -137.319 137.319 -319.104v0zM1137.89 517.583q-14.3857 -189.633 -129.474 -326.953l-69.3135 70.6221q86.3154 111.164 99.3936 256.331h99.3936v0zM189.726 263.867h0.000976562q-86.3154 107.239 -99.3936 253.716h-99.3945
q13.0781 -189.633 128.165 -326.953l-3.92285 -3.92383q-1.30762 0 74.5449 77.1611zM939.103 121.315q-146.476 -124.242 -326.952 -136.014v99.3945q139.935 11.7705 257.639 105.934zM516.679 -14.6973q-180.478 11.7715 -326.953 136.013l69.3145 69.3145
q117.703 -90.2383 257.64 -105.933v-99.3945h-0.000976562zM856 1545h229l3 -6l-300 -260h-171l-2 5zM530 1545h211l2 -5l-240 -261h-157z" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.4 KiB