Jump to content
Wikipedia The Free Encyclopedia

Module:DecodeEncode/doc: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Line 1: Line 1:
{{Module rating |pre-alpha<!-- Values: pre-alpha • alpha • beta • release • protected -- If a rating not needed/relevant, delete this template call -->}}
{{Module rating |pre-alpha<!-- Values: pre-alpha • alpha • beta • release • protected -- If a rating not needed/relevant, delete this template call -->}}
<!-- Please place categories where indicated at the bottom of this page and interwikis at Wikidata (see [[Wikipedia:Wikidata]]) -->
<!-- Please place categories where indicated at the bottom of this page and interwikis at Wikidata (see [[Wikipedia:Wikidata]]) -->
Implements [[:mw:Extension:Scribunto/Lua_reference_manual#mw.text.decode|mw.text.decode]], [[:mw:Extension:Scribunto/Lua_reference_manual#mw.text.encode|mw.text.encode]]
Implements(追記) Lua functions (追記ここまで) [[:mw:Extension:Scribunto/Lua_reference_manual#mw.text.decode|mw.text.decode]], [[:mw:Extension:Scribunto/Lua_reference_manual#mw.text.encode|mw.text.encode]](追記) in a module. (追記ここまで)


See [[List of XML and HTML character entity references]].
See [[List of XML and HTML character entity references]].

Revision as of 23:01, 25 December 2020

This module is rated as pre-alpha. It is incomplete and may or may not be in active development. Do not use it in article namespace pages. A module remains in pre-alpha until its developer, or another editor who adopts it if it is abandoned for some time, considers the basic structure complete.

Implements Lua functions mw.text.decode, mw.text.encode in a module.

See List of XML and HTML character entity references.

{{#invoke:decode|s=Source&nbsp;text}}Source text

Decode

Decodes Named Entities from entity name into a regular (unicode) character:
&gt; --> >
&copy; --> ©

All welldefined named entities are decoded (HTML Named character references, formally: as defined in the PHP table).

A regular, rendered sentence:
"At 100 °F, & with a "burning" sun above, we walked"
In code:
"At 100&nbsp;&deg;F, &amp; with a &quot;burning&quot; sun above, we walked"-- in code
Processing:
{{#invoke:decodeEncode|decode|s=At 100 °F, & with a "burning" sun above, we walked}}
At 100 °F, & with a "burning" sun above, we walked -- In code: no named entities

Decode a reduced set only

By setting |subset_only=true, only these five entity names are decoded: '&lt;', '&gt;', '&amp;', '&quot;', '&nbsp;' (that is, into '<', '>', '&', '"', ' ').

Note: There is a difference with the relevant Lua parameter. (This only concerns your task if you also work directly with the Lua mw.text.decode function). Lua documentation defines parameter |decodeNamedEntities=, having this effect: when omitted or false, only the reduced set of entities is recognized and decoded. This use of 'false' is inverted in using |subset_only=: |decodeNamedEntities=false = |subset_only=true.
Also, this module ignores the "omitted" logic: |subset_only= should be set explicitly to 'true' to be effective.

Encode

Function encode encodes some entity-named characters into that name (for example: &&amp;).
A regular, sentence:
"At 100 °F, & with a "burning" sun above, we walked"; to process:
{{#invoke:decodeEncode|encode|s=At 100 °F, & with a "burning" sun above, we walked}}
→ "At 100 °F, &amp; with a &quot;burning&quot; sun above, we walked" -- in code
Per Lua documentation, only a small set of characters is processed. The charset can be set (|charset=). Format
Use escape character is '\' (backslash; not "%" then). Example: |charset=<>" \'& (the default), |charset=<>\|\°\"\'\&©; characters not in the default will be replaced by their decimal entity: ©&#169; (hexadecimal number, not decimal nor named &copy;)

See also

AltStyle によって変換されたページ (->オリジナル) /