Template talk:Timeline of release years/Archive 1

Improvements to semantics
Here's a snippet of the template in its current state on the Zelda series article and the HTML it generates (with all inline CSS removed).

Let's first discuss how we can replace the  tags with a more semantic representation, and we can figure out further refinements later if necessary. I think the best approach would be to place an ordered list within the last pair of  tags in each row. (The  tags should also be removed.) Example:

Thoughts? — zziccardi ( talk ) 02:07, 27 April 2016 (UTC)
 * Like Template:Video_game_timeline/testcases? --113.140.80.46 (talk) 05:25, 27 April 2016 (UTC)
 * My personal desire was that we not emit (and subsequently bloat) the HTML of a list where there is but a single element. So instead of: We would have:  Otherwise, the change looks good. --Izno (talk) 11:11, 27 April 2016 (UTC)
 * []? --2001:DA8:4001:3:C84A:9CD3:CB80:950F (talk) 12:38, 27 April 2016 (UTC)
 * Test case html looks good. I suppose we could have done all this using table cells and rowspans too, since the data is tabular in nature. I'm not worried though that it's a list instead. --Izno (talk) 12:42, 27 April 2016 (UTC)
 * And [ another version]. --2001:DA8:4001:3:C84A:9CD3:CB80:950F (talk) 13:57, 27 April 2016 (UTC)
 * Also good (nice padding!), though I would remove the rowspan where rowspan=1. Thanks for the help! --Izno (talk) 14:11, 27 April 2016 (UTC)
 * As I said above, I think the most semantic approach would be to use an ordered list in a single table cell instead of  or something similar. Thoughts? Also, like Izno said, thanks for the help, 2001! I'm glad someone knows Lua. (Why couldn't MediaWiki have used a more common scripting language like Python or JavaScript? Sigh.) — zziccardi  ( talk ) 14:58, 27 April 2016 (UTC)
 * I think this is a plausible difference of opinion in implementation. The table cell representation probably uses slightly less html and allows slightly easier play with CSS. The accessibility is about the same--rowspan in this case probably serves better to indicate that there are 2 games for 1 year. And we could introduce sortability more easily, which might be interesting. We may want an opinion from e.g. MediaWiki:common.css/WP:WikiProject Templates/Template:Navbox/WP:VPT--most of the regular haunts at those places might have an opinion one way or another whether we should use a ul + li, ol + li, or td implementation. Regards Lua, it was selected because it can be sandboxed trivially without allowing people to inject any of a variety of security problems. --Izno (talk) 15:25, 27 April 2016 (UTC)
 * Asking for other opinions sounds good to me. I meant that last comment as more of a rhetorical question / totally unnecessary complaint… I'm aware of the security concerns, but I'd like to help with modules and haven't gotten around to learning Lua yet. — zziccardi ( talk ) 16:53, 27 April 2016 (UTC)
 * In case it wasn't clear, I was only suggesting the use of ordered lists for the situations in which two or more games are released in a single year. Also, while we're at it, let's not forget to add  as you have in your above examples. — zziccardi  ( talk ) 14:45, 27 April 2016 (UTC)

Requested move 1 April 2016

 * The following is a closed discussion of a requested move. Please do not modify it. Subsequent comments should be made in a new section on the talk page. Editors desiring to contest the closing decision should consider a move review. No further edits should be made to this section. 

The result of the move request was: OK to move if someone volunteers to manage the transition carefully. Dicklyon (talk) 02:42, 28 April 2016 (UTC)

Template:Video game timeline → Template:Timeline of release years – No reason why this template should be limited to video game articles. For example, it works well on the History of iPhone article. SST flyer  06:37, 1 April 2016 (UTC)
 * Right now I'm a bit concerned at the template's implementation, in that it uses an HTML table and breaks instead of list markup. The center column isn't very accessible. And lastly, I think the Graphs extension may be able to produce this kind of content. --Izno (talk) 12:24, 1 April 2016 (UTC)
 * I agree that the current implementation could be improved semantically, but I don't see why that should limit the template's applicability to video game-related articles. As for using the Graph extension, that would be worse for accessibility, because the extension currently only outputs PNGs on Wikimedia projects as far as I know. If the MediaWiki installation of it could be reconfigured to output HTML canvas or SVGs, both of which Vega supports, then it might make sense to rewrite this template. — zziccardi ( talk ) 15:22, 1 April 2016 (UTC)
 * My point is something like "I'm not sure it's ready for primetime or use outside of a small area while we improve it", but it's a wiki, so maybe my point is invalid. :) *shrug* From a brief review of the documentation, timelines seem a little outside the purview of Vega? --Izno (talk) 18:52, 23 April 2016 (UTC)
 * Sorry for a bit of a delayed response. I don't think there's any harm in expanding the template's use, even if major changes are made to the implementation later on. Personally, I'd also like to see the forced line breaks replaced with proper list markup, and while I agree that the table's center column isn't exactly accessible, it does look nice. Do you have any other ideas for improving the template's semantics? We could start a new discussion about possible refinements. I've only briefly looked at Vega's documentation too, but it looks pretty flexible, so it may be possible to use it for timelines at some point down the road. (The Phabricator task for adding SVG support is here, by the way.) — zziccardi ( talk ) 16:44, 26 April 2016 (UTC)
 * Mine was more delayed! Indeed, the right hand column markup was my primary concern. I've also seen timelines as-wholes done using list markup (ordered list/HTML 4 definition list), but given that middle column, probably not desirable. --Izno (talk) 17:04, 26 April 2016 (UTC)
 * Hah, that's true! Let's continue discussion of improvements to semantics below. — zziccardi ( talk ) 02:07, 27 April 2016 (UTC)
 * Comment this template uses module:VG timeline so that should also be moved if this is moved -- such as module:release timeline or somesuch -- 70.51.46.39 (talk) 04:07, 2 April 2016 (UTC)
 * Support: There's really nothing that ties this template to video games, and it has much wider potential uses. – The Millionth One (talk) (contribs) 02:33, 23 April 2016 (UTC)


 * The above discussion is preserved as an archive of a requested move. Please do not modify it. Subsequent comments should be made in a new section on this talk page or in a move review. No further edits should be made to this section.

