User:Tango Mike Bravo/Migrate notes

This page is for notes on the possibility of automated scripts for migrating from {{Family tree}} to {{Tree chart}}.

As noted in the discussion at Template talk:Family tree#Skilled Wikipedians needed there are two cases where automation could be used:

  1. Use of tiles that have changed plus lines that end |}} as per Template:Tree chart#Migration from familytree.
  2. Use of box names (that get substituted for the actual content of the boxes) that clash with Tree chart's tile names.

Both could be dealt with by a script that finds uses of {{Family tree}}, {{family tree}} & {{familytree}} and for each use:

  1. Makes the substitutions as per the instructions at Template:Tree chart#Migration from familytree taking care to create an order of substitution that prevents double substitution, and replaces |}} with | }}.
  2. Rather than look for name clashes it would be easier to look for single character box names (?=) in each use and append the character x to them.

In constructing the script it will be important to be able to deal with cases where there is additional white space, such as | E |.

In addition the output should as far as possible preserve the same layout. Particularly box names that immediately follow the initial pipe (|) must not have space inserted before them, as this will break any styling that is applied to the box. However It will not be possible to preserve layout in cases where the {{tree chart}} tile name is two characters, such as ye.

Order in which to make substitutions to prevent double substitution edit

The following table is based on Template:Tree chart#Migration from familytree.

Make substitutions in this order
Tile {{family tree}} {{tree chart}} Notes on parameters
c fh Change
d ic Change
j he Change
{ c Change
3 c Change
} d Change
E d Change
t i Change
# t Change
[ e Change
] f Change
u j Change
b di Change
n ye Change
p dj Change
q jc Change
r fy Change
G G2 Change
T T2 Change
k l4 Change

Creating list of what links here for Template:Family tree edit

  1. Obtain list from https://en.wikipedia.org/w/index.php?title=Special:WhatLinksHere/Template:Family_tree&limit=2000&hidelinks=1&hideredirs=1 (which has links and redirects turned off) and put in a text file (t.txt).
  2. Do a global edit to remove " (transclusion) ‎ (links | edit)".
  3. Sort the list and delete duplicates. ($ sort t.txt | uniq >u.txt).
  4. Divide the list into pages in article space ($ grep -v : u.txt >v.txt) and those not in article space ($ grep : u.txt >w.txt).
  5. Create a table to record observations from list of pages in article space using a short awk script ($ awk -f table.awk <v.txt >x.txt)

The awk script (table.awk) to create the table is:

BEGIN { print "{| class='wikitable sortable'"; print "|-"; print "! Page"; print "!class=unsortable| edit"; print "! Notes"; print "|-"; }
      { print "| [[" $0 "]]"; line=$0; gsub(" ","_",line); printf("| [https://en.wikipedia.org/w/index.php?title=%s&action=edit edit]\n",line); print "|"; print "|-"; }
END   { print "|}"; }

Transclusions edit

Here is the list of transclusions of {{Family tree}} (method of creation described above) as of 29 April 2020:

In the Notes column:

  • Compatible means that the use of {{Family tree}} will not break if there is a redirect to {{Tree chart}}.
  • Change required means that the use of {{Family tree}} will have to be migrated to {{Tree chart}} because it is not compatible.
  • Further investigation means that further investigation is required to determine if it is Compatible or if Change required.
