Template:Localized link and Module:Documentation/styles.css: Difference between pages

From MAP Wiki
(Difference between pages)
m 1 revision imported: The whole damn thing this time (I think)
 
MediaWiki>ExE Boss
Unify doc header link colours to fix dark mode support
 
Line 1: Line 1:
<noinclude>
.ts-doc-sandbox .mbox-image {
<languages/>
padding:.75em 0 .75em .75em;
</noinclude><!--
}
-->{{#ifeq:{{FULLPAGENAME:{{{1}}}}}|{{FULLPAGENAME:{{translatable}}}}<!--self link (including translation pages)-->
  |<b>
.ts-doc-doc {
}}<!---->[[Special:MyLanguage/{{{1}}}|{{#if:{{{2|}}}
clear: both;
|{{{2}}}
background-color: #eaf3ff;
|{{{2|{{#ifexist:Translations:{{#if:{{NAMESPACE:{{{1}}}}}|{{NAMESPACE:{{{1}}}}}:}}{{PAGENAME:{{{1}}}}}/Page display title/{{PAGELANGUAGE}}<!--if the source page, PAGELANGUAGE returns en-->
color: var(--color-base, #202122);
  |{{#ifexpr:{{#if:{{{nsp|}}}|1|0}} and {{NAMESPACENUMBER:{{{1}}}}}!=0
border: 1px solid #a3caff;
    |{{#ifeq:{{PAGELANGUAGE}}|en
margin-top: 1em;
      |{{PAGENAME:{{{1}}}}}
border-top-left-radius: 2px;
      |<!-- check whether the string is not empty --><!--
border-top-right-radius: 2px;
    -->{{#if:{{PAGENAME:{{ {{TNTN|Translations:{{#if:{{NAMESPACE:{{{1}}}}}|{{NAMESPACE:{{{1}}}}}:}}{{PAGENAME:{{{1}}}}}/Page_display_title}} }} }}
}
        |{{#ifeq:{{#invoke:string|find|{{PAGENAME:{{ {{TNTN|Translations:{{#if:{{NAMESPACE:{{{1}}}}}|{{NAMESPACE:{{{1}}}}}:}}{{PAGENAME:{{{1}}}}}/Page_display_title}} }} }}|:}}|0
          |{{PAGENAME:{{ {{TNTN|Translations:{{#if:{{NAMESPACE:{{{1}}}}}|{{NAMESPACE:{{{1}}}}}:}}{{PAGENAME:{{{1}}}}}/Page_display_title}} }} }}
          | {{#invoke:string|match|{{PAGENAME:{{ {{TNTN|Translations:{{#if:{{NAMESPACE:{{{1}}}}}|{{NAMESPACE:{{{1}}}}}:}}{{PAGENAME:{{{1}}}}}/Page_display_title}} }} }}|:(.*)}}
        }}
        |<!-- pass parameter to, e.g., "Template:LC zh"; check whether the string is not empty --><!--
      -->{{#if:{{ {{TNTN|Translations:{{#if:{{NAMESPACE:{{{1}}}}}|{{NAMESPACE:{{{1}}}}}:}}{{PAGENAME:{{{1}}}}}/Page_display_title}} | nsp = 0 }}
          |{{ {{TNTN|Translations:{{#if:{{NAMESPACE:{{{1}}}}}|{{NAMESPACE:{{{1}}}}}:}}{{PAGENAME:{{{1}}}}}/Page_display_title}} | nsp = 0 }}
          |{{{1}}}
        }}
      }}
    }}
    |{{ {{TNTN|Translations:{{#if:{{NAMESPACE:{{{1}}}}}|{{NAMESPACE:{{{1}}}}}:}}{{PAGENAME:{{{1}}}}}/Page_display_title}} }}
  }}
  <!--if the translation page does not exist (or called from the source page), output as is-->
  |{{#if:{{{nsp|}}}
    |{{#if:{{PAGENAME:{{{1}}}}}
      |{{PAGENAME:{{{1}}}}}
      |{{{1}}}
    }}
    |{{{1}}}
  }}
}}<!--#ifexist--><!--
-->}}}<!--{{{2|--><!--
-->}}<!--#if:{{{2|}}}--><!--
-->]]<!--
-->{{#ifeq:{{FULLPAGENAME:{{{1}}}}}|{{FULLPAGENAME:{{translatable}}}}<!--self link (including translation pages)-->
  |</b>
}}<span style="display:none">[[:{{{1}}}| ]]</span><!-- T63547 --><noinclude>
{{documentation|content=


{{tsh|ll|LL}}
.ts-doc-header {
{{High-use|35000}}
background-color: #cbd6f6;
color: var(--color-base, #202122);
padding: .642857em 1em .5em;
border-top-left-radius: 2px;
border-top-right-radius: 2px;
}


<translate>
.ts-doc-heading {
== Purpose == <!--T:1-->
display: inline-block;
</translate>
padding-left: 30px;
<translate><!--T:8--> This helper template can be used to link to [[<tvar name=1>Special:LanguageStats</tvar>|translatable pages]] in the user's language.</translate>
background: center left / 24px 24px no-repeat;
<translate><!--T:9--> It uses the special page prefix <tvar name=1><code>Special:MyLanguage/</code></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>
/* @noflip */
background-image: url( //upload.wikimedia.org/wikipedia/commons/f/fb/OOjs_UI_icon_puzzle-ltr.svg );
height: 24px;
line-height: 24px;
font-size: 13px;
font-weight: 600;
letter-spacing: 1px;
text-transform: uppercase;
}


<translate>
.ts-doc-header .ts-tlinks-tlinks {
<!--T:10-->
line-height: 24px;
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.
margin-left: 0;
}


== Usage == <!--T:2-->
.ts-doc-header .ts-tlinks-tlinks a {
</translate>
color: var(--color-progressive, #36c);
{{Localized link/doc}}
}


<translate>
.ts-doc-header .ts-tlinks-tlinks a:active {
<!--T:11-->
color: var(--color-progressive--active, #233566);
If the "<tvar name=1><code>nsp</code></tvar>" parameter is not defined, as link text this displays the full pagename (including the namespace); otherwise — if the "<tvar name=1><code>nsp</code></tvar>" parameter is defined to any value the link text displays the short pagename (without the namespace).
}


<!--T:25-->
.ts-doc-header .ts-tlinks-tlinks a:visited {
When linking to a section within a page, the section is not displayed in the link text.
color: var(--color-visited, #6a60b0);
}


=== Examples of simple usage === <!--T:3-->
.ts-doc-header .ts-tlinks-tlinks a:visited:active {
</translate>
color: var(--color-visited--active, #233566);
{{(}}{{!}} class="wikitable"
}
{{!}}-
! <translate><!--T:4--> Use</translate>
! <translate><!--T:5--> Becomes</translate>
{{!}}-
{{!}} {{Tlx|ll|Communication}}
{{!}} {{ll|Communication}}
{{!}}-
{{!}} {{Tlx|ll|Communication|コミュニケーション}}
{{!}} {{ll|Communication|コミュニケーション}}
{{!}}-
{{!}} {{Tlx|ll|Project:About}}
{{!}} {{ll|Project:About}}
{{!}}-
{{!}} {{Tlx|ll|Project:About#See_also}}
{{!}} {{ll|Project:About#See_also}}
{{!}}-
{{!}} {{Tlx|ll|Project:About|nsp{{=}}0}}
{{!}} {{ll|Project:About|nsp=0}}
{{!}}{{)}}


<translate>
.ts-doc-content {
== Usage in translatable pages == <!--T:6-->
padding: .214286em 1em;
}


<!--T:12-->
.ts-doc-content:after {
On pages prepared for translation with the <tvar name=1>{{ll|Extension:Translate|nsp=0}}</tvar> extension, this template may be used in three ways.
content: '';
</translate>
clear: both;
display: block;
}


# <translate><!--T:13--> Substitute this template, then embed the wikilink target in a <tvar name=1>{{#tag:syntaxhighlight|{{^(}}tvar name=id{{)^}}...{{^(}}/tvar{{)^}}|lang=html|inline=1}}</tvar>, separate from the translatable text of the link.</translate>
.ts-doc-content > :first-child {
#: <translate><!--T:26--> For example:</translate> {{#tag:syntaxhighlight|Learn more {{{{^(}}tvar name=1{{)^}}ll|Communication{{^(}}/tvar{{)^}}|about communication}}.|lang=html|inline=1}}
margin-top: .5em;
# <translate><!--T:16--> 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>{{tag|tvar|open}}</tvar>.</translate>
}
#: <translate><!--T:27--> For example:</translate> {{#tag:syntaxhighlight|Learn more about {{^(}}tvar name=1{{)^}}<nowiki>{{ll|Communication}}</nowiki>{{^(}}/tvar{{)^}}.|lang=html|inline=1}}
# <translate><!--T:28--> For standalone links, such as in a list or table, translate only the link text if it differs from the name of the target page.</translate> <translate><!--T:15--> This is useful for bulleted lists of links, e.g. in the "See also:" sections.</translate> <translate><!--T:29--> Make sure to include the parameter name when adding translate tags inside template syntax.</translate>
#: <translate><!--T:30--> For example:</translate>
::: {{#tag:syntaxhighlight|* {{((}}ll{{!}}Project:About{{))}}|lang=html|inline=1}}
::: {{#tag:syntaxhighlight|* {{((}}ll{{!}}Communication{{!}}2={{^(}}translate{{)^}}About communication{{^(}}/translate{{)^}}{{))}}|lang=html|inline=1}}


== Test cases ==
.ts-doc-content > :last-child {
{{Localized link/testcases}}
margin-bottom: .5em;
}


<translate>
.ts-doc-footer {
== See also == <!--T:7-->
background-color: #eaf3ff;
</translate>
color: var(--color-base, #202122);
* [[Template:Localized link/messagedoc]] — <translate><!--T:17--> should be used for message documentation in translatable pages that use this template.</translate>
border: 1px solid #a3caff;
* {{tl|Translatable template}} - <translate><!--T:18--> alias <tvar name=1>{{tl|TNT}}</tvar> or <tvar name=2>{{tl|tnt}}</tvar></translate>
padding: .214286em 1em;
* {{tl|Translatable template name}} - <translate><!--T:19--> alias <tvar name=1>{{tl|TNTN}}</tvar> or <tvar name=2>{{tl|tntn}}</tvar></translate>
margin-top: .214286em;
* {{tl|Page language link}} - <translate><!--T:20--> alias <tvar name=1>{{tl|pll}}</tvar></translate> - <translate><!--T:21--> add a link from a translatable page to another translatable page in the same language</translate>
font-style: italic;
}}
border-bottom-left-radius: 2px;
[[Category:Internationalization templates{{#translation:}}]]
border-bottom-right-radius: 2px;
</noinclude>
}
 
@media all and (min-width: 720px) {  
.ts-doc-header .ts-tlinks-tlinks {
float: right;
}
}
 
html.skin-theme-clientpref-night .ts-doc-header {
background-color: #3056a9;
}
 
html.skin-theme-clientpref-night .ts-doc-heading {
background-image: url( '//upload.wikimedia.org/wikipedia/commons/d/d3/OOjs_UI_icon_puzzle-ltr-invert.svg' );
}
 
html.skin-theme-clientpref-night .ts-doc-doc,
html.skin-theme-clientpref-night .ts-doc-footer {
background-color: #1b223d;
}
 
@media screen and (prefers-color-scheme: dark) {
html.skin-theme-clientpref-os .ts-doc-header {
background-color: #3056a9;
}
html.skin-theme-clientpref-os .ts-doc-heading {
background-image: url( '//upload.wikimedia.org/wikipedia/commons/d/d3/OOjs_UI_icon_puzzle-ltr-invert.svg' );
}
html.skin-theme-clientpref-os .ts-doc-doc,
html.skin-theme-clientpref-os .ts-doc-footer {
background-color: #1b223d;
}
}

Revision as of 11:00, 28 December 2024

.ts-doc-sandbox .mbox-image	{
	padding:.75em 0 .75em .75em;
}
	
.ts-doc-doc {
	clear: both;
	background-color: #eaf3ff;
	color: var(--color-base, #202122);
	border: 1px solid #a3caff;
	margin-top: 1em;
	border-top-left-radius: 2px;
	border-top-right-radius: 2px;
}

.ts-doc-header {
	background-color: #cbd6f6;
	color: var(--color-base, #202122);
	padding: .642857em 1em .5em;
	border-top-left-radius: 2px;
	border-top-right-radius: 2px;
}

.ts-doc-heading {
	display: inline-block;
	padding-left: 30px;
	background: center left / 24px 24px no-repeat;
	/* @noflip */
	background-image: url( //upload.wikimedia.org/wikipedia/commons/f/fb/OOjs_UI_icon_puzzle-ltr.svg );
	height: 24px;
	line-height: 24px;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 1px;
	text-transform: uppercase;
}

.ts-doc-header .ts-tlinks-tlinks {
	line-height: 24px;
	margin-left: 0;
}

.ts-doc-header .ts-tlinks-tlinks a {
	color: var(--color-progressive, #36c);
}

.ts-doc-header .ts-tlinks-tlinks a:active {
	color: var(--color-progressive--active, #233566);
}

.ts-doc-header .ts-tlinks-tlinks a:visited {
	color: var(--color-visited, #6a60b0);
}

.ts-doc-header .ts-tlinks-tlinks a:visited:active {
	color: var(--color-visited--active, #233566);
}

.ts-doc-content {
	padding: .214286em 1em;
}

.ts-doc-content:after {
	content: '';
	clear: both;
	display: block;
}

.ts-doc-content > :first-child {
	margin-top: .5em;
}

.ts-doc-content > :last-child {
	margin-bottom: .5em;
}

.ts-doc-footer {
	background-color: #eaf3ff;
	color: var(--color-base, #202122);
	border: 1px solid #a3caff;
	padding: .214286em 1em;
	margin-top: .214286em;
	font-style: italic;
	border-bottom-left-radius: 2px;
	border-bottom-right-radius: 2px;
}

@media all and (min-width: 720px) { 
	.ts-doc-header .ts-tlinks-tlinks {
		float: right;
	}
}

html.skin-theme-clientpref-night .ts-doc-header {
	background-color: #3056a9;
}

html.skin-theme-clientpref-night .ts-doc-heading {
	background-image: url( '//upload.wikimedia.org/wikipedia/commons/d/d3/OOjs_UI_icon_puzzle-ltr-invert.svg' );	
}

html.skin-theme-clientpref-night .ts-doc-doc,
html.skin-theme-clientpref-night .ts-doc-footer {
	background-color: #1b223d;
}

@media screen and (prefers-color-scheme: dark) {
	html.skin-theme-clientpref-os .ts-doc-header {
		background-color: #3056a9;
	}
	
	html.skin-theme-clientpref-os .ts-doc-heading {
		background-image: url( '//upload.wikimedia.org/wikipedia/commons/d/d3/OOjs_UI_icon_puzzle-ltr-invert.svg' );	
	}
	
	html.skin-theme-clientpref-os .ts-doc-doc,
	html.skin-theme-clientpref-os .ts-doc-footer {
		background-color: #1b223d;
	}
}