打开/关闭菜单
打开/关闭外观设置菜单
打开/关闭个人菜单
未登录
登录后可编辑和发表评论。

Module:X-SAMPA

来自Vocawiki

此模块的文档可以在Module:X-SAMPA/doc创建

alias = {
["a"] = "a", ["b"] = "b",
["b_<"] = "ɓ", ["c"] = "c",
["d"] = "d", ["d`"] = "ɖ",
["d_<"] = "ɗ", ["e"] = "e",
["f"] = "f", ["g"] = "ɡ",
["g_<"] = "ɠ", ["h"] = "h",
["h\\"] = "ɦ", ["i"] = "i",
["j"] = "j", ["j\\"] = "ʝ",
["k"] = "k", ["l"] = "l",
["l`"] = "ɭ", ["l\\"] = "ɺ",
["m"] = "m", ["n"] = "n",
["n`"] = "ɳ", ["o"] = "o",
["p"] = "p", ["p\\"] = "ɸ",
["q"] = "q", ["r"] = "r",
["r`"] = "ɽ", ["r\\"] = "ɹ",
["r\\`"] = "ɻ", ["s"] = "s",
["s`"] = "ʂ", ["s\\"] = "ɕ",
["t"] = "t", ["t`"] = "ʈ",
["u"] = "u", ["v"] = "v",
["v\\"] = "ʋ", ["w"] = "w",
["x"] = "x", ["x\\"] = "ɧ",
["y"] = "y", ["z"] = "z",
["z`"] = "ʐ", ["z\\"] = "ʑ",
["A"] = "ɑ", ["B"] = "β",
["B\\"] = "ʙ", ["C"] = "ç",
["D"] = "ð", ["E"] = "ɛ",
["F"] = "ɱ", ["G"] = "ɣ",
["G\\"] = "ɢ", ["G\\_<"] = "ʛ",
["H"] = "ɥ", ["H\\"] = "ʜ",
["I"] = "ɪ", ["I\\"] = "ᵻ",
["J"] = "ɲ", ["J\\"] = "ɟ", ["J\\_<"] = "ʄ",
["K"] = "ɬ", ["K\\"] = "ɮ",
["L"] = "ʎ", ["L\\"] = "ʟ",
["M"] = "ɯ", ["M\\"] = "ɰ",
["N"] = "ŋ", ["N\\"] = "ɴ",
["O"] = "ɔ", ["O\\"] = "ʘ",
["P"] = "ʋ", ["Q"] = "ɒ",
["R"] = "ʁ", ["R\\"] = "ʀ",
["S"] = "ʃ", ["T"] = "θ",
["U"] = "ʊ", ["U\\"] = "ᵿ", ["V"] = "ʌ",
["W"] = "ʍ", ["X"] = "χ",
["X\\"] = "ħ", ["Y"] = "ʏ",
["Z"] = "ʒ", ["."] = ".",
["\""] = "ˈ", ["%"] = "ˌ",
["'"] = "ʲ", [":"] = "ː",
[":\\"] = "ˑ", ["-"] = "-",
["@"] = "ə", ["@\\"] = "ɘ",
["{"] = "æ", ["}"] = "ʉ",
["1"] = "ɨ", ["2"] = "ø",
["3"] = "ɜ", ["3\\"] = "ɞ",
["4"] = "ɾ", ["5"] = "ɫ",
["6"] = "ɐ", ["7"] = "ɤ",
["8"] = "ɵ", ["9"] = "œ",
["&"] = "ɶ", ["?"] = "ʔ",
["?\\"] = "ʕ", ["<"] = "<",
[">"] = ">", ["<\\"] = "ʢ",
[">\\"] = "ʡ", ["^"] = "ꜛ",
["!"] = "ꜜ", ["!\\"] = "ǃ",
["|"] = "|", ["|\\"] = "ǀ",
["||"] = "‖", ["|\\|\\"] = "ǁ",
["=\\"] = "ǂ", ["-\\"] = "‿",
["_\""] = "̈", ["_+"] = "̟",
["_-"] = "̠", ["_/"] = "̌",
["_0"] = "̥", ["^0"]="̊",["="] = "̩",
["_="] = "̩", ["_>"] = "ʼ",
["_?\\"] = "ˤ", ["_\\"] = "̂",
["_^"] = "̯", ["_}"] = "̚",
["`"] = "˞", ["~"] = "̃",
["_~"] = "̃", ["_A"] = "̘",
["_a"] = "̺", ["_B"] = "̏",
["_B_L"] = "᷅", ["_c"] = "̜",
["_d"] = "̪", ["_e"] = "̴",
["<F>"] = "↘", ["_F"] = "̂",
["_G"] = "ˠ", ["_H"] = "́",
["_H_T"] = "᷄", ["_h"] = "ʰ",
["_j"] = "ʲ", ["_k"] = "̰",
["_L"] = "̀", ["_l"] = "ˡ",
["_M"] = "̄", ["_m"] = "̻",
["_N"] = "̼", ["_n"] = "ⁿ",
["_O"] = "̹", ["_o"] = "̞",
["_q"] = "̙", ["<R>"] = "↗",
["_R"] = "̌", ["_R_F"] = "᷈",
["_r"] = "̝", ["_T"] = "̋",
["_t"] = "̤", ["_v"] = "̬",
["_w"] = "ʷ", ["_X"] = "̆",
["_x"] = "̽", ["_"] = "͡",
["__1"] = "˩", ["__2"] = "˨",
["__3"] = "˧", ["__4"] = "˦",
["__5"] = "˥", ["*"] = ""
}
return {
    main = function(frame)
        local s = frame.args[1]
        local l = s:len()
        local i = 1
        local res = {}
        local flag = false
        while i <= l do
            flag = true
            for j = 3, 0, -1 do
                local sym = alias[s:sub(i, i+j)]
                if sym then
                    i = i + j
                    table.insert(res, sym)
                    flag = false
                    break
                end
            end
            if flag then
                table.insert(res, s:sub(i, i))
                -- if the symbol is not found in the alias table then the character itself is used
            end
            i = i + 1
        end
        return table.concat(res)
    end
}