Check out my first novel, midnight's simulacra!

Template:Localized link

From dankwiki
Jump to navigation Jump to search

<languages/> {{#ifeq:|

 |

}}[[Special:MyLanguage/{{{1}}}|{{#if: |{{{2}}} |{{#ifexist:Translations:{{#if:|:}}/Page display title/en

 |{{#ifexpr:{{#if:|1|0}} and !=0
   |{{#ifeq:en|en
     |
     |{{#if:
        |{{#ifeq:{{#invoke:string|find||:}}|0
          |
          | {{#invoke:string|match||:(.*)}}
        }}
        |{{#if:{{ Template:TNTN | nsp = 0 }}
          |{{ Template:TNTN | nsp = 0 }}
          |{{{1}}}
       }}
     }}
   }}
   |{{ Template:TNTN }}
 }}
 |{{#if:
   |{{#if:
     |
     |{{{1}}}
   }}
   |{{{1}}}
 }}

}}}}]]{{#ifeq:|

 |

}}[[:{{{1}}}| ]] {{#ifeq: Localized link | sandbox

|

Template:Template sandbox notice

}}Template:Template otherTemplate:Documentation/start box2 {{#switch: {{#if:Template:Tsh Template:High-use

<translate>

Purpose

</translate> <translate> This helper template can be used to link to [[<tvar name=1>Special:LanguageStats</tvar>|translatable pages]] in the user's language.</translate> <translate> It uses the special page prefix <tvar name=1>Special:MyLanguage/</tvar>, which checks if there is a translated version of a page in the user's language, and links to it if there is one, and links to a fallback language where available, or the default wiki language version (English in MediaWiki) if there isn't.</translate>

<translate> It should be used in translated pages, so that they link to the right page even if there is no translated page in that language.

Usage

</translate> Template:Localized link/doc

<translate> If the "<tvar name=1>nsp</tvar>" parameter is not defined, as link text this displays the full pagename (including the namespace); otherwise — if the "<tvar name=1>nsp</tvar>" parameter is defined to any value the link text displays the short pagename (without the namespace).

Examples of simple usage

</translate>

<translate> Use</translate> <translate> Becomes</translate>
Template:Tlx

}}[[Special:MyLanguage/Communication|{{#if:

{{{2}}} :}}Communication/Page display title/en 1|0}} and 0!=0 en Communication {{#if: find 0 match :(.*)}}
        }}
{{#if:{{ Template:TNTN | nsp = 0 }} {{ Template:TNTN | nsp = 0 }} Communication
       }}
     }}
   }}
{{ Template:TNTN }}
 }}
{{#if: {{#if:Communication Communication Communication
   }}
Communication
 }}

}}}}]]{{#ifeq:Communication|

}}

Template:Tlx

}}[[Special:MyLanguage/Communication|{{#if:コミュニケーション

コミュニケーション

}}

Template:Tlx

}}[[Special:MyLanguage/Project:About|{{#if:

{{{2}}} dankwiki:}}About/Page display title/en 1|0}} and 4!=0 en About {{#if: find 0 match :(.*)}}
        }}
{{#if:{{ Template:TNTN | nsp = 0 }} {{ Template:TNTN | nsp = 0 }} Project:About
       }}
     }}
   }}
{{ Template:TNTN }}
 }}
{{#if: {{#if:About About Project:About
   }}
Project:About
 }}

}}}}]]{{#ifeq:dankwiki:About|

}}

Template:Tlx

}}[[Special:MyLanguage/Project:About|{{#if:

{{{2}}} dankwiki:}}About/Page display title/en 1|0}} and 4!=0 en About {{#if: find 0 match :(.*)}}
        }}
{{#if:{{ Template:TNTN | nsp = 0 }} {{ Template:TNTN | nsp = 0 }} Project:About
       }}
     }}
   }}
{{ Template:TNTN }}
 }}
{{#if:0 {{#if:About About Project:About
   }}
Project:About
 }}

}}}}]]{{#ifeq:dankwiki:About|

}}

Template:)

<translate>

Usage in translatable pages

