diff --git a/README.md b/README.md index 5488179..5a415a2 100644 --- a/README.md +++ b/README.md @@ -14,6 +14,14 @@ To efficiently navigate insert nodes and avoid overlapping ones, use `:TypstarSmartJump` and `:TypstarSmartJumpBack`. Available snippets can mostly be intuitively derived from [here](././lua/typstar/snippets), they include: +Universal snippets: +- Alphanumeric characters: `:` → `$$ ` in markup (e.g. `:X` → `$X$ `, `:5` → `$5$ `) +- Greek letters: `;` → `` in math and `$$ ` in markup (e.g. `;a` → `alpha`/`$alpha$ `) +- Common indices (numbers and letters `i-n`): ` ` → `_ ` in math and `$$ ` → `$_$ ` in markup (e.g `A314 ` → `A_314 `, `$alpha$n ` → `$alpha_n$ `) + +You can find a complete map of latin to greek letters including reasons for the less intuitive ones [here](./lua/typstar/snippets/letters.lua). +Note that some greek letters have multiple latin ones mapped to them. + Markup snippets: - Begin inline math with `ll` and multiline math with `dm` - [Markup shorthands](./lua/typstar/snippets/markup.lua) (e.g. `HIG` → `#highlight[]`, `IMP` → `$==>$ `) @@ -23,9 +31,6 @@ Markup snippets: Math snippets: - [Many shorthands](./lua/typstar/snippets/math.lua) for mathematical expressions -- Alphanumeric characters: `:` → `$$ ` in markup (e.g. `:X` → `$X$ `, `:5` → `$5$ `) -- Greek letters: `;` → `` in math and `$$ ` in markup (e.g. `;a` → `alpha`/`$alpha$ `) -- Common indices (numbers and letters `i-n`): ` ` → `_ ` in math and `$$ ` → `$_$ ` in markup (e.g `A314 ` → `A_314 `, `$alpha$n ` → `$alpha_n$ `) - Series of numbered letters: ` ot ` → `_1, _2, ... ` (e.g. `a ot ` → `a_1, a_2, ... `, `a ot4 ` → `a_1, a_2, a_3, a_4 `, `alpha otk ` → `alpha_1, alpha_2, ..., alpha_k `) - Wrapping of any mathematical expression (see [operations](./lua/typstar/snippets/visual.lua), works nested, multiline and in visual mode via the [selection key](#installation)): `` → `()` (e.g. `(a^2+b^2)rt` → `sqrt(a^2+b^2)`, `lambdatd` → `tilde(lambda)`, `(1+1)sQ` → `[1+1]`, `(1+1)sq` → `[(1+1)]`) - Matrices: `ma` and `lma` (e.g. `23ma` → 2x3 matrix) diff --git a/lua/typstar/snippets/letters.lua b/lua/typstar/snippets/letters.lua index 8728d81..7eaed12 100644 --- a/lua/typstar/snippets/letters.lua +++ b/lua/typstar/snippets/letters.lua @@ -16,31 +16,32 @@ local greek_letters_map = { ['c'] = 'chi', ['d'] = 'delta', ['e'] = 'epsilon', - ['f'] = 'phi', + ['f'] = 'phi', -- sound ['g'] = 'gamma', - ['h'] = 'eta', + ['h'] = 'eta', -- look ['i'] = 'iota', - ['j'] = 'theta', ['k'] = 'kappa', ['l'] = 'lambda', ['m'] = 'mu', ['n'] = 'nu', - ['o'] = 'omega', + ['o'] = 'omikron', ['p'] = 'psi', - ['q'] = 'eta', + ['q'] = 'theta', -- look? ['r'] = 'rho', ['s'] = 'sigma', ['t'] = 'tau', - ['v'] = 'nu', - ['w'] = 'omega', + ['u'] = 'upsilon', + ['v'] = 'nu', -- look + ['w'] = 'omega', -- look ['x'] = 'xi', - ['y'] = 'upsilon', + ['y'] = 'upsilon', -- look ['z'] = 'zeta', } + local greek_keys = {} local greek_letters_set = {} local common_indices = { '\\d+', '[i-n]' } --- buitins and caligraphic letters from github.com/lentilus/readable-typst +-- builtins and calligraphic letters from github.com/lentilus/typst-scribe local index_conflicts = { 'Im', 'in', 'ln', 'Pi', 'pi', 'Xi', 'xi', 'Ii', 'Jj', 'Kk', 'Ll', 'Mm', 'Nn' } local index_conflicts_set = {} local punctuation_prepend_space = { ',', ';' }