Colors
What are the purposes of the shades of green and yellow in-between the black? Better yet, why can't we just list the years/games without any colors? It's gaudy and does not help explain anything. ~ Dissident93 (talk) 04:08, 8 June 2018 (UTC)
 * Ninja Gaiden is separated into two eras. The NES era, and the 3D era. I think that's why the colors are show like that.Blue Pumpkin Pie (talk) 14:08, 8 June 2018 (UTC)
 * They are added to emphasize the timeline continuity (and eras as suggested by BPP). I like how they draw the eye personally. Yellow and green I believe are the default--we could reasonably change those colors. --Izno (talk) 14:15, 8 June 2018 (UTC)
 * I changed the color range from yellow - gold to gold - goldenrod. Its easier on the eyes. That yellow would be impossible to see clearly when its on the white background, so its a good thing Dissident brought it up. But if you don't like the color, feel free to change it (so long as its not yellow).Blue Pumpkin Pie (talk) 17:53, 8 June 2018 (UTC)

Font size
I've got some accessibility concerns with this template, specifically with the Module--particularly the font size. Per WP:SMALLTEXT, font size should never drop below 85% and I see at least one place in Module: where the font size drops below that to 80%. I'm not super familiar with Lua, so could someone take a look at it and bring the font size back up to at least 85%, preferably 90%? Thank you! cymru.lass (talk • contribs) 00:35, 13 November 2018 (UTC)
 * Update: I messed around with Module:/sandbox and upped the font size to 90%. Thoughts? Sandbox vs actual is over at Template:/testcases. I don't think I messed anything up. Could afford go down to 85% I think. cymru.lass (talk • contribs) 00:40, 13 November 2018 (UTC)
 * You should consider reviewing the talk page threads before you do so. ;) There's some discussion above that had a few changes that would have resulted in things like better accessibility as well as a table with less CSS and other better semantics. --Izno (talk) 02:53, 13 November 2018 (UTC)
 * I figured it would be better to start a new section in the hopes of getting more attention drawn specifically to the font size! Plus, the older discussions were stale/finished. How does the sandbox version look? cymru.lass (talk • contribs) 14:46, 13 November 2018 (UTC)
 * You should restart old discussions so that we can get things implemented. :P --Izno (talk) 16:20, 16 November 2018 (UTC)

Borders
It may be desirable to have every cell contain borders (using the CSS ) or potentially to use the   class instead of being a classless element, per the desire we should have to be WP:Accessible. --Izno (talk) 14:15, 27 April 2016 (UTC)
 * I set table class="wikitable" and td style="border: none;". However, in fact, I don't know what I shall do. --2001:DA8:4001:3:C84A:9CD3:CB80:950F (talk) 15:13, 27 April 2016 (UTC)
 * I came here to say the exact same thing. BOrders would be a very good idea, in my humble opinion. The text can get really close to the timeline.Blue Pumpkin Pie (talk) 09:50, 20 May 2018 (UTC)
 * Could an example be provided of what this would look like? ~ Dissident93 (talk) 23:36, 6 June 2018 (UTC)
 * I have made the most-basic change and removed the offending CSS from the module for the basic use of this template. Consider reviewing Template:Timeline of release years/testcases. --Izno (talk) 02:05, 7 June 2018 (UTC)
 * My main concern was that there is no border to separate it from the text. Sometimes it would bleed into the paragraph. I dont know about having a border between each line. It may be a good idea for each year, but i don't think it's a good idea for each release. If each release could be separated in bullets, it could be more accessible without adding too many borders.Blue Pumpkin Pie (talk) 05:45, 7 June 2018 (UTC)
 * Adding bullets is a bit more significant effort and I think negatively impacts the width of the table, whereas borders between years do not. I can see how much extra work it is to bulletize, but I think the negative width impact from current should not send us down that path. (I can also take a look at the border-only-around-year version--my feeling is that I would still prefer the non-bulleted each release border.) --Izno (talk) 14:15, 8 June 2018 (UTC)
 * And I see now that there is no border on the entire table. Let me take a look to see what needs to change to allow that. --Izno (talk) 14:21, 8 June 2018 (UTC)
 * any new updates?Blue Pumpkin Pie (talk) 23:10, 25 June 2018 (UTC)
 * I have made a few more changes, cleaning up some unnecessary styling and correcting the bug or two that I had left over from before. I don't plan to implement the list change (though I think I could now) due to my concern about unnecessary width additions. Take a look at the current test case or try the sandbox template version in an article, see what you think. I'm still considering whether to do borders internal to each year; right now the sandbox has borders, but I think I could do a plainlist pretty easily. --Izno (talk) 00:59, 30 June 2018 (UTC)

How do i test the sandbox template version?Blue Pumpkin Pie (talk) 02:12, 1 July 2018 (UTC)
 * You can add more test cases or you can use timeline of release years/sandbox on a page of your choosing (remember to remove it after, or only use it in previewing an article). --Izno (talk) 14:24, 1 July 2018 (UTC)

