Module:DecodeEncode/doc: Difference between revisions
Appearance
From Wikipedia, the free encyclopedia
No edit summary
No edit summary
Line 21:
Line 21:
:Processing:
:Processing:
:<code><nowiki>{{#invoke:(削除) TextEntity (削除ここまで)|decode|s=At 100 °F, & with a "burning" sun above, we walked}}</nowiki></code> →
:<code><nowiki>{{#invoke:(追記) decodeEncode (追記ここまで)|decode|s=At 100 °F, & with a "burning" sun above, we walked}}</nowiki></code> →
::<code>{{#invoke:(削除) TextEntity (削除ここまで)|decode|s=At 100 °F, & with a "burning" sun above, we walked}}</code> -- In code: no named entities
::<code>{{#invoke:(追記) decodeEncode (追記ここまで)|decode|s=At 100 °F, & with a "burning" sun above, we walked}}</code> -- In code: no named entities
===Decode a reduced set only===
===Decode a reduced set only===
Line 39:
Line 39:
:<code>"At 100 °F, & with a "burning" sun above, we walked"</code>; to process:
:<code>"At 100 °F, & with a "burning" sun above, we walked"</code>; to process:
:<code><nowiki>{{#invoke:(削除) TextEntity (削除ここまで)|encode|s=At 100 °F, & with a "burning" sun above, we walked}}</nowiki></code>
:<code><nowiki>{{#invoke:(追記) decodeEncode (追記ここまで)|encode|s=At 100 °F, & with a "burning" sun above, we walked}}</nowiki></code>
::→ "<code>At 100 °F, &amp; with a &quot;burning&quot; sun above, we walked</code>" -- in code
::→ "<code>At 100 °F, &amp; with a &quot;burning&quot; sun above, we walked</code>" -- in code
Revision as of 22:58, 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 mw.text.decode, mw.text.encode
See List of XML and HTML character entity references.
{{#invoke:decode|s=Source text}}
→Source text
Decode
- Decodes Named Entities from entity name into a regular (unicode) character:
>
-->>
©
-->©
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 °F, & with a "burning" 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: '<', '>', '&', '"', ' ' (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:&
→&
).
- 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, & with a "burning" 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:©
→©
(hexadecimal number, not decimal nor named ©)