Template:FormatName: Difference between revisions
mNo edit summary |
mNo edit summary |
||
| Line 30: | Line 30: | ||
name = stdin:match("[^&]+") | name = stdin:match("[^&]+") | ||
name = string.gsub (name, | name = string.gsub (name, '([%a"]+)', | ||
function (str) | function (str) | ||
return replacements [str] or str | return replacements[str] or str | ||
end | end | ||
) | ) | ||
name = string.gsub( name, "_([%d.]+)^([%d.]+) ", '<span style="position:relative"><sub>%1</sub><span style="font-size:x-small;position:absolute;left:0px;top:-4px">%2</span></span>') | name = string.gsub( name, "_([%d.]+)^([%d.]+) ", '<span style="position:relative"><sub>%1</sub><span style="font-size:x-small;position:absolute;left:0px;top:-4px">%2</span></span>') | ||
name = string.gsub( name, "^([%d.]+)_([%d.]+) ", '<span style="position:relative"><sup>%1</sup><span style="font-size:x-small;position:absolute;left:0px;top:5px">%2</span></span>') | name = string.gsub( name, "%^([%d.]+)_([%d.]+) ", '<span style="position:relative"><sup>%1</sup><span style="font-size:x-small;position:absolute;left:0px;top:5px">%2</span></span>') | ||
name = string.gsub( name, "_(%d%d?) ", "<sub>%1</sub> " ) | name = string.gsub( name, "[^ ]_(%d%d?) ", "<sub>%1</sub> " ) | ||
name = string.gsub( name, "^(%d%d?) ", "<sup>%1</sup> " ) | name = string.gsub( name, "[^ ]%^(%d%d?) ", "<sup>%1</sup> " ) | ||
print(name) | print(name) | ||
|{{{1|==Greek Letters== | |{{{1|==Greek Letters== | ||
Write | Write "alpha", "beta", or "gamma" in lowercase. | ||
;Example. | ; Example. | ||
* | * "alpha" --> alpha | ||
* | * "beta" --> beta | ||
* | * "chi" --> chi | ||
* | * "delta" --> delta | ||
* | * "epsilon" --> epsilon | ||
* | * "gamma" --> gamma | ||
* "eta" --> eta | |||
* and so on. | |||
==Super/subscripts== | |||
Use "_" for subscripts, "^" for superscripts. To show both, write the longer super/sub-script first. Some word must follow after a space. | |||
; Example. | |||
* D _10 ^20 (next word) --> D_1^2 (next word) | |||
* D _10000 ^1 (next word) --> D_10000^1 (next word) | |||
* D ^10000 _1 (next word) --> D^10000_1 (next word) | |||
* D ^10 _10000 (bad example) -->D^10_10000 (bad example) | |||
}}}}} | }}}}} | ||
Revision as of 06:18, 20 January 2010
{{#lua:
replacements = {
["alpha"] = "α",
["beta"] = "β",
["chi"] = "χ",
["delta"] = "δ",
["Delta"] = "Δ",
["epsilon"] = "ε",
["zeta"] = "ζ",
["phi"] = "φ",
["gamma"] = "γ",
["Gamma"] = "Γ",
["eta"] = "η",
["kappa"] = "κ",
["lambda"] = "λ",
["mu"] = "μ",
["nu"] = "ν",
["pi"] = "π",
["Pi"] = "Π",
["theta"] = "θ",
["tau"] = "τ",
["upsilon"] = "υ",
["Upsilon"] = "Υ",
["phi"] = "φ",
["psi"] = "ψ",
["xi"] = "ξ",
["omega"] = "ω",
["sigma"] = "σ",
}
name = stdin:match("[^&]+")
name = string.gsub (name, '([%a"]+)',
function (str)
return replacements[str] or str
end
)
name = string.gsub( name, "_([%d.]+)^([%d.]+) ", '%1%2') name = string.gsub( name, "%^([%d.]+)_([%d.]+) ", '%1%2') name = string.gsub( name, "[^ ]_(%d%d?) ", "%1 " ) name = string.gsub( name, "[^ ]%^(%d%d?) ", "%1 " ) print(name)
|==Greek Letters== Write "alpha", "beta", or "gamma" in lowercase.
- Example.
- "alpha" --> alpha
- "beta" --> beta
- "chi" --> chi
- "delta" --> delta
- "epsilon" --> epsilon
- "gamma" --> gamma
- "eta" --> eta
- and so on.
Super/subscripts
Use "_" for subscripts, "^" for superscripts. To show both, write the longer super/sub-script first. Some word must follow after a space.
- Example.
- D _10 ^20 (next word) --> D_1^2 (next word)
- D _10000 ^1 (next word) --> D_10000^1 (next word)
- D ^10000 _1 (next word) --> D^10000_1 (next word)
- D ^10 _10000 (bad example) -->D^10_10000 (bad example)
}}