It didn't look bad when it was a small timeline, but for a big one, i noticed it wasn't that appealing.Blue Pumpkin Pie (talk) 04:52, 2 July 2018 (UTC)
 * The text before was too small. I adjusted the text size accordingly. --Izno (talk) 11:38, 2 July 2018 (UTC)

Revisit
I thought I try reviving the discussion and see if anyone is willing to add a border to the template. Looking back I don't think I was very clear on what I wanted out of the template. What I would like is for a single border to cover the entire template so that there is a clear stopping point. If you look at the template as it is now, it bleeds into the text of the articles sometimes. When you read an article, there will be a box separating the text from the timeline template. If you use Metal Gear as an example, there is template:Metal Gear chronology has a defined border, but not the Metal Gear Timeline. There is just a big space between the text and the timeline.Blue Pumpkin Pie (talk) 11:21, 11 August 2019 (UTC)
 * Oh, that's trivial. I'd support it. You want to do the honor? --Izno (talk) 16:17, 11 August 2019 (UTC)
 * I'm not sure about this. Do we want both the title and the subtitle to be inside (or outside) the frame? Currently the title is outside and the subtitle is inside (since the subtitle is technically the first row of the table). Jc86035 (talk) 16:19, 11 August 2019 (UTC)
 * Alternatively we could increase the table margins a bit so that the separation's clearer. Jc86035 (talk) 16:21, 11 August 2019 (UTC)
 * In my mind, i imagined it to resemble the template:video game reviews where the title and subtitle would be above the frame. I don't think increasing the margin solves the visual problem, but thats just my opinion. If you prefer, would it be ok to make samples of both and see what it would look like in an article?Blue Pumpkin Pie (talk) 17:23, 11 August 2019 (UTC)
 * I've changed the styling for the actual template, just because it's less fiddly than either asking you to play with your browser's element inspector or using a separate CSS sandbox. Does it look better now? Does the border radius work? Jc86035 (talk) 10:31, 12 August 2019 (UTC)

I think you're almost there. the radius could be bigger so that the information isn't so close to the edge of the frame.Blue Pumpkin Pie (talk) 12:15, 12 August 2019 (UTC)
 * If you meant the table padding, I've just set that in the CSS page. (The border radius is specifically the radius of the rounded corners.) Jc86035 (talk) 18:25, 12 August 2019 (UTC)
 * I don't really care for them. I think i prefer just non-rounded corners. But i also dont mind if they remain either.Blue Pumpkin Pie (talk) 19:30, 12 August 2019 (UTC)
 * Yeah, also not a fan of rounding generally. --Izno (talk) 23:05, 13 August 2019 (UTC)

Dividing the colors?
I don’t mean to sound like Moses here but I am trying to divide the colors in many ranges but I can’t seem to go past range six here. I noticed it when I tried adding Super Mario Bros. Deluxe on 1999 as blue on this template and I was wanting the rest of the list after to be red but it defaults on green. Any way around that?

Jhenderson 7 7 7  16:59, 17 July 2020 (UTC)
 * The module currently is hardcoded for ranges 1-5. That could be expanded or potentially reworked for any number of ranges. -- ferret (talk) 17:06, 17 July 2020 (UTC)


 * Well that explains it. I definitely could use more codes on the module if that's ok? Jhenderson  7 7 7  17:14, 17 July 2020 (UTC)
 * I'm not really opposed to the idea, but are you aware you can do year_color? I.e. instead of a range for 1995 alone, you can do 1995_color = green. -- ferret (talk) 17:31, 17 July 2020 (UTC)


 * No I didn’t. I will try that. Jhenderson  7 7 7  18:02, 17 July 2020 (UTC)


 * Thanks that worked well. Jhenderson  7 7 7  23:47, 17 July 2020 (UTC)

Horizontal timeline?
Sorry if I'm missing something obvious, but it doesn't seem like there's a way to make the timeline horizontal. Can this be done/added? AntiGravityMaster (talk) 22:27, 27 April 2020 (UTC)
 * At the moment the template does not support horizontal orientation. It would take quite a bit of work to make it so. Generally vertical works better because there is no limit on the length, it just means the user will have to scroll more. If it were to be horizontal then it would be limited by the width of the user's screen. Can you give an example of an article where you feel this would be needed, and why vertical orientation would not be sufficient? And/or any examples of articles where some similar horizontal template has been implemented? Kidburla (talk) 21:01, 31 December 2020 (UTC)

Inactive year condense
I may work on this, but want the idea out here in case someone else gets to it first. I think we need a way to indicate an inactive year range that the table, instead of outputting every year between say "Game #3" and "Game #4", 15 years later, will compress that period to a single row, such as "2004 ~ 2017 - No releases". This would be used to combat long inactive franchises that make a come back and have giant empty spaces in the generated table as a result, which just stretches down the page. -- ferret (talk) 13:12, 16 November 2018 (UTC)
 * Or simply nothing at all! Forcibly including a timeline of literally nothing, doesn't make any sense! :) We don't need to show a visual proportion of lack. And having the option of formatting as short horizontal ticks along a vertical line would be nice. Isn't there already a redundant template that does that? There's no reason to have a timeline template for every category of subject that could use it. Thank you. — Smuckola(talk) 21:03, 24 July 2020 (UTC)
 * This is from nearly two years ago. I'm not 100% sure I follow what you're suggesting or replying about. Are you agreeing we need a way to compression or suppression empty ranges? Or are you saying this template has no purpose to begin with? It's not really clear from your response. This template is pretty widely used, with over 300 transclusions. -- ferret (talk) 22:17, 24 July 2020 (UTC)
 * Yes I'm agreeing because you said it should have a way to indicate an inactive year range, and I said also it could have an option for nothing at all. There's no reason to pad nothingness into a timeline. Having a negative timeline of "nothing happened" is pointless. And I furthermore asked if there's also another template that has just a vertical line with little horizontal ticks on it. I know I've seen one somewhere. Or one that supports dates and not just years. — Smuckola(talk) 22:24, 24 July 2020 (UTC)
 * Ok. I don't know about any other template like you want, but I'm looking into the inactive range part. -- ferret (talk) 22:38, 24 July 2020 (UTC)

