- > 123 | 123/456
- > 1/2/3 | 1/2/3/4/5/6
- > all subpages
//en.wikipedia.org/wiki/Wikipedia:Pagename cirreous
the letter—que
bare, template fullurl is https://en.wikipedia.org/wiki/User:Cpiral/sandbox/E
bare, template canonicalurl is {{canonicalurl}}
fullurl:arg is //en.wikipedia.org/wiki/Arg
canonicalurl:arg is https://en.wikipedia.org/wiki/Arg
canonicalurl|FULLPAGENAMEE is {{canonicalurl|FULLPAGENAMEE}}
canonicalurl:FULLPAGENAMEE is https://en.wikipedia.org/wiki/FULLPAGENAMEE
fullpagenamee is User:Cpiral/sandbox/E
fullpagename is User:Cpiral/sandbox/E
insource:canonicalurl prefix:User:Cpiral/sandbox/E
Not accepted in page naming (such as in EL to non-existent page): : # < > [ ] | { } _
A localurl ignorance (stop translating line): #
An anchorencode ignorance characters (but keep translating line): < or >
Not shown or tested in the following: |
pre All pages with titles containing label2 poste
pre All pages with titles containing label2 poste pre All pages with titles containing Cpiral/sandbox/E poste
Documentation
editThere are literally thousands of text patterns possible for each single link.
The general URI is
scheme:[//[user:password@]host[:port]][/]path[?query][#fragment]
For Wikipedia the significant form is //host/path1path2#section
.
Host is any searchable text pattern:
- //en.wikipedia.org
- //en.wikipedia.org
- //en.wikipedia.org
One path is any of the the following searchable path2 text patterns: (suffixed to any of the path1 forms below)
- namespace:pagename
where namespace can be any text pattern:
- User
- User
- User talk
and pagename can be any text pattern:
- User:Cpiral/sandbox/E
- namespace:pagename
- User:Cpiral/sandbox/E
- basepagename/subpagename
- ../subpagename
- basepagename
- rootpagename
- articlepagename
- subjectpagename
- talkpagename
- User:Cpiral/sandbox, and repetitive
- path2
All these ending with NAME}} can have the NAMEE}} form too.
Path1 is
- /w/query
- /w/query
where query is
- index.php?title=
- index.php?pageid=
OR
- /wiki//wiki/Path2
- https://en.wikipedia.org/wiki/Path2
- //en.wikipedia.org/wiki/Path2
and each path2 can have
- string
- string an encoding parameter attached
and each *URL can have
- |WIKI
- |PATH
Section can be
- #section
- #{</nowiki>{ANCHORENCODE|section}}
Overall one
edit{{SERVER}}{{localurl:media:pagename}}#sectiON → | //en.wikipedia.org/wiki/File:Pagename#sectiON |
{{SERVER}}{{localurl:media:pagename}}#sectiON → | //en.wikipedia.org/wiki/File:Pagename#sectiON |
{{fullurl:media:pagename}}#sectiON → | //en.wikipedia.org/wiki/File:Pagename#sectiON |
Overall two
edit{{fullurl:template:pagename/Ss!:#_+@$%^&*()-=\:;"',.?/eE}}] → [in brackets]
//en.wikipedia.org/wiki/Template:Pagename/Ss!:#_+@$%^&*()-=\:;"',.?/eE → "',.?/eE
{{canonicalurl:template:pagename/Ss!:#_+@$%^&*()-=\:;"',.?/eE}} →
https://en.wikipedia.org/wiki/Template:Pagename/Ss!:#_+@$%^&*()-=\:;"',.?/eE
{{fullurl:template:pagename/Ss!:{{urlencode:#_+@$%^&*()-=\:;"',.?/eE}}}}] → [in brackets]
//en.wikipedia.org/wiki/Template:Pagename/Ss!:#_+@$%^&*()-=\:;"',.?/eE → "',.?/eE
{{canonicalurl:template:pagename/Ss!:{{urlencode:#_+@$%^&*()-=\:;"',.?/eE}}}}] →
https://en.wikipedia.org/wiki/Template:Pagename/Ss!:#_+@$%^&*()-=\:;"',.?/eE
{{fullurl:template:pagename/Ss!:{{anchorencode:#_+@$%^&*()-=\:;"',.?/eE}}}}] → [in brackets]
{{fullurl:template:pagename/Ss!:
- _+@$%^&*()-=\:;"',.?/eE}} → [{{fullurl:template:pagename/Ss!:
- _+@$%^&*()-=\:;"',.?/eE}}]
{{canonicalurl:template:pagename/Ss!:{{anchorencode:#_+@$%^&*()-=\:;"',.?/eE}}}}] →
{{canonicalurl:template:pagename/Ss!:
- _+@$%^&*()-=\:;"',.?/eE}}
[{{localurl:template:pagename/Ss!:_+@$%^&*()-=\:;"#',.?/eE}}] → [/wiki/Template:Pagename/Ss!:_%2B@$%25%5E%26*()-%3D%5C:;%22]
[{{localurl:template:pagename/Ss!#:_+@$%^&*()-=\:;"',.?/eE}}] → [/wiki/Template:Pagename/Ss!]
Overall three
editCharacter encoding uses the hex character code.
Anchorencode employs dot-encoding. Anchorencoding encodes [[pagename # the anchor]]. You put it after the number # sign, to encode characters in section headings, which can be anything, even be characters not allowed in titles. For example, localurl is for titles; it fails the number # sign test.
But fullurl and canonicalurl also do dot encoding and they handle the pound sign correctly, dis-allowing forbidden characters in the titles, encoding the number # sign after any initial number # sign, and allowing disallowed characters in the section headings.
So canonicalurl and fullurl allow disallowed characters to the right of a number # sign in there argument. So that take full care of anchorencode needs. Some characters canonicalurl and fullurl just can't take anywhere? They both interpret the pipe | character as the sign of a parameter. They are in between wiki and web, and translate from | (WIKI parameter) to & (QUERY URL parameter). But they both take the number # sign as a sign of a section, and encode the two sides with different character allowances.
For example if you put any of the disallowed characters {}[]<>|# between the 99 nines of canonicalurl or fullurl its acts like plain wikitext.
- {{ canonicalurl:__99__##[] {} <>}} → https://en.wikipedia.org/wiki/99##[]_{}_<>
- https:{{ fullurl:__99__##[] {} <>}} → https://en.wikipedia.org/wiki/99##[]_{}_<>
- {{ anchorencode: #[] {} <>}} →
- []_{}
Anchorencode encodes things just like canonicalurl and fullurl, but anchorencode ignores <>.
Fullpagename # anchorencodedSectionHeading? Maybe in
- https:{{SERVER}}{{localurl:Operating system}}#{{anchorencode:See also}} →
- https://en.wikipedia.org/wiki/Operating_system#See_also
URL encoding can take a parameter for encoding path, query, or wiki. It only changes how it encodes the space character.
Arg | Space |
---|---|
none | + |
QUERY | + |
WIKI | _ |
PATH | %20 |
{{fullurl:template:pagename/Ss#_+{}[]<>eE}} → | //en.wikipedia.org/wiki/Template:Pagename/Ss#_+{}[]<>eE |
{{canonicalurl:template:pagename/Ss#_+{}[]<>eE}} → | https://en.wikipedia.org/wiki/Template:Pagename/Ss#_+{}[]<>eE |
{{localurl:template:pagename/Ss#Everyngith ignored}} → | /wiki/Template:Pagename/Ss |
{{localurl:template:pagename/Ss<}} → | {{localurl:template:pagename/Ss<Everthing broken}} |
{{localurl:template:pagename/Ss!@$%^&*()+:";',.?eE}} → | /wiki/Template:Pagename/Ss!@$%25%5E%26*()%2B:%22;%27,.%3FeE |
{{fullurl:notaNS:pagename|yourParam}} → | //en.wikipedia.org/w/index.php?title=NotaNS:pagename&yourParam |
{{canonicalurl:notaNS:pagename|yourParam}} → | https://en.wikipedia.org/w/index.php?title=NotaNS:pagename&yourParam |
{{localurl:notaNS:pagename|yourParam}} → | /w/index.php?title=NotaNS:pagename&yourParam |
{{urlencode:Ss!#@$%^&*()+-=\:;"',.?/eE}} → | Ss%21%40%24%25%5E%26%2A%28%29%2B-%3D%5C%3A%3B%22%27%2C.%3F%2FeE |
{{urlencode:Ss!@#$%^&*()+-=\:;"',.?/eE|WIKI}} → | Ss!@$%25%5E%26*()%2B-%3D%5C:;%22%27,.%3F/eE |
{{urlencode:Ss!@#$%^&*()+-=\:;"',.?/eE|PATH}} → | Ss%21%40%24%25%5E%26%2A%28%29%2B-%3D%5C%3A%3B%22%27%2C.%3F%2FeE |
{{urlencode:Ss#<>[]{}_eE|QUERY}} → | Ss+%23%3C%3E%5B%5D%7B%7D_eE |
{{urlencode:Ss#<>[]{}_eE|PATH}} → | Ss%20%23%3C%3E%5B%5D%7B%7D_eE |
{{urlencode:Ss#<>[]{}_eE|WIKI}} → | Ss_%23%3C%3E%5B%5D%7B%7D_eE |
{{anchorencode:Ss!#@$%^&*()+-=\:;"',.?/eE}} → | Ss!#@$%^&*()+-=\:;"',.?/eE |
{{anchorencode:Ss#<>[]{}_eE}} → | Ss#[]{}_eE (ignored the <>) |
{{ anchorencode: Ss á é eE }} → | Ss_á_é_eE |
Examples
editOperating system
editWhen is URL needed, and the url-parameters?
{{ fullurl: operating system }] →
//en.wikipedia.org/wiki/Operating_system →
[1] OK
{{ fullurl: operating system | title=operating system }} →
//en.wikipedia.org/w/index.php?title=Operating_system&title=operating system →
system NO
{{ fullurl: operating system | title=operating_system }} →
//en.wikipedia.org/w/index.php?title=Operating_system&title=operating_system →
[2] OK
{{ fullurl: operating system | query = operating_system }} →
//en.wikipedia.org/w/index.php?title=Operating_system&query = operating_system →
= operating_system NO
{{ fullurl: operating system | query=operating_system }} →
//en.wikipedia.org/w/index.php?title=Operating_system&query=operating_system →
[3] OK
{{ canonicalurl: operating system }} →
https://en.wikipedia.org/wiki/Operating_system
{{ urlencode: operating system }} →
operating+system
{{ fullurl: {{ urlencode: operating system }} →
//en.wikipedia.org/wiki/Operating%2Bsystem →
[4] NO
{{ fullurl: { urlencode: operating system | query }} →
//en.wikipedia.org/wiki/Operating%2Bsystem →
[5] NO
{{ fullurl: { urlencode: operating system | path }} } →
//en.wikipedia.org/wiki/Operating_system →
[6] OK
{{ fullurl: { urlencode: operating system | wiki }} →
//en.wikipedia.org/wiki/Operating_system →
[7] OK
{{ canonicalurl: {{ urlencode: operating system }} →
https://en.wikipedia.org/wiki/Operating%2Bsystem NO
Encoding characters
edit{{ fullurl:E-prime#Different functions of "to be" }} →
//en.wikipedia.org/wiki/E-prime#Different_functions_of_"to_be" →
"to_be" OK
Can't Stop Won't Stop →
{{fullurl: Can't Stop Won't Stop }} →
//en.wikipedia.org/wiki/Can%27t_Stop_Won%27t_Stop →
[8] OK
{{canonicalurl: Can't Stop Won't Stop }} →
https://en.wikipedia.org/wiki/Can%27t_Stop_Won%27t_Stop OK
2+2 →
{{ fullurl: 2+2 }} →
//en.wikipedia.org/wiki/2%2B2 →
[9] OK
{{ canonicalurl: 2+2 }} →
https://en.wikipedia.org/wiki/2%2B2 OK
URL parameters
edit{{ SERVER }}{{ localurl: Special:Search | title=Help:magic_words#Variables }} →
//en.wikipedia.org/w/index.php?title=Special:Search&title=Help:magic_words#Variables →
[10] OK
{{ fullurl: Special:Search | title=Help:magic_words#Variables }} →
//en.wikipedia.org/w/index.php?title=Special:Search&title=Help:magic_words#Variables →
[11] OK
{{ canonicalurl:Special:Search | title=Help:magic_words#Variables }} →
https://en.wikipedia.org/w/index.php?title=Special:Search&title=Help:magic_words#Variables →
[12] OK