User:AKAAkira/SimpleNav: Difference between revisions
Jump to navigation
Jump to search
Typos. Fixing so that it'll show only the link to home page in "other" pages such as Terminology pages. Removed the Illustration-to-Illustration linking. |
m Forgot to trim extra... |
||
(2 intermediate revisions by the same user not shown) | |||
Line 244: | Line 244: | ||
<!-- Only meant for those pages that end in a chapter number --> | <!-- Only meant for those pages that end in a chapter number --> | ||
| {{#ifeq: {{#iferror: {{#expr: {{#sub: {{FULLPAGENAME}} | -2 }} + 0 }} | | | {{#ifeq: {{#iferror: {{#expr: {{#sub: {{FULLPAGENAME}} | -2 }} + 0 }} | {{#sub: {{FULLPAGENAME}} | -1 }} }} | ||
| {{{s|{{{startchapter|1 }}} }}} | | {{{s|{{{startchapter|1 }}} }}} | ||
Line 258: | Line 258: | ||
| {{#ifexist: {{#sub: {{FULLPAGENAME}} | 0 | {{#rpos: {{#sub: {{FULLPAGENAME}} | 0 | -3 }} | }} }} <!-- | | {{#ifexist: {{#sub: {{FULLPAGENAME}} | 0 | {{#rpos: {{#sub: {{FULLPAGENAME}} | 0 | -3 }} | }} }} <!-- | ||
-->{{#replace: {{#sub: {{FULLPAGENAME}} | {{#rpos: {{#sub: {{FULLPAGENAME}} | 0 | -3 }} | }} }} | -->{{#replace: {{#sub: {{FULLPAGENAME}} | {{#rpos: {{#sub: {{FULLPAGENAME}} | 0 | -3 }} | }} }} | ||
| {{#iferror: {{#expr: {{#sub: {{FULLPAGENAME}} | -2 }} + 0 }} | | | {{#iferror: {{#expr: {{#sub: {{FULLPAGENAME}} | -2 }} + 0 }} | {{#sub: {{FULLPAGENAME}} | -1 }} }} | ||
| {{#expr: {{#iferror: {{#expr: {{#sub: {{FULLPAGENAME}} | -2 }} + 0 }} | | | {{#expr: {{#iferror: {{#expr: {{#sub: {{FULLPAGENAME}} | -2 }} + 0 }} | {{#sub: {{FULLPAGENAME}} | -1 }} }} - 1 }} | ||
}} | }} | ||
| {{!}} Back to [[ {{#sub: {{FULLPAGENAME}} | 0 | {{#rpos: {{#sub: {{FULLPAGENAME}} | 0 | -3 }} | }} }} <!-- | | {{!}} Back to [[ {{#sub: {{FULLPAGENAME}} | 0 | {{#rpos: {{#sub: {{FULLPAGENAME}} | 0 | -3 }} | }} }} <!-- | ||
-->{{#replace: {{#sub: {{FULLPAGENAME}} | {{#rpos: {{#sub: {{FULLPAGENAME}} | 0 | -3 }} | }} }} | -->{{#replace: {{#sub: {{FULLPAGENAME}} | {{#rpos: {{#sub: {{FULLPAGENAME}} | 0 | -3 }} | }} }} | ||
| {{#iferror: {{#expr: {{#sub: {{FULLPAGENAME}} | -2 }} + 0 }} | | | {{#iferror: {{#expr: {{#sub: {{FULLPAGENAME}} | -2 }} + 0 }} | {{#sub: {{FULLPAGENAME}} | -1 }} }} | ||
| {{#expr: {{#iferror: {{#expr: {{#sub: {{FULLPAGENAME}} | -2 }} + 0 }} | | | {{#expr: {{#iferror: {{#expr: {{#sub: {{FULLPAGENAME}} | -2 }} + 0 }} | {{#sub: {{FULLPAGENAME}} | -1 }} }} - 1 }} | ||
}} <!-- | }} <!-- | ||
-->| {{{bn|{{{backname|Chapter {{#expr: {{#iferror: {{#expr: {{#sub: {{FULLPAGENAME}} | -2 }} + 0 }} | | -->| {{{bn|{{{backname|Chapter {{#expr: {{#iferror: {{#expr: {{#sub: {{FULLPAGENAME}} | -2 }} + 0 }} | {{#sub: {{FULLPAGENAME}} | -1 }} }} - 1 }} }}} }}} | ||
]] | ]] | ||
}} | }} | ||
Line 368: | Line 368: | ||
<!-- This case is for when the page is on Chapter {{{e}}}; it checks the last number against {{{e}}}, | <!-- This case is for when the page is on Chapter {{{e}}}; it checks the last number against {{{e}}}, | ||
and if they're the same, it returns Chapter {{{e}}} --> | and if they're the same, it returns Chapter {{{e}}} --> | ||
| {{#ifeq: {{#iferror: {{#expr: {{#sub: {{FULLPAGENAME}} | -2 }} + 0 }} | | | {{#ifeq: {{#iferror: {{#expr: {{#sub: {{FULLPAGENAME}} | -2 }} + 0 }} | {{#sub: {{FULLPAGENAME}} | -1 }} }} | ||
| {{{e|{{{endchapter}}} }}} | | {{{e|{{{endchapter}}} }}} | ||
| {{#sub: {{FULLPAGENAME}} | {{#rpos: {{#sub: {{FULLPAGENAME}} | 0 | -3 }} | }} }} | | {{#sub: {{FULLPAGENAME}} | {{#rpos: {{#sub: {{FULLPAGENAME}} | 0 | -3 }} | }} }} | ||
Line 436: | Line 436: | ||
| {{#ifexist: {{#sub: {{FULLPAGENAME}} | 0 | {{#rpos: {{#sub: {{FULLPAGENAME}} | 0 | -3 }} | }} }} <!-- | | {{#ifexist: {{#sub: {{FULLPAGENAME}} | 0 | {{#rpos: {{#sub: {{FULLPAGENAME}} | 0 | -3 }} | }} }} <!-- | ||
-->{{#replace: {{#sub: {{FULLPAGENAME}} | {{#rpos: {{#sub: {{FULLPAGENAME}} | 0 | -3 }} | }} }} | -->{{#replace: {{#sub: {{FULLPAGENAME}} | {{#rpos: {{#sub: {{FULLPAGENAME}} | 0 | -3 }} | }} }} | ||
| {{#iferror: {{#expr: {{#sub: {{FULLPAGENAME}} | -2 }} + 0 }} | | | {{#iferror: {{#expr: {{#sub: {{FULLPAGENAME}} | -2 }} + 0 }} | {{#sub: {{FULLPAGENAME}} | -1 }} }} | ||
| {{#expr: {{#iferror: {{#expr: {{#sub: {{FULLPAGENAME}} | -2 }} + 0 }} | | | {{#expr: {{#iferror: {{#expr: {{#sub: {{FULLPAGENAME}} | -2 }} + 0 }} | {{#sub: {{FULLPAGENAME}} | -1 }} }} + 1 }} | ||
}} | }} | ||
| {{!}} Forward to [[ {{#sub: {{FULLPAGENAME}} | 0 | {{#rpos: {{#sub: {{FULLPAGENAME}} | 0 | -3 }} | }} }} <!-- | | {{!}} Forward to [[ {{#sub: {{FULLPAGENAME}} | 0 | {{#rpos: {{#sub: {{FULLPAGENAME}} | 0 | -3 }} | }} }} <!-- | ||
-->{{#replace: {{#sub: {{FULLPAGENAME}} | {{#rpos: {{#sub: {{FULLPAGENAME}} | 0 | -3 }} | }} }} | -->{{#replace: {{#sub: {{FULLPAGENAME}} | {{#rpos: {{#sub: {{FULLPAGENAME}} | 0 | -3 }} | }} }} | ||
| {{#iferror: {{#expr: {{#sub: {{FULLPAGENAME}} | -2 }} + 0 }} | | | {{#iferror: {{#expr: {{#sub: {{FULLPAGENAME}} | -2 }} + 0 }} | {{#sub: {{FULLPAGENAME}} | -1 }} }} | ||
| {{#expr: {{#iferror: {{#expr: {{#sub: {{FULLPAGENAME}} | -2 }} + 0 }} | | | {{#expr: {{#iferror: {{#expr: {{#sub: {{FULLPAGENAME}} | -2 }} + 0 }} | {{#sub: {{FULLPAGENAME}} | -1 }} }} + 1 }} | ||
}} <!-- | }} <!-- | ||
-->| {{{fn|{{{forwardname|Chapter {{#expr: {{#iferror: {{#expr: {{#sub: {{FULLPAGENAME}} | -2 }} + 0 }} | | -->| {{{fn|{{{forwardname|Chapter {{#expr: {{#iferror: {{#expr: {{#sub: {{FULLPAGENAME}} | -2 }} + 0 }} | {{#sub: {{FULLPAGENAME}} | -1 }} }} + 1 }} }}} }}} | ||
]] | ]] | ||
}} | }} | ||
Line 525: | Line 525: | ||
{{#iferror: {{#expr: {{#sub: {{FULLPAGENAME}} | -2 }} + 0 }} | {{#iferror: {{#expr: {{#sub: {{FULLPAGENAME}} | -2 }} + 0 }} | ||
| | | {{#sub: {{FULLPAGENAME}} | -1 }} | ||
}} | }} | ||
produces the integer CHAPTER_NUM | produces the integer CHAPTER_NUM | ||
*returns | *returns the final character in PAGENAME if chapter number isn't the last thing in FULLPAGENAME | ||
*works only if chapter number does not exceed three or more digits | *works only if chapter number does not exceed three or more digits | ||
</pre> | </pre> | ||
</noinclude> | </noinclude> |
Latest revision as of 23:46, 26 May 2014
Return to Main Page |
Sandbox page for this template. The real page is at Template:SimpleNav.
TODO:
Make it say "Volume" when on Volume page.Make it readableBetter than before, at least...Make it easy to tell what the arguments are asking forInsert "beforename" and "aftername"- Make it work even if there's something after the volume number aside from the usual (e.g. "Preview")
- Check whether this still works with * or ' in pagename
Make it tolerant to pages with space after colon- This thing is case-sensitive...
Edit notes (use a text editor to interchange code with capital letters to improve readability):
In case of multiple layers of argument defaulting (such as in the case of {{{b|{{{before|}}} }}} ), it's important to make sure there's no space immediately after the pipe, or else it may insert an unwanted one (usually right after the page title's colon) {{#rpos: {{#sub: {{FULLPAGENAME}} | 0 | -3 }} | }} produces the zero-based position of SPACE_BEFORE_LAST_WORD *substring-ing -5 allows it to count out the potential space in "Chapter 1" *also, it's important to use #rpos and not #pos here since the last space, or the first space from the /right/, is being looked for *returns -1 if there is no space in title (this is the product of using #rpos and not #pos) {{#sub: {{FULLPAGENAME}} | 0 | {{#pos: {{FULLPAGENAME}} | : }} }} produces the string SERIES_TITLE *title should not have a colon in it for this helper function to work *returns FULLPAGENAME if string ":" doesn't exist in title, but /should/ be ignorable since it will return false on #ifexist {{#sub: {{FULLPAGENAME}} | 0 | {{#pos: {{FULLPAGENAME}} | Volume }} }} produces the string ALL_BEFORE_VOLUMES_V *SERIES_TITLE should not have string "Volume" in it for this helper function to work *SERIES_TITLE is not used because this retains the space after a colon, if there is one *returns FULLPAGENAME if string "Volume" does not exist in title but /should/ be ignorable since this is only used in ifexist cases with colon taken out {{#sub: {{FULLPAGENAME}} | {{#pos: {{FULLPAGENAME}} | Volume }} }} produces the string ALL_AFTER_VOLUMES_V {{#if: {{#pos: {{FULLPAGENAME}} | Volume }} | {{#expr: {{#pos: {{FULLPAGENAME}} | Volume }} +6 }} }} produces the zero-based position AFTER_VOLUMES_E *SERIES_TITLE should not have string "Volume" in it for this helper function to work *returns nothing if "Volume" does not exist in pagename {{#iferror: {{#expr: {{#sub: {{#sub: {{FULLPAGENAME}} | AFTER_VOLUMES_E }} | 0 | 3 }} + 0 }} | {{#iferror: {{#expr: {{#sub: {{#sub: {{FULLPAGENAME}} | AFTER_VOLUMES_E }} | 0 | 2 }} + 0 }} }} }} produces the integer VOL_NUMBER *returns nothing if "volume" does not exist in FULLPAGENAME, or if volume number is not a pure integer *heavily reliant on the fact that NO VOLUME NUMBER GOES INTO THREE DIGITS *(kinda hard to search&replace in notepad, break it into two segments, and remember to turn the line breaks into spaces) {{#sub: {{#sub: {{FULLPAGENAME}} | AFTER_VOLUMES_E }} | {{#len: VOL_NUMBER }} }} produces the string ALL_AFTER_VOLUME_NUMBER *including the space immediately after, though this /should/ be ignorable *returns FULLPAGENAME if "Volume" is not in the FULLPAGENAME *returns all after Volume's e if volume number is not a pure integer {{#sub: {{FULLPAGENAME}} | 0 | {{#pos: {{FULLPAGENAME}} | ALL_AFTER_VOLUME_NUMBER }} }} produces the string ALL_UP_TO_VOLUME_NUMBER *here, while parsing the space included in ALL_AFTER_VOLUME_NUMBER is /ignored/, which means there's a space included right after ALL_UP_TO_VOLUME_NUMBER instead, though again this /should/ be ignorable *returns nothing if "volume" does not exist in FULLPAGENAME *returns all before Volume's e if volume number is not a pure integer {{#iferror: {{#expr: {{#sub: {{FULLPAGENAME}} | -2 }} + 0 }} | {{#sub: {{FULLPAGENAME}} | -1 }} }} produces the integer CHAPTER_NUM *returns the final character in PAGENAME if chapter number isn't the last thing in FULLPAGENAME *works only if chapter number does not exceed three or more digits