Jump to content

Input methods: Difference between revisions

5,476 bytes removed ,  21:09, 4 November 2023
Link to MultiLing O
(add prefix reform variants of multiling layouts)
(Link to MultiLing O)
 
(6 intermediate revisions by 2 users not shown)
Line 3: Line 3:
== Desktop computers ==
== Desktop computers ==
=== Compose key ===
=== Compose key ===
You can set up a [https://en.wikipedia.org/wiki/Compose_key compose key] on your computer, which will change the behavior of one of the keys on your keyboard to "compose" the next two keypresses into one character — for example {{Key|CapsLock}} {{Key|'}} {{Key|a}} becomes {{t|á}}.
You can set up a [https://en.wikipedia.org/wiki/Compose_key compose key] on your computer, which will change the behavior of one of the keys on your keyboard to "compose" the next two keypresses into one character — for example {{Key|CapsLock}} {{Key|'}} {{Key|a}} becomes {{t|á}}. See [[Compose key]] for more information.
 
On Linux, this might not even involve installing anything! Look for "compose key" plus your distro name.
 
On Windows, [https://wincompose.info/ WinCompose] is pretty good.
 
Here's how to type Toaq-specific characters in the default ruleset.
 
{| class="wikitable"
! Character || Combo
|-
| {{Done|2}} || {{Key|'}} + vowel
|-
| {{Done|3}} || {{Key|"}} + vowel
|-
| {{Done|4}} || {{Key|^}} + vowel
|-
| dotless i ({{t|ı}}) || {{Key|.}} + {{Key|i}}
|-
| left quote ({{t|«}}) || {{Key|<}} + {{Key|<}}
|-
| right quote ({{t|»}}) || {{Key|>}} + {{Key|>}}
|}
 
Then there are these supplemental definitions. WinCompose provides them by default; on Linux you’re going to have to add them yourself one-by-one or by sourcing [https://github.com/kragen/xcompose]. That said you might not find them very convenient to type.
 
{| class="wikitable"
! Character || Combo
|-
| {{VY}} || {{Key|V}} + {{Key|&}} + {{Key|Y}}
|-
| {{vy}} || {{Key|v}} + {{Key|&}} + {{Key|y}}
|-
| combining underdot (like in {{t|ı̣}}) || {{Key|\}} + {{Key|!}}
|}


=== Kaıchuo ===
=== Kaıchuo ===
Line 43: Line 9:


=== vim ===
=== vim ===
Copy the contents below into a file called <code>toaq.vim</code> inside a folder named <code>keymap</code> in your <code>.vim</code> directory (create it if it doesn’t exist). Then, in insert mode, you may use any of the two-keystroke “combinations” and have them replaced with accented letters on the fly. (See <code>:help mbyte-keymap</code> for more detailed information.)
See [[Vim input]].
 
{| class=wikitable
! || Without underdot || With underdot
|-
! {{done|1}}
|          || {{key|.}}
|-
! {{done|2}}
| {{key|/}} || {{key|'}}
|-
! {{done|3}}
| {{key|:}} || {{key|"}}
|-
! {{done|4}}
| {{key|>}} || {{key|^}}
|}
 
{{collapsible|Toaq vim keymap|<pre>" toaq keymap
" by uakci on 2022-12-20
scriptencoding utf8
let b:keymap_name = "toaq"
loadkeymap
.i i
i ı
// /
:: :
>> >
'' '
"" "
^^ ^
.. .
.< «
.> »
.{ ‹
.} ›
./ ́
.: ̈
.> ̂
., ̣
.A Ạ
.U Ụ
.I Ị
.O Ọ
.E Ẹ
.a ạ
.u ụ
.i ı̣
.o ọ
.e ẹ
vy ꝡ
Vy Ꝡ
VY Ꝡ
/A Á
/U Ú
/I Í
/O Ó
/E É
/a á
/u ú
/i í
/o ó
/e é
:A Ä
:U Ü
:I Ï
:O Ö
:E Ë
:a ä
:u ü
:i ï
:o ö
:e ë
>A Â
>U Û
>I Î
>O Ô
>E Ê
>a â
>u û
>i î
>o ô
>e ê
'A Ạ́
'U Ụ́
'I Ị́
'O Ọ́
'E Ẹ́
'a ạ́
'u ụ́
'i ị́
'o ọ́
'e ẹ́
"A Ạ̈
"U Ụ̈
"I Ị̈
"O Ọ̈
"E Ẹ̈
"a ạ̈
"u ụ̈
"i ị̈
"o ọ̈
"e ẹ̈
^A Ậ
^U Ụ̂
^I Ị̂
^O Ộ
^E Ệ
^a ậ
^u ụ̂
^i ị̂
^o ộ
^e ệ
</pre>}}
 
Alternatively, for sporadic usage, you can enter Toaq characters using Ctrl+K followed by two keystrokes (see <code>:help digraph</code>). {{VY}} is not available to input using this method.
 
{| class="wikitable"
! Character || Combo
|-
| {{Done|2}} || {{Key|Ctrl+K}} {{Key|vowel}} {{Key|'}}
|-
| {{Done|3}} || {{Key|Ctrl+K}} {{Key|vowel}} {{Key|:}}
|-
| {{Done|4}} || {{Key|Ctrl+K}} {{Key|vowel}} {{Key|>}}
|-
| dotless i ({{t|ı}}) || {{Key|Ctrl+K}} {{Key|.}} {{Key|i}}
|-
| left quote ({{t|«}}) || {{Key|Ctrl+K}} {{Key|&lt;}} {{Key|&lt;}}
|-
| right quote ({{t|»}}) || {{Key|Ctrl+K}} {{Key|&gt;}} {{Key|&gt;}}
|}


=== AutoHotkey (Windows) ===
=== AutoHotkey (Windows) ===
Line 181: Line 16:
To use, install [https://www.autohotkey.com/ AutoHotkey], copy the script to a text editor and save it as toaq.ahk, then double-click the file you saved.
To use, install [https://www.autohotkey.com/ AutoHotkey], copy the script to a text editor and save it as toaq.ahk, then double-click the file you saved.


<pre style="height:300px">; Basic layout
{{collapsible|toaq.ahk|<pre style="height:300px">; Basic layout
:?*:vy::ꝡ
:?*:vy::ꝡ
:?*:a2::á
:?*:a2::á
Line 251: Line 86:
::ve::ꝡë
::ve::ꝡë
::vo::ꝡo
::vo::ꝡo
</pre>
</pre>}}


=== US, intl. with dead keys ===
=== US, intl. with dead keys ===
Line 464: Line 299:
=== Kanakey ===
=== Kanakey ===
[[User:Hoaqgio]] uses a custom Python script that can be found at https://github.com/toaq/kanakey. The way it works is that the script always runs in the background (you start it on login) and when you want to type Toaq, you type alt+; followed by the Toaq you want in the format of "Mai4 ji2 suq2 da.", and finally you just type ; alone. Then the script erases what you typed and replaces it with pretty Toaq. Unfortunately it has two pretty inconvenient issues, one of which is that it currently can't show an icon in the system tray to indicate whether the script is in "listening mode" or not (which means you can accidentally put it in listening mode and leave it there for a while) and the other of which is that if you have non-text data on your system clipboard at the time you try to use the script, it will simply crash. [[User:Hoaqgio]] recommends not using this unless you really have no better alternative!
[[User:Hoaqgio]] uses a custom Python script that can be found at https://github.com/toaq/kanakey. The way it works is that the script always runs in the background (you start it on login) and when you want to type Toaq, you type alt+; followed by the Toaq you want in the format of "Mai4 ji2 suq2 da.", and finally you just type ; alone. Then the script erases what you typed and replaces it with pretty Toaq. Unfortunately it has two pretty inconvenient issues, one of which is that it currently can't show an icon in the system tray to indicate whether the script is in "listening mode" or not (which means you can accidentally put it in listening mode and leave it there for a while) and the other of which is that if you have non-text data on your system clipboard at the time you try to use the script, it will simply crash. [[User:Hoaqgio]] recommends not using this unless you really have no better alternative!
=== Stenography ===
See [[Stenography]].


== Phones ==
== Phones ==
Line 471: Line 309:


=== MultiLing O ===
=== MultiLing O ===
There's a decently customizable Android custom keyboard app called [https://play.google.com/store/apps/details?id=kl.ime.oh&hl=en&gl=US MultiLing O], which comes with a selection of diacritics out of the box (bar old {{tone|4}}). To use them, first type the desired letter, then hold-tap the key that says <code>,/AltGr</code>. An alternate screen should appear; without lifting your finger, slide it to the desired choice of diacritic. However, this won’t get you typing full-featured [[Toaq Delta]] right away – luckily for us, Multiling supports custom layouts. To install these:
See [[MultiLing O]].
 
# Choose a layout you like, hold-tap and then drag to make a selection starting from <code>OK_Layout_Begin</code> and ending on <code>OK_Layout_End</code>, then click Copy.
# With the Multiling keyboard open: hold the spacebar, then drag your finger over to a button named Layouts in the top right that should just have appeared. (Optionally: first slide to Languages > Other > X language 1. This disables word prediction and lets you switch between English and Toaq by swiping the spacebar leftward.)
# Select [+DIY] from the pop-up list, then Paste, then OK.


The following layouts are available:
=== Unexpected Keyboard ===


==== [[Mıao]]'s layout ====
Below is a [https://github.com/Julow/Unexpected-Keyboard Unexpected Keyboard] layout due to Discord user A'rely:
[[Image:Miao's layout screenshot.png|thumb|Screenshot of Mıao's layout]]


Your standard QWERTY layout with flick access to prearranged underdot + {{done|2}} {{done|3}} {{done|4}} combos.
{{collapsible|Unexpected Keyboard layout definition file|<pre>
{{collapsible|MultiLing O layout definition file|<pre>
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
OK_Layout_Begin
<keyboard>
Name:Tóaqdeota
  <row>
1234567890
    <key key0="q" key2="1" key4="esc"/>
q[XK:ꝡw][4D:e[U+0308]éëêẹ[MC:ẹ́][MC:ẹ̈][MC:ệ]]rty[4D:u[U+0302]úüûụ[MC:ụ́][MC:ụ̈][MC:ụ̂]][4D:ıiíïî[MC:ı̣][MC:ị́][MC:ị̈][MC:ị̂]][4D:o[U+0323]óöôọ[MC:ọ́][MC:ọ̈][MC:ộ]]p
    <key key0="ꝡ" key1="~" key2="2" key3="\@"/>
[4D:a[U+0301]áäâạ[MC:ạ́][MC:ạ̈][MC:ậ]]sdfghjkl
    <key key0="e" key1="ê" key2="3" key3="ë" key4="é"/>
zxcvbnm
    <key key0="r" key1="loc ₪" key2="4" key3="$"/>
!@#$%^&*()
    <key key0="t" key2="5" key3="%"/>
Q[XK:ꝠW][4D:E[U+0308]ÉËÊẸ[MC:Ẹ́][MC:Ẹ̈][MC:Ệ]]RTY[4D:U[U+0302]ÚÜÛỤ[MC:Ụ́][MC:Ụ̈][MC:Ụ̂]][4D:IİÍÏÎ[MC:Ị́][MC:Ị̈][MC:Ị̂]][4D:O[U+0323]ÓÖÔỌ[MC:Ọ́][MC:Ọ̈][MC:Ộ]]P
    <key key0="y" key2="6" key3="^"/>
[4D:A[U+0301]ÁÄÂẠ[MC:Ạ́][MC:Ạ̈][MC:Ậ]]SDFGHJKL
    <key key0="u" key1="û" key2="7" key3="ü" key4="ú"/>
ZXCVBNM
    <key key0="ı" key1="î" key2="8" key3="í" key4="ï"/>
£¥€$₹^&*()№√÷
    <key key0="o" key1="ô" key2="9" key3="ó" key4="ö"/>
~`{}%_-=|+§∷‡
    <key key0="p" key2="0" key3="f11_placeholder" key4="f12_placeholder"/>
@[]#/\'"«»—‐–
  </row>
<>!;:?‹›±.,
  <row>
ˉˋˇ´¨˙˚¸﹐˛˘˜ˆ
    <key shift="0.5" key0="a" key1="tab" key2="ä" key3="â" key4="á"/>
―∑éə®†Ωœøπ•·¡
    <key key0="s" key1="loc accent_ring" key3="loc ß" key4="loc accent_ogonek"/>
æß∂ðƒ©ªº∆≠℥∞¿
    <key key0="d" key1="!" key2="loc £" key3="loc accent_aigu" key4="loc accent_grave"/>
ʒΩ≈çþ∫ŋµ≤≥°
    <key key0="f" key1="loc accent_dot_above" key4="&amp;"/>
OK_Layout_End
    <key key0="g" key1="loc accent_caron" key2="-" key3="_"/>
</pre>}}
    <key key0="h" key1="*" key2="=" key3="+"/>
{{collapsible|MultiLing O layout definition file ([[Prefix Reform]] alt)|<pre>
    <key key0="j" key1="loc accent_trema" key2="loc accent_circonflexe" key3="{" key4="}"/>
OK_Layout_Begin
    <key key0="k" key1="(" key2=")" key3="[" key4="]"/>
Name:Tóaqdeota (Prefix Reform)
    <key key0="l" key2="|" key3="\\"/>
1234567890
  </row>
q[XK:ꝡw][4D:eèéëêẹ[MC:ẹ́][MC:ẹ̈][MC:ệ]]rty[4D:uùúüûụ[MC:ụ́][MC:ụ̈][MC:ụ̂]][4D:ıìíïî[MC:ı̣][MC:ị́][MC:ị̈][MC:ị̂]][4D:oòóöôọ[MC:ọ́][MC:ọ̈][MC:ộ]]p
  <row>
[4D:aàáäâạ[MC:ạ́][MC:ạ̈][MC:ậ]]sdfghjkl
    <key width="1.5" key0="shift" key2="loc capslock"/>
zxcvbnm
    <key key0="z" key2="`"/>
!@#$%^&*()
    <key key0="x" key2="\#" key4="loc €"/>
Q[XK:ꝠW][4D:EÈÉËÊẸ[MC:Ẹ́][MC:Ẹ̈][MC:Ệ]]RTY[4D:UÙÚÜÛỤ[MC:Ụ́][MC:Ụ̈][MC:Ụ̂]][4D:IÌÍÏÎ[MC:Ị́][MC:Ị̈][MC:Ị̂]][4D:OÒÓÖÔỌ[MC:Ọ́][MC:Ọ̈][MC:Ộ]]P
    <key key0="c" key1="loc accent_cedille" key2="&lt;" key3="."/>
[4D:AÀÁÄÂẠ[MC:Ạ́][MC:Ạ̈][MC:Ậ]]SDFGHJKL
    <key key0="v" key2=">" key3=","/>
ZXCVBNM
    <key key0="b" key2="\?" key3="/" key4="loc accent_macron"/>
£¥€$₹^&*()№√÷
    <key key0="n" key1="loc accent_tilde" key2=":" key3=";"/>
~`{}%_-i|+§∷‡
    <key key0="m" key1="loc accent_double_aigu" key2="&quot;" key3="'"/>
@[]#/\'"«»—‐–
    <key width="1.5" key0="backspace" key2="delete"/>
<>!;:?‹›±.,
  </row>
ˉˋˇ´¨˙˚¸﹐˛˘˜ˆ
</keyboard>
―∑éə®†Ωœøπ•·¡
æß∂ðƒ©ªº∆≠℥∞¿
ʒΩ≈çþ∫ŋµ≤≥°=
OK_Layout_End
</pre>}}
 
==== [[kuhı]]'s mobile-optimized layout ====
 
A fourth-or-so iteration of a layout originally made by [[uakci]]. Cool symbols in the shift layer; fewer keys means less fat finger fumbling. Some keys are moved out of the way or (in the case of v, w, y) folded into the {{vy}} key; the underdot key stands alone on the right edge of the middle row.
{{collapsible|MultiLing O layout definition file|<pre>
OK_Layout_Begin
Name:kuhı’s mobile-optimized layout
 
q[XK:ꝡvwy][4D:e éëê]rt[4D:uüú û][4D:ıïíiî][4D:oöó ô]p
[4D:a áäâ]sdhjklṃ
zxcfgbn
 
Q[XK:ꝠVWY][4D:E ÉËÊ]RT[4D:UÜÚ Û][4D:IÏÍIÎ][4D:OÖ ÓÔ]P
[4D:A ÁÄÂ]SDHJKLṂ
ZXCFGBN
 
ǐŭ̀?@!|(){} 
0123456789
=+-:/&€$£¥
―[]<>\;#【】
«⟪⟨-⟩⟫»·〖〗
%^*†‡‹›…〔〕
≈√≤≥÷≠±「」
OK_Layout_End
</pre>}}
{{collapsible|MultiLing O layout definition file ([[Prefix Reform]] alt)|<pre>
OK_Layout_Begin
Name:kuhı’s mobile-optimized layout (Prefix Reform alt)
 
q[XK:ꝡvwy][4D:eèéëê]rt[4D:uüúùû][4D:ıïíìî][4D:oöóòô]p
[4D:aàáäâ]sdhjklṃ
zxcfgbn
 
Q[XK:ꝠVWY][4D:EÈÉËÊ]RT[4D:UÜÚÙÛ][4D:IÏÍÌÎ][4D:OÖÒÓÔ]P
[4D:AÀÁÄÂ]SDHJKLṂ
ZXCFGBN
 
ǐŭ̀?@!|(){} 
0123456789
=+-:/&€$£¥
―[]<>\;#【】
«⟪⟨-⟩⟫»·〖〗
%^*†‡‹›…〔〕
≈√≤≥÷≠±「」
OK_Layout_End
</pre>}}
</pre>}}


Line 711: Line 494:
You can always write the ASCII-friendly (although reader-hostile) <tt>/"^</tt> [[tone]] markers after words like this:
You can always write the ASCII-friendly (although reader-hostile) <tt>/"^</tt> [[tone]] markers after words like this:


<blockquote><tt>Hio ka. Ji/ na" bu bo hoa/ sa/ kaichuo gi rao^ nidaq/.</tt></blockquote>
<blockquote><tt>Hio ka. Ji/ na" bo hoa/ sia/ kaichuo gi rao^ nidaq/.</tt></blockquote>


Or tone number digits <tt>234</tt>:
Or tone number digits <tt>234</tt>:


<blockquote><tt>Hio ka. Ji2 na3 bu bo hoa2 sa2 kaichuo gi rao4 nidaq2.</tt></blockquote>
<blockquote><tt>Hio ka. Ji2 na3 bo hoa2 sia2 kaichuo gi rao4 nidaq2.</tt></blockquote>


And you will be understood.
And you will be understood.
Line 723: Line 506:
* Talk to us on [[Discord]].
* Talk to us on [[Discord]].
* The documentation for Raku (Perl 6), a Unicode-heavy programming language, includes [https://docs.raku.org/language/unicode_entry copious amounts of instructions on Unicode character input].
* The documentation for Raku (Perl 6), a Unicode-heavy programming language, includes [https://docs.raku.org/language/unicode_entry copious amounts of instructions on Unicode character input].
[[Category:Input methods]]