Difference between revisions of "Template:Last name"

From Yugipedia
Jump to: navigation, search
(Restoring revision 5092358 by User:Dinoguy1000 on 2022-10-31 18:50:49. "dumb fix for cases where the family name is repeated exactly elsewhere in the name")
(fix bugs where a name has a title/prefix or a suffix which is repeated elsewhere in the name (though IDK if any of our pages would actually be affected by this))
 
Line 6: Line 6:
 
     | Mrs. | Ms. | Miss | Dr. | Chief | Coach | Cyber | Fake | Grandpa | Officer | Pharaoh | Professor | Yami = {{ #explode: {{ #var: $fn-name }} }}<!-- add as needed for pages -->
 
     | Mrs. | Ms. | Miss | Dr. | Chief | Coach | Cyber | Fake | Grandpa | Officer | Pharaoh | Professor | Yami = {{ #explode: {{ #var: $fn-name }} }}<!-- add as needed for pages -->
 
   }}
 
   }}
}}{{ #if: {{ #var: $fn-prefix }} | {{ #vardefine: $fn-name | {{ #explode: {{ #var: $fn-name }} | {{ #var: $fn-prefix }} | 1 }} }}
+
}}{{ #if: {{ #var: $fn-prefix }} | {{ #vardefine: $fn-name | {{ #sub: {{ #var: $fn-name }} | {{ #len: {{ #var: $fn-prefix }} }} }} }}
 
}}{{ #vardefine: $fn-suffix | {{ #switch: {{ #explode: {{ #var: $fn-name }} || -1 }}
 
}}{{ #vardefine: $fn-suffix | {{ #switch: {{ #explode: {{ #var: $fn-name }} || -1 }}
 
     | Sr. | Jr. = {{ #explode: {{ #var: $fn-name }} || -1 }}
 
     | Sr. | Jr. = {{ #explode: {{ #var: $fn-name }} || -1 }}
 
   }}
 
   }}
}}{{ #if: {{ #var: $fn-suffix }} | {{ #vardefine: $fn-name | {{ #explode: {{ #var: $fn-name }} | {{ #var: $fn-suffix }} }} }}
+
}}{{ #if: {{ #var: $fn-suffix }} | {{ #vardefine: $fn-name | {{ #sub: {{ #var: $fn-name }} || {{ #rpos: {{ #var: $fn-name }} | {{ #var: $fn-suffix }} }} }} }}
 
}}{{ #vardefineecho: $fn-last | {{ #explode: {{ #var: $fn-name }} || {{ #ifeq: {{ lc: {{{2}}} }} | eastern
 
}}{{ #vardefineecho: $fn-last | {{ #explode: {{ #var: $fn-name }} || {{ #ifeq: {{ lc: {{{2}}} }} | eastern
 
       | 0  <!-- "family → given" -->
 
       | 0  <!-- "family → given" -->
Line 19: Line 19:
 
   | {{ #if: {{ #explode: {{ #var: $fn-name }} || 1 }}<!-- do nothing for mononyms -->
 
   | {{ #if: {{ #explode: {{ #var: $fn-name }} || 1 }}<!-- do nothing for mononyms -->
 
     | , {{ #ifeq: {{ lc: {{{2}}} }} | eastern
 
     | , {{ #ifeq: {{ lc: {{{2}}} }} | eastern
       | {{ #sub: {{ #var: $fn-name }} | {{ #len: {{ #var: $fn-last }} }} | 0 }}
+
       | {{ #sub: {{ #var: $fn-name }} | {{ #len: {{ #var: $fn-last }} }} }}
       | {{ #sub: {{ #var: $fn-name }} | 0 | {{ #expr: {{ #len: {{ #var: $fn-name }} }} - {{ #len: {{ #var: $fn-last }} }} }} }}
+
       | {{ #sub: {{ #var: $fn-name }} || {{ #rpos: {{ #var: $fn-name }} | {{ #var: $fn-last }} }} }}
 
     }}
 
     }}
 
   }}{{ #if: {{ #var: $fn-prefix }} | , {{ #var: $fn-prefix }} }}{{ #if: {{ #var: $fn-suffix }} | , {{ #var: $fn-suffix }} }}
 
   }}{{ #if: {{ #var: $fn-prefix }} | , {{ #var: $fn-prefix }} }}{{ #if: {{ #var: $fn-suffix }} | , {{ #var: $fn-suffix }} }}

Latest revision as of 12:43, 4 August 2023

name