I have samples of both "excludeempty" and "compressempty" parameters at Template:Timeline of release years/testcases, but I've been away from LUA for a while and would like someone to glance over and refactor any silliness I've done. . -- ferret (talk) 23:13, 24 July 2020 (UTC)
 * Hi, just wondered if you have had anyone look at your Lua code? I had a quick look at it today and it looks mostly fine. I had been planning to implement something similar myself, but my design was not as elegant as yours - I had planned to "look ahead" at future years when an empty year was found, but your design of returning the last known empty year and tracking it, then only writing out the compression row once the next non-empty year is found, is better. My only minor query on the code itself is I am not sure when the branch at lines 119-121 (latest version ATTOW) is ever called. As  is incremented on each iteration of the loop, I am not sure how   can ever be equal to , but maybe I am being thick. I do have a couple of other ideas. One is about colours - I notice your design was to allow a "compress_color" argument to be specified, but the template itself supports colour ranges, so why would we not just use the colour for the surrounding range if it exists? Those range arguments could then be used by article authors to specify a colour for compressed ranges if necessary. (Using your way, template transclusions using different colours in different periods may then be hindered by having just a single colour for compression rows.) The other idea I had was about the display of ranges - you have gone for a single-line approach for the left side, but given that this is a vertical template, I am thinking we may want to use a multi-line approach such as  . Using this way we may also want to avoid compression where there is only a two year gap, which I personally think is sensible but interested in your thoughts? I became particularly interested in this today after I implemented a very long instance of this template which would certainly benefit from such "compression". Thanks! Kidburla (talk) 20:56, 31 December 2020 (UTC)
 * I never did anything further with this or get any other feedback. Since Smuckola didn't reply I just left it sitting, as no one else seemed to be asking for or pushing for it. Regarding lines 119-121: I'm pretty sure it's leftover code from the very first attempt in Special:Diff/969358563. It likely could never execute but I believe the first-stab idea was to handle if a "single" year gap. The actual solution for that was done in Special:Diff/969360527, lines 112-115. I have removed those lines now. As for the color, I've removed the compression color in Special:Diff/997510308 and it will now follow range colors. As for the presentation of the compression year range: Keep in mind the entire point of the update was to reduce vertical usage. The slight horizontal increase isn't much (7 characters), versus 3 lines to do it with hard new line breaks. There's also some accessibility concerns for new line breaks. (I make no claim this template is currently accessible, just that BR tags are generally to be avoided). -- ferret (talk) 21:43, 31 December 2020 (UTC)
 * Thanks for the quick reply! The changes you have made look great. I would just note that presumably we can now remove the condition on line 108, changing  to just , as that condition will always be true. Regarding the display, I still have a different opinion. I see what you say about the extra space requirements, but I think horizontal space is at much more of a premium than vertical space (due to scrolling) and I just feel it looks odd that the compressed rows "jut out" more than the normal rows due to this extra horizontal space on those rows. My understanding of the accessibility concerns with line breaks is that they should not be used to represent list data which should semantically be represented another way (for example,   is clearly a list and would be read by a screen reader as "1 2 3" without any indication of the line breaks, and should instead be represented using another tag such as  ). That is not the case here as the line breaks are purely for rendering and don't represent a true list as such. In fact,   is probably better than the ellipsis in my original example - as a screen reader will just read "1996 to 2003" which is exactly what we would want. The screen reader does not have to care about the horizontal space used; that is only relevant for the visual representation of the page. I don't feel 3 rows is a big issue and this   parameter is more likely to be used by people who have like 10 empty rows and just want to significantly cut down on the unnecessary space. I am aware that other people have different views and interested to hear thoughts from you and others - I am keen to get this "right first time" as once people start to use the   feature in earnest then any future change in rendering will be considered a "breaking change"... Kidburla (talk) 02:56, 1 January 2021 (UTC)
 * I can meet a little half way? I've switched it to endash, per MOS:DASH for year ranges. This reduces it from 7 to 5 characters width and keeps us MOS compliant too. -- ferret (talk) 15:16, 1 January 2021 (UTC)
 * ferret: This took me way too long to understand. Based on pure numbers, sacrificing the width is more beneficial to bring the size down massively. Let's use Microsoft Flight Simulator as an example. There are 17 compressible blocks there. ferret's implementation brings that down to 4, adding 5 characters of width. Kidburla's (if I am understanding right) reduces it to 11, adding no width. I think the additional width is a worthy sacrifice here, because of how dramatic the reduction is in length. Given that this is optional, it will not affect timelines like those on God of War (series). If I'm understanding everything right, then I think the slightly additional width is worth the huge reduction in template length. It'll be significantly less obtrusive in articles; the length warps it much more than the width does. ImaginesTigers (talk) 17:07, 1 January 2021 (UTC)
 * I support the condensed option. Lots of series pages I've seen, like Darius, have several releases during one decade, take a decade-long break or more, and then come back in another decade. This leads to this really long and stretched out box that pushes the content to the side and makes the page longer than it needs to be. This would really help in fixing that. Namcokid  47  (Contribs) 16:34, 1 January 2021 (UTC)