On pages prepared for translation with the <tvar name=1>{{#ifeq:Extension:Translate|

}}[[Special:MyLanguage/Extension:Translate|{{#if:

{{{2}}} :}}Extension:Translate/Page display title/en 1|0}} and 0!=0 en Extension:Translate {{#if: find 0 match :(.*)}}
        }}
{{#if:{{ Template:TNTN | nsp = 0 }} {{ Template:TNTN | nsp = 0 }} Extension:Translate
       }}
     }}
   }}
{{ Template:TNTN }}
 }}
{{#if:0 {{#if:Extension:Translate Extension:Translate Extension:Translate
   }}
Extension:Translate
 }}

}}}}]]{{#ifeq:Extension:Translate|

}} </tvar> extension, this template may be used in three ways. </translate>

  1. <translate> Substitute this template, then embed the wikilink target in a <tvar name=1>[[:Template:^(]]tvar name=id>...[[:Template:^(]]/tvar></tvar>, separate from the translatable text of the link.</translate>
    <translate> For example, instead of <tvar name=1>{{ll|Communication|About communication}}</tvar>, the translation markup in the translatable page will be <tvar name=2>[[[[:Template:^(]]tvar name=1>Special:MyLanguage/Communication[[:Template:^(]]/tvar>|About communication]]</tvar>.</translate>
  2. <translate> Alternatively, exclude this code from the translatable section.</translate>
    <translate> For example, for <tvar name=1>some text {{ll|Communication|About communication}} some text</tvar>, the translation markup in the translatable page will be:</translate>
    [[:Template:^(]]translate>some text[[:Template:^(]]/translate> {{ll|Communication|2=[[:Template:^(]]translate>About communication[[:Template:^(]]/translate>}} [[:Template:^(]]translate>some text[[:Template:^(]]/translate>
    <translate> This is useful for bulleted lists of links, e.g. in the "See also:" sections.</translate>
  3. <translate> If link text is the same as the name of the target page, all of the code could also be embedded into <tvar name=1>Template:Tag</tvar>.</translate>
    <translate> For example, instead of <tvar name=1>Template:Tlx</tvar>, the wikicode in the translatable page will be <tvar name=2>[[:Template:^(]]tvar name=1>{{ll|Communication}}[[:Template:^(]]/tvar></tvar>.</translate>

Test cases

Template:Localized link/testcases

<translate>

See also

</translate>

1001 | 1010 | 1011 | 1100 | 1101 | 1110 1111 = Template:Tsh

Template:High-use

<translate>

Purpose

</translate> <translate> This helper template can be used to link to [[<tvar name=1>Special:LanguageStats</tvar>|translatable pages]] in the user's language.</translate> <translate> It uses the special page prefix <tvar name=1>Special:MyLanguage/</tvar>, which checks if there is a translated version of a page in the user's language, and links to it if there is one, and links to a fallback language where available, or the default wiki language version (English in MediaWiki) if there isn't.</translate>

<translate> It should be used in translated pages, so that they link to the right page even if there is no translated page in that language.

Usage

</translate> Template:Localized link/doc

<translate> If the "<tvar name=1>nsp</tvar>" parameter is not defined, as link text this displays the full pagename (including the namespace); otherwise — if the "<tvar name=1>nsp</tvar>" parameter is defined to any value the link text displays the short pagename (without the namespace).

Examples of simple usage

</translate>

<translate> Use</translate> <translate> Becomes</translate>
Template:Tlx

}}[[Special:MyLanguage/Communication|{{#if:

{{{2}}} :}}Communication/Page display title/en 1|0}} and 0!=0 en Communication {{#if: find 0 match :(.*)}}
        }}
{{#if:{{ Template:TNTN | nsp = 0 }} {{ Template:TNTN | nsp = 0 }} Communication
       }}
     }}
   }}
{{ Template:TNTN }}
 }}
{{#if: {{#if:Communication Communication Communication
   }}
Communication
 }}

}}}}]]{{#ifeq:Communication|

}}

Template:Tlx

}}[[Special:MyLanguage/Communication|{{#if:コミュニケーション

コミュニケーション

}}

Template:Tlx

}}[[Special:MyLanguage/Project:About|{{#if:

{{{2}}} dankwiki:}}About/Page display title/en 1|0}} and 4!=0 en About {{#if: find 0 match :(.*)}}
        }}
{{#if:{{ Template:TNTN | nsp = 0 }} {{ Template:TNTN | nsp = 0 }} Project:About
       }}
     }}
   }}
{{ Template:TNTN }}
 }}
{{#if: {{#if:About About Project:About
   }}
