feat(keys): vim keys in any layout, z motions, no Option chords
Keys on a non-Latin layout map to their physical US position, so j, k, gg and / work on the Russian layout. Lists get z z, z t, z b, and the first row scrolls the page to the top. The editor drops Alt chords for Esc then a letter, reorder in groups, piggy banks and subscriptions moves to J and K.
This commit is contained in:
1 parent
63a1971900
commit
a1e7489ad4
9 files changed
+132
-94
No files matched your search
@@ -8,7 +8,6 @@
|
||||
import Field from "#lib/components/inputs/Field.svelte";
|
||||
import { INPUT } from "#lib/components/inputs/styles.js";
|
||||
import TagsInput from "#lib/components/inputs/TagsInput.svelte";
|
||||
import { prettyKeys } from "#lib/keys.svelte.js";
|
||||
import { session } from "#lib/session.svelte.js";
|
||||
import AccountField from "./AccountField.svelte";
|
||||
import type { Catalog } from "./catalog.svelte.js";
|
||||
@@ -205,9 +204,7 @@
|
||||
>
|
||||
<Trash class="size-3.5" />
|
||||
Remove split
|
||||
<span class="kbd hidden lg:inline-flex"
|
||||
>{prettyKeys("mod+alt+Backspace")[0]}</span
|
||||
>
|
||||
<span class="kbd hidden lg:inline-flex">X</span>
|
||||
</button>
|
||||
{/if}
|
||||
{/snippet}
|
||||
@@ -216,7 +213,7 @@
|
||||
<Field
|
||||
error={err("description")}
|
||||
for={id("description")}
|
||||
keys={keyHint("alt+d")}
|
||||
keys={keyHint("d")}
|
||||
label="Description"
|
||||
>
|
||||
<AutocompleteInput
|
||||
@@ -229,10 +226,10 @@
|
||||
bind:value={split.description}
|
||||
/>
|
||||
</Field>
|
||||
{@render account("source", "Source account", "alt+f")}
|
||||
{@render account("destination", "Destination account", "alt+t")}
|
||||
{@render account("source", "Source account", "f")}
|
||||
{@render account("destination", "Destination account", "t")}
|
||||
{#if first}
|
||||
<Field error={err("date")} for={id("date")} keys="alt+w" label="Date">
|
||||
<Field error={err("date")} for={id("date")} keys="w" label="Date">
|
||||
<DateInput
|
||||
id={id("date")}
|
||||
invalid={Boolean(err("date"))}
|
||||
@@ -245,7 +242,7 @@
|
||||
<Field
|
||||
error={err("amount")}
|
||||
for={id("amount")}
|
||||
keys={keyHint("alt+m")}
|
||||
keys={keyHint("m")}
|
||||
label="Amount"
|
||||
>
|
||||
<AmountInput
|
||||
@@ -328,7 +325,7 @@
|
||||
<Field
|
||||
error={err("budget_id")}
|
||||
for={id("budget")}
|
||||
keys={keyHint("alt+b")}
|
||||
keys={keyHint("b")}
|
||||
label="Budget"
|
||||
>
|
||||
<RefField
|
||||
@@ -343,7 +340,7 @@
|
||||
<Field
|
||||
error={err("category_name")}
|
||||
for={id("category")}
|
||||
keys={keyHint("alt+k")}
|
||||
keys={keyHint("c")}
|
||||
label="Category"
|
||||
>
|
||||
<AutocompleteInput
|
||||
@@ -385,7 +382,7 @@
|
||||
<Field
|
||||
error={err("tags")}
|
||||
for={id("tags")}
|
||||
keys={keyHint("alt+g")}
|
||||
keys={keyHint("#")}
|
||||
label="Tags"
|
||||
>
|
||||
<TagsInput
|
||||
@@ -409,7 +406,7 @@
|
||||
<Field
|
||||
error={err("notes")}
|
||||
for={id("notes")}
|
||||
keys={keyHint("alt+r")}
|
||||
keys={keyHint("r")}
|
||||
label="Notes"
|
||||
>
|
||||
<textarea
|
||||
|
||||
Reference in new issue
Block a user