I've implemented compressempty. -- ferret (talk) 14:17, 2 January 2021 (UTC)
 * Sorry for the late reply to above, I was quite busy yesterday. I agree it's important to follow MOS so you win as far as the endash is concerned. I am also pacified by the fact that the range goes to 2 lines when the template is transcluded alongside lots of text, as the CSS engine automatically tries to compress it as much as possible and so introduces a line break after the endash. This results in less width "jut out", as well as more emphasis on the vertical separation between the entries above and below. Well done for persevering with the discussion and reaching implementation! Kidburla (talk) 16:55, 3 January 2021 (UTC)

compressempty - vertical expansion of compression rows
Following my earlier comment above, I have noted that the squashing of the multiyear text onto two rows does not occur in most cases, and in fact only seems to occur in the template documentation because of large blocks of preformatted text on the same page, which as we know are given "carte blanche" by CSS. I can concede on the point of the multiyear text itself because this is now structured as per MOS, but I am eager to allow an option for vertical expansion of these compression rows to give a more visual representation of the time gaps they represent. A timeline is after all a primarily visual representation of time, and the fact that a 10 year gap has the same height as a single concrete entry may be ineffective for some articles. I am thinking to add parameters to allow gaps to be higher, such as 3 rows high for the longest gap, and scaled accordingly down to 1 row high for the shortest. I am happy to look at this myself, but wanted to gauge opinion first. PING:. Kidburla (talk) 01:18, 4 January 2021 (UTC)
 * I'm not interested in pursuing this. The gaps will have to be found before any rendering is done, and I believe this is a niche use case of what will already be a niche parameter. I originally proposed looking into this nearly two years ago, and until now there was little interest. And even then a lot of the heat is because I circulated the idea. -- ferret (talk) 01:49, 4 January 2021 (UTC)
 * I don't like the optional compression feature, for example in the Microsoft Flight Simulator article. One of the charms of the timeline template was that it visualized and put into perspective the years and gaps between releases. Now it lacks this visualization. Zarex (talk) 03:30, 14 January 2021 (UTC)
 * This is something I was going to suggest before as well. perhaps the cell-space of max 3 blocks. if there's a two-year gap, it would be the size of two, and if it is a three-year gap it would be the size of three, but anything higher than 3 would just cap off at three.Blue Pumpkin Pie Chat Contribs 13:48, 14 January 2021 (UTC)
 * The parameter is purely optional, and if you feel it detracts from the article, feel free to remove it. Having the option is different from using it. The entire reason it was asked for was to significantly compress the vertical spacing, and finding ways to compress only 1 or 2 block worth of a large range basically becomes a situation of "why bother" to me. If the option doesn't satisfy, don't use. If someone wants to enhance for a middle ground, go for it. I'm not interested in writing it. -- ferret (talk) 22:15, 14 January 2021 (UTC)

Helping coding a table
Hey Alex. I was wondering if I could get your help with some coding? Per this discussion regarding moving much of the MCU timeline info to the main MCU page, it was also determined putting some sort of table for the timeline would be helpful. I thus came across Timeline of release years which was basically what what desired, but since that's for actual real world releases, not in-universe stuff, it didn't suit the needs (mainly being able to have a year span represent a "release"). So I decided to hardcode what we wanted in my sandbox here, and I looked at the module code (which I know very little of how modules work), and found the class of "release-timeline wikitable". So I used that (second example currently in the sandbox) and that worked well. But when I comment out or remove the first example which is using the template code, the tables reverted to standard wikitables. Would you mind helping me or telling me how I can get this class style of table for use on my own without the existing template? I thought about requesting the existing template be updated to allow year spans for "releases", but since that wouldn't really apply to anything in the real world which is what the template is for, I felt just using the base code for my own purposes was the best practice. Thanks. - Favre1fan93 (talk) 16:21, 4 February 2021 (UTC)
 * Okay, I see what's happening here. Module:Timeline of release years is declaring the styling listed at Module:Timeline of release years/styles.css, which includes "release-timeline", so that when the template is used, the timeline appears properly as the CSS is included; when the template isn't used, "release-timeline" is a class that doesn't exist (as it's not declared). If you added  before the raw-coded table, without declaring the template, then it'll work fine.
 * However, I'd still recommend sticking to the template and having someone add the option for ranges. While it might not apply to anything at the moment, it's always good to have the added functionality there and available, especially since we have ranges appear for inactive yearspans (e.g. 1947–1994, in your example), it makes sense to have them for active yearspans. I'll happily take a look into it if you'd like. -- / Alex /21  02:48, 7 February 2021 (UTC)
 * Thanks for the info Alex! Yeah, if you wouldn't mind looking at how to go about making the changes to the template, that would be great. And I can either start a discussion on its talk now, or can wait until you have something to implement about wanting to make this functionality happen in the template. I know in the template code, you can set "compressempty" to automatically make year spans for non-releases, but the table needs to be able to handle spans for a release. Based on my limited understanding of the code, but at least seeing how it should work, I believe this might lead to the whole template needing a reformat, but I could be wrong. - Favre1fan93 (talk) 03:09, 7 February 2021 (UTC)
 * Didn't take too much, by the looks of it. Taking a look at User:Alex 21/sandbox4, what do you think? For a 1943 entry, we add 1945, which sets the range as 1943–1945 and then skips to 1946. -- / Alex /<sub style="color:#008">21  04:01, 7 February 2021 (UTC)
 * Here via my watchlist. Nice work Alex. I wonder if we need to rename the template a bit as it has no exact specific connection to "release years" beyond that being it's typical use. May not be worth pondering right now. Please add a testcase and update documentation when you go live. :) -- ferret (talk) 14:59, 7 February 2021 (UTC)
 * Thanks! Definitely not an urgent issue, the title, but something worth considering for sure. Favre, did you still want to start a discussion on the template's talk page, or should I just implement the code and update the documentation? -- / Alex /<sub style="color:#008">21  04:24, 8 February 2021 (UTC)
 * Sorry this slipped past me the past few days. Okay, so this looks really good! The one thing I noticed that doesn't appear to work, is still having individual years within the range be usable. So for example, if I have what you added, plus 1945, a row for "1945" will still add below the ranged set. At least for my purposes with the MCU implementation, we might use this depending on how we work with Doctor Strange, but regardless, I feel this should be a viable function regardless because there could be something that is appropriate for the ranged years, while another thing is appropriate for only one of the years in the range. If this is possible and you make that adjustment, then I say go ahead and implement, and as suggested, perhaps the template needs to be renamed to be more generic. - Favre1fan93 (talk) 16:26, 10 February 2021 (UTC)
 * I'm doing some pondering on this issue. I know where the issue lies (line 162), but haven't yet thought of an elegant solution. Alex may beat me to it, depending how my day goes or if I get distracted. -- ferret (talk) 16:42, 10 February 2021 (UTC)
 * Not super knowing about module code, or this one's in particular, my feeling was to make a dedicated range parameter 1943-1945 (or 1943_1945) in addition to the individual 1943, 1944, and 1945, with the ranged year first in the table, followed by the three individuals below it. Is that a possible solution, or more work than solving it based on Alex's changes? - Favre1fan93 (talk) 16:51, 10 February 2021 (UTC)
 * As implemented, the new "to" parameter will not distinguish between different items within a single year. It applies to all of them. The way the module stores data for each year isn't quite compatible for easily doing it on an entry-by-entry basis, working to think through it not. -- ferret (talk) 17:24, 10 February 2021 (UTC)
 * How I fix this depends somewhat on the expected output. For example, if you did 1943a, 1943b, 1943b_to = 1945, 1943c. Would you expect "1943, 1943-1945, 1943", following the exact order of A, B, C? Or, would it be ok if the output was 1943 (A and C), then 1943-1945 (B)? If there is no 1944 specified, should 1944 be denoted as an inactive year, or hidden due to the 1943b_to? -- ferret (talk) 17:37, 10 February 2021 (UTC)