Project:About
 }}

}}}}]]{{#ifeq:dankwiki:About|

}}

Template:Tlx

}}[[Special:MyLanguage/Project:About|{{#if:

{{{2}}} dankwiki:}}About/Page display title/en 1|0}} and 4!=0 en About {{#if: find 0 match :(.*)}}
        }}
{{#if:{{ Template:TNTN | nsp = 0 }} {{ Template:TNTN | nsp = 0 }} Project:About
       }}
     }}
   }}
{{ Template:TNTN }}
 }}
{{#if:0 {{#if:About About Project:About
   }}
Project:About
 }}

}}}}]]{{#ifeq:dankwiki:About|

}}

Template:)

<translate>

Usage in translatable pages

On pages prepared for translation with the <tvar name=1>{{#ifeq:Extension:Translate|

}}[[Special:MyLanguage/Extension:Translate|{{#if:

{{{2}}} :}}Extension:Translate/Page display title/en 1|0}} and 0!=0 en Extension:Translate {{#if: find 0 match :(.*)}}
        }}
{{#if:{{ Template:TNTN | nsp = 0 }} {{ Template:TNTN | nsp = 0 }} Extension:Translate
       }}
     }}
   }}
{{ Template:TNTN }}
 }}
{{#if:0 {{#if:Extension:Translate Extension:Translate Extension:Translate
   }}
Extension:Translate
 }}

}}}}]]{{#ifeq:Extension:Translate|

}} </tvar> extension, this template may be used in three ways. </translate>

  1. <translate> Substitute this template, then embed the wikilink target in a <tvar name=1>[[:Template:^(]]tvar name=id>...[[:Template:^(]]/tvar></tvar>, separate from the translatable text of the link.</translate>
    <translate> For example, instead of <tvar name=1>{{ll|Communication|About communication}}</tvar>, the translation markup in the translatable page will be <tvar name=2>[[[[:Template:^(]]tvar name=1>Special:MyLanguage/Communication[[:Template:^(]]/tvar>|About communication]]</tvar>.</translate>
  2. <translate> Alternatively, exclude this code from the translatable section.</translate>
    <translate> For example, for <tvar name=1>some text {{ll|Communication|About communication}} some text</tvar>, the translation markup in the translatable page will be:</translate>
    [[:Template:^(]]translate>some text[[:Template:^(]]/translate> {{ll|Communication|2=[[:Template:^(]]translate>About communication[[:Template:^(]]/translate>}} [[:Template:^(]]translate>some text[[:Template:^(]]/translate>
    <translate> This is useful for bulleted lists of links, e.g. in the "See also:" sections.</translate>
  3. <translate> If link text is the same as the name of the target page, all of the code could also be embedded into <tvar name=1>Template:Tag</tvar>.</translate>
    <translate> For example, instead of <tvar name=1>Template:Tlx</tvar>, the wikicode in the translatable page will be <tvar name=2>[[:Template:^(]]tvar name=1>{{ll|Communication}}[[:Template:^(]]/tvar></tvar>.</translate>

Test cases

Template:Localized link/testcases

<translate>

See also

</translate>

  • Template:Localized link/messagedoc — <translate> should be used for message documentation in translatable pages that use this template.</translate>
  • {{Translatable template}} - <translate> alias <tvar name=1>{{TNT}}</tvar> or <tvar name=2>{{tnt}}</tvar></translate>
  • {{Translatable template name}} - <translate> alias <tvar name=1>{{TNTN}}</tvar> or <tvar name=2>{{tntn}}</tvar></translate>
  • {{Page language link}} - <translate> alias <tvar name=1>{{pll}}</tvar></translate> - <translate> add a link from a translatable page to another translatable page in the same language</translate>
0111 = {{ {{{1}}} }} 0011 = {{ Template:Documentation/docspace:Template:Documentation/template page/doc }} 0100 | 0010 | 0101 =

}} Template:Documentation/end box2