Extension:EasyTimeline

From MediaWiki.org
Jump to: navigation, search
MediaWiki extensions manual
Crystal Clear action run.png
EasyTimeline

Release status: stable

Implementation Tag
Description Adds <timeline> tag for creating timelines
Author(s) Erik Zachte
Database changes No
License GNU General Public License 2.0
Download
CHANGELOG
Example See below
Hooks used
ParserFirstCallInit

Translate the EasyTimeline extension if it is available at translatewiki.net

Check usage and version matrix; code metrics
Bugs: list open list all report
Other languages: de es eu fr id it ja nl pt zh

The EasyTimeline feature produces an embedded image from wikitext. The image can be a one-dimensional diagram (horizontally or vertically), or a two-dimensional one. As the saying goes: a picture is worth a thousand words. This is certainly true for graphical timelines. A detailed listing of events and dates in tabular form may offer the reader a lot of specifics, but may fail to provide an overview, a grand perspective.

EasyTimeline is a feature of Wikipedia (for an overview of all charts prepared with it on all wikipedias see EasyTimeline Index) and you can activate it on other MediaWiki installations (see EasyTimeline activation). You can also install it on your machine or play with it at test.wikipedia.org.

Syntax description at Extension:EasyTimeline/syntax.

This extension is in the middle of an attempt for a major update, the intention of which is to improve its support for non-Latin writing systems. The latest trunk versions are not supposed to break existing timelines, but may nevertheless be unstable. The last stable version before this update started is 62018.

Requirements[edit | edit source]

This extension requires the following programs installed on the server:

Charts examples[edit | edit source]

Several examples of what is possible. For more extensive examples see

  

Siderian Rhyacian Orosirian Statherian Calymmian Ectasian Stenian Tonian Cryogenian Ediacaran Eoarchean Paleoarchean Mesoarchean Neoarchean Paleoproterozoic Mesoproterozoic Neoproterozoic Paleozoic Mesozoic Cenozoic Hadean Archean Proterozoic Phanerozoic

Cambrian Ordovician Silurian Devonian Carboniferous Permian Triassic Jurassic Cretaceous Paleogene Neogene Quaternary Paleozoic Mesozoic Cenozoic Phanerozoic

Paleocene Eocene Oligocene Miocene Pliocene Pleistocene Holocene Paleogene Neogene Quaternary Cenozoic

Code example[edit | edit source]

See also: Extension:EasyTimeline/syntax

Just to show you that the script syntax is reasonably intuitive, here is the script for the image above: Soviet Leaders.

<timeline>
# All measures are in pixels

ImageSize  = width:160 height:550
PlotArea   = left:50 right:0 bottom:10 top:10
AlignBars  = justify

DateFormat = yyyy
Period     = from:1919 till:1991
TimeAxis   = orientation:vertical
ScaleMajor = unit:year increment:5 start:1920

# there is no automatic collision detection,
# so shift texts up or down manually to avoid overlap

Define $dx = 25 # shift text to right side of bar

PlotData=
  bar:Leaders color:red width:25 mark:(line,white) align:left fontsize:S

  from:start till:1922 shift:($dx,15)   text:Vladimir~Ilyich~[[Lenin]]
  from:1922  till:1953 shift:($dx,5)    text:[[Stalin|Josef~Stalin]]
  from:1953  till:1964 shift:($dx,5)    text:Nikita~[[Khrushchev]]
  from:1964  till:1982 shift:($dx,5)    text:Leonid~[[Brezhnev]]
  from:1982  till:1984 shift:($dx,-12)  text:Yuri~[[Andropov]]
  from:1984  till:1985 shift:($dx,4)    text:Konstantin~[[Chernenko]] fontsize:XS
  from:1985  till:end  shift:($dx,10)   text:Mikhail~[[Gorbachev]]
</timeline>

Double and single brackets can be used like on wikipedia, language prefix is possible, e.g. [[de:foo|more about foo]]. Single brackets for external links are also supported.

Great Timelines Elsewhere[edit | edit source]

Here are two great sites that may serve as inspiration, it would be very easy to recreate most of those timelines verbatim and with roughly similar layout with EasyTimeline (not yet with images but that may change), but I'm afraid that would be 'not done'.

  • Hyperhistory e.g. click on button 'people' left, then on 'special lifelines', right.
  • I hope we will have a set like [1] in a years time (click on full size image for any map), possibly even with images. The main effort will be to gather all info without snatching everything from here (most of these maps are based exclusively on data from Britannica).

Unicode[edit | edit source]

EasyTimeline does not yet support unicode.

Aug 2004: Minimal UTF-8 support has been added, meaning that EasyTimeline now recognizes UTF-8 encoded characters. However support for directionality and complex scripts is very lacking. The default font may not have glyphs for all characters. An alternate font can be specified via $wgTimelineSettings->fontFile

SVG to PNG[edit | edit source]

To show texts correctly for RTL languages (like Arabic, Persian, Hebrew,...) you can use <timeline method="svg2png">timeline code here</timeline> instead of <timeline >timeline code here</timeline>. it shows timeline as png but the links will be disabled.

Tips[edit | edit source]

For first time users EasyTimeline may not seem that easy at all. As with all script languages it takes some getting used to. Also the syntax description may be a bit bewildering due to its sheer size. Fortunately many elements of the script language are optional.

The 'Easy' in EasyTimeline conveys the message that once a timeline exists it is not so hard to understand, enhance or correct. Also translating for use on another Wikipedia it is pretty straightforward.

Tips:

  • See some chart examples to find something you could pick and edit for your own stuff
  • Put each timeline on a separate Template page: this makes it easier to edit, faster to preview, possible to include it in several pages

Using the current date[edit | edit source]

To use the current date make sure the table opens with {{#tag:timeline| and closes with }}. Then the current date can be inserted using magic words. For example {{#time: d/m/Y }} or {{CURRENTDAY2}}/{{CURRENTMONTH2}}/{{CURRENTYEAR}} will both yield the date in format dd/mm/yyyy.

See also[edit | edit source]

Installation[edit | edit source]

See /installation

External links[edit | edit source]


Language: English  • 日本語