I've made a table below for what I think should be able to happen with the template, which I think is what you meant with would it be ok if the output was 1943 (A and C), then 1943-1945 (B). And in this case, since 1944 isn't used individually, that would be an inactive year I guess. Does that help answer your question? I apologize if it doesn't. - Favre1fan93 (talk) 22:37, 10 February 2021 (UTC)
 * So you'd want the ranged entry to appear first, regardless of the letter they used, then the rest of the individual entries, correct? Otherwise behave as the timeline already does. -- ferret (talk) 22:55, 10 February 2021 (UTC)
 * Yes, the ranged set could got before or after the individual years of such range, but I think beforehand is the correct placement. And yes, the timeline should remain as it already exists for other aspects of it. Thank you for also helping with this. - Favre1fan93 (talk) 23:16, 10 February 2021 (UTC)
 * First stab at this, may be...inelegant. I do not work in Lua on a regular basis and a lot of it's syntax makes me want to yell, lol. Special:Diff/1006105723. See testcase at Template:Timeline_of_release_years/testcases. Please feel free to play with it and try some other combinations. Edit: One bug fix, Special:Diff/1006108453. Plus one small optimization: Special:Diff/1006108952 -- ferret (talk) 02:26, 11 February 2021 (UTC)
 * I can't speak to elegance of the module code, but the test cases do seem correct for what I was thinking. - Favre1fan93 (talk) 03:12, 11 February 2021 (UTC)
 * One small thing that I'm going back and forth on now looking at, which I'd like you're opinions too, is if a range is used in addition to the first year individually, should it come first or second? IE "1943-1945, 1943, 1944, 1945" (as we have it now and what I said earlier) or "1943, 1943-1945, 1944, 1945". - Favre1fan93 (talk) 03:17, 11 February 2021 (UTC)
 * And something else, regarding setting a color for an individual year. There's no way for me to set the color just for the ranged years. If I do 1943_color, that will apply to the two 1943 ranges in the example, plus the individual. - Favre1fan93 (talk) 03:23, 11 February 2021 (UTC)
 * Putting the ranged years last would require a little bit more thought, ironically. I can see it both ways, but I have nothing in my head that tells me which is more correct "stylistically". The code would need a little rework to do it the opposite way around. As for colors... Colors are currently determined purely by the year being processed, not the argument being processed. The code that determines color does not know if it was 1943a, 1943b, or 1943c, as at that point they have been squished into one table of "1943" already. I could probably look at range, but it would apply to every entry with to=1945 still, not individual items. -- ferret (talk) 13:41, 11 February 2021 (UTC)
 * I think I understood how colors were working, but to my point, if one of those "1943" years is ranged, technically it shouldn't be colored the same as something that is just 1943. Now a user might want them to ultimately be the same colors, but there should be a way to make the ranged years its own color too. - Favre1fan93 (talk) 22:32, 13 February 2021 (UTC)
 * Please check the sandbox. "year_to_year_color" is how it works, so "1943_to_1945_color". This means all entries for the same range will share color, but they will differ from 1943, 1944, and 1945 individually. Also, if you have 1943-1945, and 1943-1946, you can give them separate colors as the range is different. Making it so that 1943b_to_color would work would require considerable more effort. Not saying I won't consider looking into it, but if this is good enough... The naming of the parameter is a little weird and the functionality overlaps with the existing range perimeters, but I'm not really sure how else to name it. They are basically two separate ways of coloring a range. -- ferret (talk) 17:23, 14 February 2021 (UTC)

