I switch between the standard English keyboard layout and the Turkish-Q layout many, many times a day, so I generally don’t worry about which one is active unless I need for spell-check to work. But Anki responds to keyboard shortcuts inconsistently (as in some work, some don’t) based on which layout I am using.
Mostly I have just tolerated this, but it is frustrating to have to guess which keys to use, and really eliminates the time-savings of keyboard shortcuts! I tested every shortcut I could find that is impacted by the English-Turkish layout change, but I might have missed any shortcuts that aren’t well documented.
Version 2.1.65 (aa9a734f)
Python 3.9.15 Qt 6.4.3 PyQt 6.4.0
Windows 11
Expected behavior:
Anki should respond to a shortcut based on where that character sits in the (active) Turkish-Q layout, regardless of the physical key on the keyboard that character uses. [It seems like all non-English-keyboard users would be served by the same rule applying to their layouts, but I can’t speak for them or test every layout!]
Basic differences between the English and Turkish layouts:
- One alpha-character changes – dotted-i becomes undotted-ı
- “Extended” alpha-characters
ğüşiöç
are added on 6 punctuation keys[{]};:'",<.>
at the right - Punctuation from those 6 keys moves to various other keys, with a bit of trickle-down effect on other punctuation.
Current behavior [all in the Editor/Browser window]:
- Superscript
Ctrl =
does not work at all. Neither at the Turkish-Q keyboard locationCtrl Shift 0
or the English keyboard location. - The following only work with the English keyboard location, not with the Turkish-Q location
- Unordered list
Ctrl ,
[which isCtrl ö
in Turkish]. - Outdent list
Ctrl Shift ,
(but reallyCtrl <
, see related issue) [which isCtrl Ö
in Turkish]. - Indent list
Ctrl Shift .
(but reallyCtrl >
, see related issue) [which isCtrl Ç
in Turkish].
- Unordered list
Shortcuts that work as expected (in case it suggests possible fixes):
- For all shortcuts involving
i
(card info, italic), both dotted-i and undotted-ı are accepted. [This is for the best, based on how the world generally relates to the dotted/undotted-mismatch problem.] - In the study-session window
- All punctuation-related shortcuts that I tested
@*=-/
work using the character’s location on the Turkish-Q layout.
- All punctuation-related shortcuts that I tested
- In the Editor/Browser window
- Subscript
Ctrl +
works using the character’s location on the Turkish-Q layout (typed asCtrl Shift 4
). - Ordered list
Ctrl .
works using the character’s location(s) on both the Turkish-Q (Ctrl .
) and English layouts. [Strange for both to work, but obviously not worth a fuss to fix.]
- Subscript
- On the Main screen
- Open debug console
Ctrl Shift ;
(but reallyCtrl :
, see related issue) works using the character’s location on the Turkish-Q layout (Ctrl :
, typed asCtrl Shift .
).
- Open debug console
Related issue:
Shortcuts that use Shift
are documented and tool-tipped as Ctrl Shift [lowerchar]
instead of Ctrl [upperchar]
, which leads to inconsistencies when the those characters move. Look at open debug console as an example. It is documented as Ctrl Shift ;
– but on an English keyboard, that is just “typing instructions” for Ctrl :
.
When that shortcut is moved for the Turkish-Q layout, it doesn’t move to Ctrl Shift ;
(an impossibility, because ;
is already an upper character), it properly moves to Ctrl :
(which you access in the layout with Ctrl Shift .
). The note in the manual doesn’t help here, but correctly labelling the shortcut as Ctrl :
would.
On some non-English keyboards, you may need to press : or + instead of ;.
Why is this issue related? Because if you can fix outdent and indent, you should do so by moving them to the Turkish-Q layout’s Ctrl <
and Ctrl >
(arguably more evocative and easier to remember shortcuts for that functionality anyway). Then, I would advocate for the docs/tool-tips being corrected to call the shortcuts by these correct names (and for open debug console too) – instead of names based on the English-layout-only typing instructions.