Template:MIA citation: Difference between revisions

From Leftypedia
Jump to navigation Jump to search
(Added named references (<ref name= etc) parameter.)
(UNDO buggy title wikilink options for now until fix.)
 
(75 intermediate revisions by the same user not shown)
Line 1: Line 1:
<noinclude>
{{#tag:ref|<!--
 
#0: Check for special cases using sub-template.
-->{{if then show|{{#switch:<!--
 
#0.1: The following returns codes that are then used by the switch function.
-->{{switch by pattern|_input={{string split|{{{link|{{{1|}}}}}}|/archive/|2}}
  | capital  = marx/works/18%d%d%-c%d
  | sus      = marx/works/1880/soc%-utop
  | manifesto = marx/works/1848/communist%-manifesto
  | witbd    = lenin/works/1901/witbd
  | _default  = NO SPECIAL CASE
  }}<!--
 
#0.2: Convert the code from the above into a sub-template or directly formatted output text for each given special case.
-->
| capital =
  {{MIA citation/special
  | work = capital
  | volume = {{switch by pattern|_input={{{link|{{{1|}}}}}}|_returncaptures=y|marx/works/18%d%d%-c([1-3])|_default=1}}
  | chapter = {{switch by pattern|_input={{{link|{{{1|}}}}}}|_returncaptures=y|marx/works/18%d%d%-c[1-3]/ch0?(%d%d?)}}
  | link = {{{link|{{{1|}}}}}}
  }}
| sus = [[Friedrich Engels|Engels, Friedrich]] (1880). ''[[Socialism: Utopian and Scientific]]''. {{#if:{{switch by pattern|_input={{{link|{{{1|}}}}}}|_returncaptures=y|marx/works/1880/soc%-utop/ch0(%d)}}|Chapter {{switch by pattern|_input={{{link|{{{1|}}}}}}|_returncaptures=y|marx/works/1880/soc%-utop/ch0(%d)}}: "{{tarray|get|The Development of Utopian Socialism//Dialectics//Historical Materialism|//|{{switch by pattern|_input={{{link|{{{1|}}}}}}|_returncaptures=y|marx/works/1880/soc%-utop/ch0(%d)}}}}."|}} [{{{link|{{{1|}}}}}} Available online]
| manifesto = [[Karl Marx|Marx, Karl]] (1848). ''[[The Communist Manifesto|Manifesto of the Communist Party]]''. {{#if:{{switch by pattern|_input={{{link|{{{1|}}}}}}|_returncaptures=y|marx/works/1848/communist%-manifesto/ch0(%d)}}|Chapter {{switch by pattern|_input={{{link|{{{1|}}}}}}|_returncaptures=y|marx/works/1848/communist%-manifesto/ch0(%d)}}: "{{tarray|get|Bourgeois and Proletarians//Proletarians and Communists//Socialist and Communist Literature//Position of the Communists in Relation to the Various Existing Opposition Parties|//|{{switch by pattern|_input={{{link|{{{1|}}}}}}|_returncaptures=y|marx/works/1848/communist%-manifesto/ch0(%d)}}}}."|}} [{{{link|{{{1|}}}}}} Available online]
| witbd =
  {{MIA citation/special
  | work = witbd
  | chapter = {{switch by pattern|_input={{{link|{{{1|}}}}}}|_returncaptures=y|lenin/works/1901/witbd/(%w+)}}
  | link = {{{link|{{{1|}}}}}}
  }}
}}|<!--
 
End of special case section.
 
#1: Author name. The "replace" functions are only here to normalize the input string by removing any periods or commas.
-->{{#switch: {{replace|{{replace|{{lc:{{if empty|{{{author|{{{2|}}}}}}|{{first word|{{string split|{{{link|{{{1|}}}}}}|/archive/|2}}|sep=/}}|default}}}}|,|}}|.|}}<!--
 
Marx Engels Lenin Stalin Mao-->
| marx | karl marx | marx karl = <!--
Checks the date for any year after Marx's death - all Engels works are under /marx/!! (hopefully this solution works somewhat)
-->{{#ifexpr: 1883 < {{{year|{{{3|{{switch by pattern|_input={{{link|{{{1|}}}}}}|_returncaptures=y|/(%d%d%d%d)/|_default=0}}}}}}}}|[[Friedrich Engels|Engels, Friedrich]]|[[Karl Marx|Marx, Karl]]}}
| engels | friedrich engels | engels friedrich | frederick engels | engels frederick = [[Friedrich Engels|Engels, Friedrich]]
| lenin | v i lenin | vladimir lenin | lenin vladimir = [[Vladimir Lenin|Lenin, V. I.]]
| stalin | j stalin | stalin j | joseph stalin | stalin joseph | j v stalin | stalin j v | josef stalin | stalin josef  | j v dzhugashvili<!--Think you're cute, huh?--> = [[Joseph Stalin|Stalin, J.V.]]
| mao | zedong<!--Someone doesn't understand Chinese names--> | mao zedong = [[Mao Zedong|Mao, Zedong]]
| trotsky | trotsky leon | leon trotsky | lev trotsky | trotsky lev | lev bronstein | bronstein lev = [[Leon Trotsky|Trotsky, Leon]]<!--
 
Other authors, alphabetically sorted; may have errors as some alphabetizing may be by hand. -->
| adam smith | smith-adam | smith adam = [[Adam Smith|Smith, Adam]]
| adorno = [[Theodor Adorno|Adorno, Theodor]]
| alia = [[Ramiz Alia|Alia, Ramiz]]
| althusser = [[Louis Althusser|Althusser, Louis]]
| andropov = [[Yuri Andropov|Andropov, Yuri]]
| bax = [[Ernest Belfort Bax|Bax, Ernest Belfort]]
| berger-victor = [[Victor Berger|Berger, Victor]]
| beria = [[Lavrenti Beria|Beria, Lavrenti]]
| bernstein = [[Eduard Bernstein|Bernstein, Eduard]]
| bland = [[Bill Bland|Bland, Bill]]
| bogdanov = [[Aleksandr Bogdanov|Bogdanov, Aleksandr]]
| boudin = [[Louis B. Boudin|Boudin, Louis B.]]
| brezhnev = [[Leonid Brezhnev|Brezhnev, Leonid]]
| browder = [[Earl Browder|Browder, Earl]]
| bukharin | bhukarin | nikolai bukharin | nikolai bhukarin = [[Nikolai Bukharin|Bukharin, Nikolai]]
| cafiero = [[Carlo Cafiero|Cafiero, Carlo]]
| chernenko = [[Konstantin Chernenko|Chernenko, Konstantin]]
| connolly = [[James Connolly|Connolly, James]]
| debs = [[Eugene V. Debs|Debs, Eugene V.]]
| deleon = [[Daniel De Leon|De Leon, Daniel]]
| dimitrov = [[Georgi Dimitrov|Dimitrov, Georgi]]
| dzerzhinsky = [[Felix Dzerzhinsky|Dzerzhinsky, Felix]]
| eastman = [[Max Eastman|Eastman, Max]]
| foster = [[William Z. Foster|Foster, William Z.]]
| goldman = [[Emma Goldman|Goldman, Emma]]
| gorbachev = [[Mikhail Gorbachev|Gorbachev, Mikhail]]
| gorky-maxim | gorky = [[Maxim Gorky|Gorky, Maxim]]
| gramsci = [[Antonio Gramsci|Gramsci, Antonio]]
| hall = [[Gus Hall|Hall, Gus]]
| hegel | g w f hegel | hegel g w f | hegel georg wilhelm friedrich | georg wilhelm friedrich hegel = [[Georg Wilhelm Friedrich Hegel|Hegel, G. W. F.]]
| hill-christopher | christopher hill = [[Christopher Hill|Hill, Christopher]]
| hillquit = [[Morris Hillquit|Hillquit, Morris]]
| horkheimer = [[Max Horkheimer|Horkheimer, Max]]
| hoxha = [[Enver Hoxha|Hoxha, Enver]]
| jaures | jaurès = [[Jean Jaurès|Jaurès, Jean]]
| kamenev = [[Lev Kamenev|Kamenev, Lev]]
| kapo = [[Hysni Kapo|Kapo, Hysni]]
| kautsky = [[Karl Kautsky|Kautsky, Karl]]
| khrushchev | nikita khrushchev | kruschev | khruschev | nikita kruschev | nikita khruschev = [[Nikita Khrushchev|Khrushchev, Nikita]]
| kim-il-sung | kim il sung = [[Kim Il Sung|Kim, Il Sung]]
| kim-jong-il | kim jong il = [[Kim Jong Il|Kim, Jong Il]]
| kollonta<!--URL version.-->
| kollontai = [[Alexandra Kollontai|Kollontai, Alexandra]]
| kropotkin-peter = [[Peter Kropotkin|Kropotkin, Peter]]
| kun-bela | bela kun = [[Bela Kun|Kun, Bela]]
| lafargue = [[Paul Lafargue|Lafargue, Paul]]
| lukacs = [[Georg Lukács|Lukács, Georg]]
| luxemburg | luxembourg | rosa luxemburg | rosa luxembourg = [[Rosa Luxemburg|Luxemburg, Rosa]]
| maclean = [[John MacLean|MacLean, John]]
| malatesta = [[Errico Malatesta|Malatesta, Errico]]
| malenkov = [[Georgy Malenkov|Malenkov, Georgy]]
| mandel = [[Ernest Mandel|Mandel, Ernest]]
| marcuse = [[Herbert Marcuse|Marcuse, Herbert]]
| mariateg<!--URL version.-->
| mariategui | mariátegui = [[José Carlos Mariátegui|Mariátegui, José Carlos]]
| markievicz = [[Constance Markievicz|Markievicz, Constance]]
| mill-john-stuart = [[John Stuart Mill|Mill, J. S.]]
| molotov = [[V. M. Molotov|Molotov, V. M.]]
| montefiore = [[Dora Montefiore|Montefiore, Dora]]
| morris = [[William Morris|Morris, William]]
| pannekoe = [[Anton Pannekoek|Pannekoek, Anton]]
| plekhanov = [[Georgi Plekhanov|Plekhanov, Georgi]]
| radek = [[Karl Radek|Radek, Karl]]
| reed | john reed = [[John Reed|Reed, John]]
| riazanov = [[David Riazanov|Riazanov, David]]
| rocker-rudolf = [[Rudolf Rocker|Rocker, Rudolf]]
| roy = [[Manabendra Nath Roy|Roy, Manabendra Nath]]
| scudder = [[Vida Dutton Scudder|Scudder, Vida Dutton]]
| serge = [[Victor Serge|Serge, Victor]]
| shachtma = [[Max Shachtman|Shachtman, Max]]
| shehu = [[Mehmet Shehu|Shehu, Mehmet]]
| stirner = [[Max Stirner|Stirner, Max]]
| tito | josip broz tito = [[Josip Broz Tito|Tito, Josip Broz]]
| zinoviev = [[Gregory Zinoviev|Zinoviev, Gregory]]
| ERROR
| {{{author|[Author missing]}}}
}}<!--
 
Second author if applicable.
-->{{#if:{{{author2|}}}|{{;}} {{{author2|}}}|}} (<!--
 
#2: Year
Check for year param:
-->{{if then show
  | {{{year|{{{3|}}}}}}
  |<!--
If the year is not provided, check the URL for a four-digit year:
-->{{switch by pattern|_input={{{link|{{{1|}}}}}}|_returncaptures=y|/(%d%d%d%d)/|_default=No year found}}}}). <!--
 
#3: Title with wikilink.
-->{{#if:{{{title|{{{4|}}}}}}|<includeonly>''[[{{#switch:{{{titlecase|{{{title case|}}}}}}|false|no|off={{{title|{{{4|}}}}}}|{{title case|{{{title|{{{4|}}}}}}}}}}]]''. </includeonly>|<includeonly>[[category:pages incorrectly using the MIA citation template]]</includeonly>}}<!--
 
#4: Hyperlink.
--> [{{{1|{{{link|<includeonly>[[category:pages incorrectly using the MIA citation template]]</includeonly>}}}}}} Available online]}} at {{ifeq|true|{{switch by pattern|_input={{{link|{{{1|}}}}}}|true=marxists%.architexturez%.net|_default=false}}|an archived version of |}}the [[Marxists Internet Archive]]<!--
 
#5: Quotation cited (optional)
-->{{#if:{{{quote|{{{quotation|{{{5|}}}}}}}}}
  | . "{{ucfirstletter|{{#iferror:{{switch by pattern
        | _input = {{trim quotes|{{{quote|{{{quotation|{{{5|}}}}}}}}}}}
        | {{trim quotes|{{{quote|{{{quotation|{{{5|}}}}}}}}}}} = ^.+[?!:.]$<!-- i.e., ending with valid punctuation.-->
        | {{str sub new|{{trim quotes|{{{quote|{{{quotation|{{{5|}}}}}}}}}}}|1|-2}}... = ^.+[,;]$<!-- i.e., replace invalid punctuation with ellipsis.-->
        | {{trim quotes|{{{quote|{{{quotation|{{{5|}}}}}}}}}}}. = %w$<!-- i.e., add final period if no end-punctuation found at all.-->
        | _default = {{{quote|{{{quotation|{{{5|}}}}}}}}}<!-- If some freaky shit is happening, just drop the quote and get out of there. Get out!-->
        }}|{{{quote|{{{quotation|{{{5|}}}}}}}}}}}}}"
  |
  }}<!--
 
#6. Reference name field (optional)
-->|name={{{name|}}}<!--
 
End of the Ref-Tag.
-->}}<!--
 
====================================================================================================================================================================================
END OF TEMPLATE
====================================================================================================================================================================================
 
--><noinclude>
{{lspp}}
{{lspp}}
[[category:MIA citation template]]
[[category:MIA citation template]]
Template implemented by [[User:Harrystein|Harrystein]] to make citing [[Marxists.org]] a lot easier!
WIP template implemented by [[User:Harrystein|Harrystein]] to make citing [[Marxists.org]] a lot easier!


==Usage==
==Usage==
Line 16: Line 182:
Any missing or incorrect details should be corrected:
Any missing or incorrect details should be corrected:


  <nowiki>{{MIA citation|<link>|author=<author>|year=<year>|title=<title>}}</nowiki>
  <nowiki>{{MIA citation|<link>|author=<author>|author2=<author2> (optional)|year=<year>|title=<title>}}</nowiki>


See below for some examples.
See below for some examples.
Line 40: Line 206:
{{MIA citation | https://www.marxists.org/reference/archive/smith-adam/works/wealth-of-nations/book01/ch01.htm | title = the wealth of nations | year = 1776}}</nowiki>
{{MIA citation | https://www.marxists.org/reference/archive/smith-adam/works/wealth-of-nations/book01/ch01.htm | title = the wealth of nations | year = 1776}}</nowiki>


Sample
[[category:original templates]]</noinclude>
[[category:original templates]]</noinclude>{{#tag:ref|<!--
#0: Check for special cases using sub-template. This section currently (6/1/24) only works with capital vol 1.
-->{{if then show|{{#switch:<!--
#0.1: The following returns codes that are then used by the switch function.
-->{{switch by pattern|_input={{string split|{{{link|{{{1|}}}}}}|/archive/|2}}
  | capital = marx/works/18%d%d%-c%d
  | _default = NO SPECIAL CASE
  }}<!--
This converts the code from the above into a sub-template or direct formatting to output for each given special case.
-->
| capital =
  {{MIA citation/special
  | work = capital
  | volume = {{switch by pattern|_input={{{link|{{{1|}}}}}}|_returncaptures=y|marx/works/18%d%d%-c([1-3])|_default=1}}
  | chapter = {{switch by pattern|_input={{{link|{{{1|}}}}}}|_returncaptures=y|marx/works/18%d%d%-c[1-3]/ch0?(%d%d?)}}
  | link = {{{link|{{{1|}}}}}}
  }}
|
}}|<!--
End of special case section.
#1: Author name
-->{{#switch: {{replace|{{replace|{{lc:{{{author|{{{2|{{first word|{{string split|{{{link|{{{1|}}}}}}|/archive/|2}}|sep=/}}<!--shitty hack because i'm not a conputer geinius-->}}} }}} }}|,|}}|.|}}
| stalin
| j v stalin
| stalin joseph
| stalin j v
| stalin josef = [[Joseph Stalin|Stalin, J.V.]]
| marx
| karl marx
| marx karl = [[Karl Marx|Marx, Karl]]
| lenin
| v i lenin
| vladimir lenin
| lenin vladimir = [[Vladimir Lenin|Lenin, V. I.]]
| adam smith
| smith-adam
| smith adam = [[Adam Smith|Smith, Adam]]
| mao
| zedong
| mao zedong = [[Mao Zedong|Mao, Zedong]]
| trotsky
| trotsky leon
| leon trotsky
| lev trotsky
| lev bronstein
| bronstein lev = [[Leon Trotsky|Trotsky, Leon]]
| {{{author|[Author missing]}}}
}} (<!--
#2: Year
Check for year param:
-->{{if then show
  | {{{year|{{{3|}}}}}}
  |<!--
If the year is not provided, check the URL for a four-digit year:
-->{{switch by pattern|_input={{{link|{{{1|}}}}}}|_returncaptures=y|/(%d%d%d%d)/|_default=No year found}}}}). <!--
#3: Title with wikilink.
-->{{#if:{{{title|{{{4|}}}}}}|<includeonly>''[[{{title case|{{{title|{{{4|}}}}}}}}]]''. </includeonly>|<includeonly>[[category:pages incorrectly using the MIA citation template]]</includeonly>}}<!--
#4: Hyperlink.
--> [{{{1|{{{link|<includeonly>[[category:pages incorrectly using the MIA citation template]]</includeonly>}}}}}} Available online]}} at the [[Marxists Internet Archive]]
|name={{{name|mia}}}
}}

Latest revision as of 20:13, 20 June 2024

[1]

In this templatespace:

Template talk:

WIP template implemented by Harrystein to make citing Marxists.org a lot easier!

Usage

This is designed to read whatever Marxists.org URL you give it and output a nicely-formatted title, author, and year, complete with links to Leftypedia articles on those topics (aka "Wikilinks"). It doesn't use any LUA or outside coding/bots, which at the moment would be harder by an order of magnitude. If such things are implemented later, they should be used in concert with this template or, if they are pretty foolproof, supersede it.

Visual editor

In visual editing, you should be able to copy-paste the code shown below (adapted or otherwise) into your page. I would have to test this to see issues with it. If not, then [explain here how to make the link the only argument, even if not named, i.e. {{{1}}} ] -6/5/24

Source editor

This template is designed to do most of the work for you. I suggest starting by putting the link in, like so:

{{MIA citation|<link>}}

Any missing or incorrect details should be corrected:

{{MIA citation|<link>|author=<author>|author2=<author2> (optional)|year=<year>|title=<title>}}

See below for some examples.

Capital works the best and hopefully should be fully implemented with no gaps:

{{MIA citation | https://www.marxists.org/archive/marx/works/1867-c1/ch03.htm#S1}}
{{MIA citation | https://www.marxists.org/archive/marx/works/1885-c2/ch20_02.htm}}
{{MIA citation | https://www.marxists.org/archive/marx/works/1894-c3/ch13.htm}}

More Marx works will be added upon request or popular usage.

The template also works reasonably well with other works:

{{MIA citation | https://www.marxists.org/archive/draper/1990/zionism/13-antisemitism.htm}}
{{MIA citation | https://www.marxists.org/reference/archive/stalin/works/1938/09.htm | title = dialectical and Historical Materialism}}
{{MIA citation | https://www.marxists.org/archive/lenin/works/1917/staterev/ch01.htm | title = state and revolution}}
{{MIA citation | https://www.marxists.org/reference/archive/smith-adam/works/wealth-of-nations/book01/ch01.htm | title = the wealth of nations | year = 1776}}
  1. [Author missing] (). [ Available online] at the Marxists Internet Archive