Thank you for your continued work with this. This looks like everything is working as it should with the new changes, in terms of items being able to be in ranged years, and adjusting color as needed. Are we at a point this can be implemented to the live version? - Favre1fan93 (talk) 19:05, 14 February 2021 (UTC)
 * I'll give it a look over to see if anything can be tweaked, maybe a day or two for Alex to chime in if he has any thoughts. Or if he wants to look. :) -- ferret (talk) 19:09, 14 February 2021 (UTC)
 * Ok great, no worries! Thanks again. Please give me a ping once you think it's all set. - Favre1fan93 (talk) 19:10, 14 February 2021 (UTC)
 * I've looked at this discussion previously and am not personally interested in helping to implement/sort something I believe fails the WP:WAF test. (See also Category:Video game fictional chronology templates in that regard, which I think also fails that test.) --Izno (talk) 19:15, 14 February 2021 (UTC)
 * While Favre's specific case is for fiction, I believe there's use cases beyond that, such as denoting product lifespans. -- ferret (talk) 21:33, 14 February 2021 (UTC)
 * Which I think is more suitable for Graph:Chart at that point, or even EasyTimeline... --Izno (talk) 21:40, 14 February 2021 (UTC)
 * While I definitely understand the concern, for the specific instance I am looking to use this (for the Marvel Cinematic Universe), because there has been coverage of the timeline elements (seen at Marvel Cinematic Universe) and there is currently a table discussing one aspect of its codification, that currently isn't "accurate", so in a discussion about that section, some sort of visual aid was believed to be helpful (with each entry sourced for its spot). This template is the best visual aid in this case, and I was planning to hardcode it, but couldn't because the CSS class does not exist outside the call by this module. - Favre1fan93 (talk) 23:44, 14 February 2021 (UTC)

I found something else that's happening that shouldn't. If you look in my sandbox where I've been building the template I want for how it would ultimately be implemented in article using the sandbox code, you can see that there is a collapsed range of "1944-1945". Those years should not exist because they are covered by the ranged set I am using for The First Avenger. - Favre1fan93 (talk) 17:53, 15 February 2021 (UTC)
 * I'll have to ponder on that. Each year is processed separately, so the year 1944 and 1945 know nothing about the data that processed for year 1943. This is probably not easily solved. -- ferret (talk) 19:10, 15 February 2021 (UTC)
 * Understood. I know we've put some work into these changes, but is there the possibility to add the CSS class to be used regularly on the site without including  so hard coded this would be possible? - Favre1fan93 (talk) 21:08, 15 February 2021 (UTC)
 * If you want the style of this template, but simply as a custom table, you could always just use them directly for each column/row of your table. It's not pretty, and it's awfully manual, but nothing stops you from replacing class="release-timeline" with style="all the guts of the class". You'd have to do it on each and every row. -- ferret (talk) 21:42, 15 February 2021 (UTC)
 * To answer the actual question, no, and in fact we are migrating toward the style used here with the bigger templates like infobox, navbox, and other currently ad hoc classes like hlist and plainlist (see WP:TemplateStyles and MediaWiki talk:Common.css/to do). The question of how to deal with ad hoc table styling is the subject of a task on Phab which you can watch if you want, phab:T176272. If you have a template in mind for these styles, we can talk about making those accessible for that template. --Izno (talk) 23:08, 15 February 2021 (UTC)
 * It's just another option if the last few changes/issues I noticed don't really work out for the existing template. I'm a bit confused by your response. Are you saying that the CSS styling this template uses is going away in favor of more established ones that other templates, such as infobox, use? - Favre1fan93 (talk) 22:58, 16 February 2021 (UTC)
 * is there the possibility to add the CSS class to be used regularly on the site without including &lt;templatestyles src="Module:Timeline of release years/styles.css" /> so hard coded this would be possible The answer to this question is "no". I subsequently expounded on the general state of use of global classes 'ad hoc', as it were, and that the ones you have available today as ad hoc classes (like infobox, plainlist, and hlist) will also be removed from their ad hoc nature. --Izno (talk) 23:12, 16 February 2021 (UTC)

Just wanted to check in about my last note above regarding the table still showing a collapsed range for years covered by a stated range. - Favre1fan93 (talk) 15:35, 26 February 2021 (UTC)
 * I drifted off to other tasks, wasn't sure if you were opt'ing to just do a hard coded table. I'd have to work up some way to range "upper range of prior years" and skip inactive years that fall within it. Not sure when I'll tinker again, maybe this weekend. -- ferret (talk) 16:35, 26 February 2021 (UTC)
 * I'd like to use this table and it's parameters if possible. I'll switch to a hardcode option if you think getting everything working isn't feasible. No rush either. - Favre1fan93 (talk) 18:10, 26 February 2021 (UTC)
 * Special:Diff/1009254659, please play around with test cases. -- ferret (talk) 16:01, 27 February 2021 (UTC)
 * I think we are oh so close. In Template:Timeline_of_release_years/testcases section, it appears, between Captain Marvel and The Avengers, it's keeping 1952 as the new low range for any future collapsed years. But the intent is working correctly when we look further up the table for between Agent Carter in 1946 and Hello in 1950. - Favre1fan93 (talk) 16:19, 27 February 2021 (UTC)
 * Fixed. Small syntax issue due to Lua not being my usual day to day language. -- ferret (talk) 16:31, 27 February 2021 (UTC)
 * Great! Even knowing Lua coding is more than I can say, so I appreciate it. Everything looks good in the test cases (existing ones plus the"year_to_testing" we created for this), plus how I'm intending to use it as I've been building in my sandbox. If you don't see any outstanding problems, I think this is okay to implement? - Favre1fan93 (talk) 17:35, 27 February 2021 (UTC)