Page edit Notes
Abdallah al-Mahdi Billah edit Change required
Abdullah al-Aftah edit Compatible
Abdullah ibn Shaykh al-Aydarus edit Compatible
Abraham Hayyim Adadi edit Further investigation - single character box names
Abu Bakr al-Aydarus edit Compatible
Achaemenid dynasty edit Compatible
Achaemenid family tree edit Compatible
Adachi clan edit Compatible
Adams political family edit Further investigation - two character box names
Administrative divisions of India edit Compatible
Administrative divisions of Nepal edit Compatible
Administrative units of Pakistan edit Compatible
Adrien Charles Deshommets de Martainville edit Compatible
Aeacidae edit Compatible
Afsharid dynasty edit Compatible
Akechi clan edit Compatible
Akish edit Was broken, now fixed and migrated
Alamut Castle edit Compatible
Alaouite dynasty edit Compatible
Alaungpaya edit Further investigation - two character box names
Alavi Bohras edit Change required
Albertine branch edit Compatible
Aleksander Janusz Zasławski edit Was broken, now fixed and migrated
Aleviler edit Change required - mixed use of {{chart}} & {{familytree}}
Alevism edit Change required
Alexander Radó edit Compatible
Alexander Rolls edit Compatible
Algimantas military district edit Compatible
Alians edit Change required
Alids edit Change required
Al Khawalid edit Compatible
Almanzo Wilder edit Was broken, now fixed and migrated
Alma the Elder edit Compatible
Alma the Younger edit Compatible
Álmos edit Compatible
Alvarado wrestling family edit Compatible
Amaleki edit Compatible
Ambedkar family edit Compatible
Amshinov edit Was broken, now fixed and migrated
Anaxandridas II edit Compatible
Andrew I of Hungary edit Compatible
Angelos edit Compatible
Ankhesenamun edit Migrated as simplest way of checking
Anoa'i family edit Migrated as simplest way of checking
Anscarids edit Compatible
Anthony Montague Browne edit Compatible
Antipatrid dynasty edit Compatible
Archelaus (general) edit Compatible
Aristobulus IV edit Migrated as simplest way of checking
Arnauld family edit Migrated as simplest way of checking
Árpád edit Compatible
Árpád dynasty edit Compatible
Arsaces I of Parthia edit Compatible
Artaxiad dynasty edit Compatible
Art mac Cuinn edit Compatible
Astikai edit Compatible
Attalid dynasty edit Compatible
Augvald edit Compatible
Aurelia (gens) edit Migrated as simplest way of checking
Báetán mac Muirchertaig edit
Bahram Chobin edit
Bahram (Shahnameh) edit
Balbinus edit
Bálint Balassi edit
Barberini family edit
Barmakids edit
Baron Dorchester edit
Baron Dufferin and Claneboye edit
Baron Wentworth edit
Barony of Kendal edit
Bavandid family tree edit
Bayinnaung edit
Bayramiye edit
Behter edit
Bektashism and folk religion edit
Béla II of Hungary edit
Béla I of Hungary edit
Béla IV of Hungary edit
Bemidbar (parsha) edit
Berenice (daughter of Salome) edit
Bhimsen Thapa edit
Bijan and Manijeh edit
Bill Pearl edit
Bizhan (Shahnameh) edit
Blanche of Artois edit
Blanche of Burgundy edit
Bobov (Hasidic dynasty) edit
Book of Moses edit
Bourbon-Busset edit
Boyan (Hasidic dynasty) edit
Brazo de Oro (wrestler) edit
Brazo de Plata edit
Brazo de Platino edit
Briget Paget edit
Butler dynasty edit
Buyid dynasty edit
Byzantine Empire under the Heraclian dynasty edit
Byzantine Empire under the Isaurian dynasty edit
Byzantine Empire under the Justinian dynasty edit
Caecilia Paulina edit
Cairbre Lifechair edit
Cao Wei family trees edit
Carter Family edit
Cassadine family edit
Catherine of Lancaster edit
Cato the Elder edit
Chagatai Khan edit
Chamorro (family) edit
Chancellor Family edit
Chandler family edit
Charles II of Navarre edit
Charles Marie Raymond d'Arenberg edit
Chayei Sarah edit
Chehalem blackberry edit
Chief Mqalo edit
Chimalpopoca edit
China Pharmaceutical University edit
China University of Mining and Technology edit
Chobanids edit
Chortkov (Hasidic dynasty) edit
Chotek edit
Christian I of Denmark edit
Colchester Castle edit
Colmán Rímid edit
Coloman, King of Hungary edit
Cometopuli dynasty edit
Compromise of Caspe edit
Conant baronets edit
Connachta edit
Conn of the Hundred Battles edit
Constantinian dynasty edit
Corbet family edit
Cormac mac Airt edit
Count Maximilian von Götzen-Iturbide edit
Crowninshield family edit
Cuauhtototzin edit
Daeng Parani edit
Dainava military district edit
David Kamehameha edit
Dejanović noble family edit
Despotate of Dobruja edit
Didžioji Kova military district edit
Domnall mac Murchada edit
Dôn edit
Donn Cothaid mac Cathail edit
Doukas edit
Duke of Argyll edit
Duke of Cambridge edit
Duke of Cleveland edit
Duke of Connaught and Strathearn edit
Duke of Cumberland edit
Duke of Dino edit
Duke of Fernandina edit
Duke of Gloucester and Edinburgh edit
Duke of Gordon edit
Duke of Grafton edit
Duke of Leeds edit
Duke of Northumberland edit
Duke of Plasencia edit
Duke of Rutland edit
Duke of Somerset edit
Duke of York edit
Duke of York and Albany edit
Dushinsky (Hasidic dynasty) edit
Earl of Breadalbane and Holland edit
Earl of Dumfries edit
Earl of Lancaster edit
Earl of Lennox edit
Earl of Orford edit
Earl of Rochford edit
Earl Waldegrave edit
Early life of Plato edit
Eastern Wu family trees edit
Edward Bromley edit
Eithne Tháebfhota edit
El Brazo edit
Elizabeth Cheney (gentry) edit
Elizabeth Proctor edit
Elizaveta Ostrogska edit
Emily Thorn Vanderbilt edit
Enos (Book of Mormon prophet) edit
Eraño Manalo edit
Eric of Pomerania edit
Esophageal dysphagia edit
Ether (Book of Mormon prophet) edit
Evrofinance Mosnarbank edit
Family of Bayinnaung edit
Family tree of Ali edit
Family tree of Chinese monarchs (middle) edit
Family tree of Dutch monarchs edit
Family tree of Mexican monarchs edit
Family tree of Neapolitan monarchs edit
Family tree of Polish monarchs edit
Family tree of Shah dynasty of Gorkha monarch edit
Family tree of Sicilian monarchs edit
Family tree of Sinhalese monarchs edit
Family tree of Sun Yat-sen edit
Family tree of Swedish monarchs edit
Family tree of the Babylonian gods edit
Family tree of the Cornelii Scipiones edit
Family tree of the House of Orange (1450–1815) edit
Farrukhzad edit
Fedlimid Rechtmar edit
Felim Ua Conchobair edit
Ferdinand I of Aragon edit
Fevzi Çakmak edit
Fíacha Sroiptine edit
Flora Tristan edit
Fornjót edit
Francis Bromley edit
Francis Ottley edit
Frankopan family tree edit
Frederick Nassau de Zuylestein edit
Frederick Samson edit
Free throw edit
Galadriel edit
Garai family edit
Gediminids edit
Genealogy of the Arsacids edit
Genealogy of the Irish Republican Army edit
General Staff of the Republic of Turkey edit
George Bromley (politician) edit
Georgiana Rolls, Baroness Llangattock edit
Georg Jensen edit
Gershon edit
Ghurid dynasty edit
Göktürk family tree edit
Goldich dissolution series edit
Gordon Stewart Northcott edit
Gostaham edit
Goubau family edit
Goya Kong edit
Greek royal family edit
Günther Johannes Paetsch edit
Habsburg family tree edit
Hachiun edit
Hacı Bayram-ı Veli edit
Hafizi-Isma'ili family tree edit
Halesowen Abbey edit
Harvey Rexford Hitchcock edit
Hasan ibn Muhammad ibn al-Hanafiyyah edit
Hatfield–McCoy feud edit
Haukr Erlendsson edit
Hearne family edit
Helvig of Schauenburg edit
Henry Bromley (died 1615) edit
Henry Ford family tree edit
Hermann II, Count of Celje edit
Herod Agrippa edit
Herod Antipas edit
Herod of Chalcis edit
Hiro Matsushita edit
Hoffman family edit
Hojir edit
Hope & Co. edit
Houman edit
House of Al Sabah edit
House of Al Thani edit
House of Armagnac edit
House of Aviz edit
House of Barcelona edit
House of Basarab edit
House of Bogdan-Mușat edit
House of Braganza edit
House of Chalon-Arlay edit
House of Farnese edit
House of Gonzaga edit
House of Gorizia edit
House of Grimaldi edit
House of Jamalullail (Perak) edit
House of Nassau edit
House of Nassau-Weilburg edit
House of Orange-Nassau edit
House of Rochechouart edit
House of Vijaya edit
Husiatyn (Hasidic dynasty) edit
Iclingas edit
Idiopathic interstitial pneumonia edit
Imamate in Shia doctrine edit
Iraj edit
Isa-Beg Ishaković edit
Isfandyadh edit
Islamic dynasties of Iran edit
Isma'ilism edit
Iso Mutsu edit
Itagaki Nobukata edit
Jacob (Book of Mormon prophet) edit
Jacob Rakkah edit
Ja'far al-Sadiq edit
Ja'far ibn Yahya edit
Jalairid Sultanate edit
James Moore (governor) edit
Jan Hieronimowicz Chodkiewicz edit
Japanese succession debate edit
Jarom edit
Jerome family edit
Jiangsu Normal University edit
Jiménez dynasty edit
João Pereira dos Santos edit
Jochi edit
John Bellenden, 2nd Lord Bellenden edit
John Cokayne (died 1438) edit
John de Vere, 7th Earl of Oxford edit
John Etherington Welch Rolls edit
John Paget (Puritan minister) edit
John Rolls, 1st Baron Llangattock edit
John Rolls, 2nd Baron Llangattock edit
John Rolls of The Hendre edit
John Wolryche edit
Jonah Piʻikoi edit
José Aarón Alvarado Nieves edit
Joseph (Book of Mormon) edit
Juan Pujol García edit
Jura–Simplon Railways edit
Justinus van Nassau edit
Kakuyids edit
Kantakouzenos edit
Kashvad edit
Kavad I edit
Kehath edit
Keldermans family edit
Kęstutis military district edit
Khosrow I edit
Khosrow II edit
Kingdom of Croatia-Slavonia edit
King Gong of Chu edit
King Kang of Chu edit
King Noah edit
Kirana gharana edit
Kitboga (streamer) edit
Klausenburg (Hasidic dynasty) edit
Knight Rider edit
Komnenos edit
Konbaung dynasty edit
Kōnosuke Matsushita edit
Korach (parsha) edit
Krste Misirkov edit
Kunwar family edit
Kuru Kingdom edit
Ladislas the Bald edit
Ladislaus I of Hungary edit
Lady Arbella Stuart edit
Lady Catherine de Bourgh edit
La Máscara (wrestler) edit
Laskaris edit
Leake family edit
Lehi, son of Helaman edit
Limhi edit
Lineage of Alma the Younger edit
Lineage of Ether edit
Line of succession to the former Saxon thrones edit
List of emperors of the Lý dynasty edit
List of emperors of the Trần dynasty edit
List of Generals of the Yang Family characters edit
List of Imperial Japanese Navy fleets edit
List of Little House on the Prairie characters edit
List of monarchs of Tahiti edit
List of The Smiling, Proud Wanderer characters edit
List of Thor (Marvel Comics) supporting characters edit
Lithuanian partisans edit
Livingston family edit
Llŷr edit
Louis I of Naples edit
Louis of Nassau, Lord of De Lek and Beverweerd edit
Lucius Aebutius Helva edit
Lucius Clodius Tineius Pupienus Bassus edit
Lý dynasty edit
Mac Amhlaoibh and Mac Amhalghaidh (Irish septs) edit
Macedonian dynasty edit
Maeda Toshisada edit
Magas of Macedon edit
Manlia gens edit
Manuchehr edit
Manuel Belgrano edit
Maratha Peshwa and Generals from Bhat Family edit
Marcia (gens) edit
Marcus Pupienus Africanus Maximus edit
Marcus Pupienus Maximus edit
Marcus Ulpius Eubiotus Leurus edit
Marcus Ulpius Leurus edit
Margaret I of Denmark edit
Marone family edit
Marquessate of the Valley of Oaxaca edit
Marquess of Queensberry edit
Martín de Ursúa edit
Martin family (All My Children) edit
Mary Boleyn edit
Masaharu Matsushita edit
Mas'ud Hai Rakkah edit
Matilda of Frisia edit
Maupeou family edit
Maximinus Thrax edit
McMahon family edit
Mehmed Ali Pasha (marshal) edit
Mentewab edit
Merian family edit
Mewati gharana edit
Michael of Hungary edit
Miguelist edit
Mihran Bahram-i Chobin edit
MIM-23 Hawk edit
Ministry of Commerce (China) edit
Mithridatic dynasty edit
Mohamed Amin Didi edit
Molossians edit
Morgoth edit
Moron (Book of Mormon) edit
Muhammad Ali dynasty family tree edit
Muhammad ibn Abdullah al-Aftah edit
Muhammad ibn Ali al-Sanusi edit
Muhlenberg family edit
Munkacs (Hasidic dynasty) edit
Mustafa Kemal Atatürk's personal life edit
Musta'li Isma'ilism edit
Mutsu Hirokichi edit
Nahor, son of Serug edit
Nahor, son of Terah edit
Nanda Baba edit
Nanjing University of Finance and Economics edit
Naso (parsha) edit
Nathan Adadi edit
Nathan Mileikowsky edit
Nathan Paget edit
National Treasure (film series) edit
Neferweben edit
Nemanjić family tree edit
Neonatal jaundice edit
Nephi, son of Helaman edit
Nephi the Disciple edit
Nguyễn lords edit
Niall of the Nine Hostages edit
Nicholas (komes) edit
Nineteenth Dynasty of Egypt family tree edit
Norwegian royal family edit
Nowzar edit
Nubkhaes edit
Ögedei Khan edit
Olelkovich edit
Omni (Book of Mormon record keeper) edit
Onneca Fortúnez edit
Orkoiyot edit
Orodes II edit
Oro Jr. edit
Oro (wrestler) edit
Otto IV, Margrave of Brandenburg-Stendal edit
Pahlavi family tree edit
Palaiologos edit
Pamphili family edit
Park (Korean surname) edit
Paul Capell, 11th Earl of Essex edit
Pavlo Kurtik edit
Pé de Chumbo edit
People's Commissariat for State Security edit
Peter Delyan edit
Peter, King of Hungary edit
Petrović-Njegoš family tree edit
Philip III of Navarre edit
Phoebe Judson edit
Polemon I of Pontus edit
Porsche-Piëch family edit
Portuguese House of Burgundy edit
Pratapgarh Kingdom edit
Prince Csaba edit
Prince Fu edit
Prince Guo edit
Prince He edit
Prince Qing edit
Prince Rong edit
Prisikėlimas military district edit
Publius Cornelius Scipio Nasica Corculum edit
Punjab gharana edit
Pupienus edit
Qajar dynasty family tree edit
Qalandariyya edit
Qizilbash edit
Quintus Tineius Clemens edit
Quintus Tineius Rufus (consul 182) edit
Quintus Tineius Sacerdos edit
Quintus Tineius Sacerdos Clemens edit
Qutb Shahi dynasty edit
Rausing family edit
Raymond III, Count of Toulouse edit
Raymond-Roupen edit
Redgrave family edit
Ricciotti Garibaldi edit
Richard Newport (died 1570) edit
Richard Ottley edit
Richard Potter (businessman) edit
Riley family edit
Robert Capell, 10th Earl of Essex edit
Robert Corbet (died 1420) edit
Robert Corbet (died 1676) edit
Robert Ker, 3rd Earl of Roxburghe edit
Robin (wrestler) edit
Roger Corbet (died 1395) edit
Roger Corbet (died 1430) edit
Roger Livesey edit
Rohham edit
Ron Weasley edit
Rostam edit
Rostam Farrokhzad edit
Roux family (marine painters) edit
Rudaba edit
Rulers of Bamburgh edit
Ruth (biblical figure) edit
S-300VM missile system edit
Sadako Ogata edit
Sadigura (Hasidic dynasty) edit
Sadr (name) edit
Saeculum obscurum edit
Salm (Shahnameh) edit
Saman Khuda edit
Sam (Book of Mormon) edit
Sariah edit
Sasanian family tree edit
Satyajit Ray edit
Saul Adadi edit
Scorpio/Jones family edit
Seaxburh of Ely edit
Senhime edit
Senussi edit
Seymour family edit
Shadito Cruz edit
Shaghad edit
Shah dynasty edit
Shemini (parsha) edit
Shimazu Hisamitsu edit
Shimei edit
Ship resistance and propulsion edit
Shlach edit
Shu Han family trees edit
Silesian Piasts edit
Sindukht edit
Sir John Corbet, 1st Baronet, of Stoke upon Tern edit
Sir Thomas Wolryche, 1st Baronet edit
Skoropadsky family edit
Skver (Hasidic dynasty) edit
Snorri Thorfinnsson edit
Sohrab edit
Solomon, King of Hungary edit
Sommerfeldt (Norwegian family) edit
Sons and Daughters (Australian TV series) edit
South London Storm Academy edit
South London Thunderbirds edit
Spanish and Portuguese Jews edit
Spanish royal family edit
Steen Andersen Bille edit
Stephen II of Hungary edit
Stephen Tomašević of Bosnia edit
Stevenson family edit
Subdivisions of the Soviet Union edit
Šubić family tree edit
Sulayman bin Hassan edit
Sulaymani edit
Súper Brazo edit
Sutermeister edit
Syedi Hasan Feer edit
Tabinshwehti edit
Taft family edit
Tairrdelbach Ua Conchobair edit
Tamar of Georgia edit
Tarō Asō edit
Tauras military district edit
Tecollotzin edit
Telmarines edit
Temüge edit
Tezcacohuatzin edit
The Flying Wallendas edit
The Fourteen Infallibles edit
The Last Steep Ascent edit
Theodosian dynasty edit
Theophylact I, Count of Tusculum edit
Thingol edit
Thomas Bromley edit
Thomas Bromley (chief justice) edit
Thomas of Bosnia edit
Thorfinn Karlsefni edit
Thornton Heath Tornadoes edit
Thorolf Kveldulfsson edit
Thyssen family edit
Tiberius Clodius Pupienus Pulcher Maximus edit
Timeline of town creation in Central New York edit
Timeline of town creation in Downstate New York edit
Timeline of town creation in New York's Capital District edit
Timeline of town creation in New York's North Country edit
Timeline of town creation in the Hudson Valley edit
Titus Manlius Imperiosus Torquatus edit
Tolui edit
Toma T. Socolescu edit
Toshio Iue edit
Trần dynasty edit
Trần Thị Dung edit
Tribe of Levi edit
Túathal Techtmar edit
Turan edit
Tur (Shahnameh) edit
Tvrtko II of Bosnia edit
Tvrtko I of Bosnia edit
Twentieth Dynasty of Egypt edit
Twenty-sixth Dynasty of Egypt family tree edit
Tytila of East Anglia edit
Ügyek edit
Uí Néill edit
Ulrich I, Count of Celje edit
Uplands nation edit
Uttu edit
Va'eira edit
Vahan Mamikonian edit
Valentinian dynasty edit
Vayetze edit
Vazul edit
Vicente Ferreira Pastinha edit
Visconti of Milan edit
Vizhnitz (Hasidic dynasty) edit
Vologases I of Parthia edit
Von Erich family edit
Vrishni edit
Vytautas military district edit
Vytis military district edit
Wallenberg family edit
Wehha of East Anglia edit
Western Switzerland Railways edit
William, Count of Celje edit
William Emerson (minister) edit
William Jennings Capell edit
Wives of King Henry VIII edit
Władysław Dominik Zasławski edit
Wuffa of East Anglia edit
Yamhad dynasty edit
Yang Shao-hou edit
Yang-style t'ai chi ch'uan edit
Yesugei edit
Yisrael Friedman of Ruzhin edit
Yngling edit
Yoruboid languages edit
Yosuga no Sora edit
Yūzō Kayama edit
Zāl edit
Zand dynasty edit
Žemaičiai military district edit
Zeniff edit
Zewditu edit
Ziyarid dynasty edit
Zoltán of Hungary edit
Zrinski family tree edit