mirror of
https://github.com/Ascyii/typstar.git
synced 2026-01-01 05:24:24 -05:00
feat(snip): improve greek letters
This commit is contained in:
@@ -24,16 +24,19 @@ local greek_letters_map = {
|
|||||||
['m'] = 'mu',
|
['m'] = 'mu',
|
||||||
['n'] = 'nu',
|
['n'] = 'nu',
|
||||||
['o'] = 'omega',
|
['o'] = 'omega',
|
||||||
['p'] = 'pi',
|
['p'] = 'psi',
|
||||||
['q'] = 'eta',
|
['q'] = 'eta',
|
||||||
['r'] = 'rho',
|
['r'] = 'rho',
|
||||||
['s'] = 'sigma',
|
['s'] = 'sigma',
|
||||||
['t'] = 'tau',
|
['t'] = 'tau',
|
||||||
|
['v'] = 'nu',
|
||||||
|
['w'] = 'omega',
|
||||||
['x'] = 'xi',
|
['x'] = 'xi',
|
||||||
|
['y'] = 'upsilon',
|
||||||
['z'] = 'zeta',
|
['z'] = 'zeta',
|
||||||
}
|
}
|
||||||
local greek_letters = {}
|
|
||||||
local greek_keys = {}
|
local greek_keys = {}
|
||||||
|
local greek_letters_set = {}
|
||||||
local common_indices = { '\\d+', '[i-n]' }
|
local common_indices = { '\\d+', '[i-n]' }
|
||||||
local index_conflicts = { 'in', 'ln', 'pi', 'xi' }
|
local index_conflicts = { 'in', 'ln', 'pi', 'xi' }
|
||||||
local index_conflicts_set = {}
|
local index_conflicts_set = {}
|
||||||
@@ -47,8 +50,10 @@ local greek_full = {}
|
|||||||
for latin, greek in pairs(greek_letters_map) do
|
for latin, greek in pairs(greek_letters_map) do
|
||||||
greek_full[latin] = greek
|
greek_full[latin] = greek
|
||||||
greek_full[latin:upper()] = upper_first(greek)
|
greek_full[latin:upper()] = upper_first(greek)
|
||||||
table.insert(greek_letters, greek)
|
if not greek_letters_set[greek] then
|
||||||
table.insert(greek_letters, upper_first(greek))
|
table.insert(greek_letters_set, greek)
|
||||||
|
table.insert(greek_letters_set, upper_first(greek))
|
||||||
|
end
|
||||||
table.insert(greek_keys, latin)
|
table.insert(greek_keys, latin)
|
||||||
table.insert(greek_keys, latin:upper())
|
table.insert(greek_keys, latin:upper())
|
||||||
end
|
end
|
||||||
@@ -59,7 +64,7 @@ end
|
|||||||
|
|
||||||
greek_letters_map = greek_full
|
greek_letters_map = greek_full
|
||||||
trigger_greek = table.concat(greek_keys, '|')
|
trigger_greek = table.concat(greek_keys, '|')
|
||||||
trigger_index_pre = '[A-Za-z]' .. '|' .. table.concat(greek_letters, '|')
|
trigger_index_pre = '[A-Za-z]' .. '|' .. table.concat(greek_letters_set, '|')
|
||||||
trigger_index_post = table.concat(common_indices, '|')
|
trigger_index_post = table.concat(common_indices, '|')
|
||||||
|
|
||||||
local get_greek = function(_, snippet) return s(nil, t(greek_letters_map[snippet.captures[1]])) end
|
local get_greek = function(_, snippet) return s(nil, t(greek_letters_map[snippet.captures[1]])) end
|
||||||
|
|||||||
Reference in New Issue
Block a user