I haven't come across any other issues, and I think this is good to implement into the live table unless you have any further objections/issues. - Favre1fan93 (talk) 16:11, 8 March 2021 (UTC)
 * Doesn't look like any other watchers are going to chime in, I'll handle sometime today. -- ferret (talk) 16:13, 8 March 2021 (UTC)
 * ✅ -- ferret (talk) 16:32, 8 March 2021 (UTC)
 * Thank you so much for all the help ! I'm going to implement what my intent for this was at Marvel Cinematic Universe and will make sure all goes as intended. - Favre1fan93 (talk) 18:27, 8 March 2021 (UTC)

Compressempty by range?
Hi, Ferret! Can the timelime compress ranges on demand like below? A two-year-range compression, like "2004–2005", is some how funny. <pre style="width: 80%; margin: auto;">

And can empty ranges display as "..."? Which make left columns slim.

-- Lopullinen 17:19, 5 September 2021 (UTC)
 * Hi Lopullinen. To be quick and to the point, at this time I do not have the bandwidth to consider or implement further options in relation to compressempty. -- ferret (talk) 17:21, 5 September 2021 (UTC)

Making this template even more generic in name?
As a member of the VG project I know the origins of this template, but in working with a few other articles well outside media released, (eg Net neutrality in the United States) this would be a perfect timeline template to have as a visual overview of events spanning a handful of decades. (broader ranges can use something like Graphical timeline for example. As such, maybe this could be renamed to something even more generic. (Obviously I can use the current name and just repurpose it now). I don't know what a good name would be as Vertical timeline redirects already to the graphical one. --M asem  (t) 20:03, 10 November 2021 (UTC)
 * I've pondered it before, but never quite came up with something that didn't feel just... generic, lol. Year-based timeline? But since you can do multiple items per year... Like video game release, it's another one of WP:VG's pet templates that has broader uses, if one wants to use them for non-VG. The actual function of Vgrelease itself is really something like "Paired item list". -- ferret (talk) 21:55, 10 November 2021 (UTC)

Add a colored background?
This may come across as trivial, but I thought it might be a good idea to break up the amount of white empty space there is within the template. I'm not super attached to the idea, so I don't mind if it gets rejected. i just thought it would help.Blue Pumpkin Pie (talk) 21:49, 26 September 2022 (UTC)


 * I'm not sure what you mean. A background color is still empty space, it's just whatever color instead of white. I don't think we should encourage odd background colors. -- ferret (talk) 23:06, 26 September 2022 (UTC)
 * I was thinking just a simple light grey that other wikitables use. It's to reduce harsh white. I believe the less white we use, the better.Blue Pumpkin Pie (talk)
 * I've bad news for you about the new Vector skin. -- ferret (talk) 23:48, 26 September 2022 (UTC)
 * I noticed it. Hopefully it doesn't become the default. There's some design flaws.Blue Pumpkin Pie (talk) 00:49, 27 September 2022 (UTC)

Color theme shortcuts to promote access
Because the template only has one default color scheme, it makes it easy for new users to implement awkward design choices that don't fit with accessibility. It may not fix the problem completely, but I thought it would be a good idea to make a set of pre-defined color themes for easier customization. The ability to make custom color ranges will still exist, but promoting basic themes may encourage using Single-color themes rather than creating a two-color theme. Here's an example of the color themes we should bring in.

Let me know what you think.Blue Pumpkin Pie (talk) 18:26, 24 December 2022 (UTC)


 * I see no reason to implement this. No one would know about it without checking the documentation page, and as they can just specify any color they want, it's unlikely to change any usage patterns. It's fine to just add some suggested color pairs to the documentation instead. -- ferret (talk) 18:42, 24 December 2022 (UTC)
 * It will require usage and promotion. But Once we start using it in more well-known articles, If a new user wants to copy the template and notices these shortcuts being used, they will be encouraged to look at the documentation. I can already think of a few articles using this template (2 of them being "Vital").Blue Pumpkin Pie (talk) 18:53, 24 December 2022 (UTC)

TBA should be abbr'd
TBA should be automatically wrapped in an abbreviation template for "To be announced". Is that technically possible? — ncfavier  09:36, 16 March 2023 (UTC)


 * The answer is yes and I've done it now. — ncfavier  12:05, 16 March 2023 (UTC)

Split colours for a given year
Unless I'm mistaken it's not possible to have two colours for separate items within the same year- to say have an item on 1997a and 1997b have distinct colours. Is this something that could be added? ERAGON (talk) 10:58, 22 November 2023 (UTC)


 * Not currently possible. Would require some work as by the time colors are being decided, we no longer know "1997a" or "1997b". We simply have an ordered list of "1997" items. -- ferret (talk) 16:22, 22 November 2023 (UTC)


 * I'd appreciate the feature if a refactor could be done to allow it. I'd encountered the limitation before, but today I was attempting to set up colours to categorise Quake releases by storyline, and ran into the issue of multiple releases in a single year attached to differing storylines. --ERAGON (talk) 21:36, 22 November 2023 (UTC)