User talk:Trappist the monk

From Wikipedia, the free encyclopedia
  (Redirected from User talk:Monkbot)
Jump to: navigation, search
CS1 This user is responsible for those
CS1 error messages (help).
Comments are welcome. If your comments are about my work on a particular article, please make
them at the article's talk page so that everyone who has an interest in the article may participate.

CS1 on[edit]

Hi. I've just updated all modules to match current live .en versions. Could you guess or check why is produced reference always whole italicized (examples here)? If you can, please flick through modules or preview some pages to notice big problems if any, too.

I think you've recently mentioned something about <cite> tag and sr:Медијавики:Common.css, and using different ways to display references; however references do display with <cite> I put in sr:Модул:Citation/CS1, and they display with no big errors which is most important (except italics and numerous errors in dates).

One more thing: Functions that check ISO formatted dates (is_valid_accessdate) cannot recognize other languages except English i.e. Mediawiki month names are in English, so test_accessdate is new function you introduced. While updating, I commented out few lines for good_date in sr:Модул:Citation/CS1/Date_validation and don't know if that's OK or if I missed something while updating modules. --Obsuser (talk) 14:55, 2 June 2016 (UTC)

The default styling for <cite>...</cite> tags is italic. sr:Медијавики:Common.css does not override that default. To override the default, edit sr:Медијавики:Common.css to include:
/* Reset italic styling set by user agent */
cite, dfn {
    font-style: inherit;
Alternately, edit sr:Module:Citation/CS1/Configuration and replace the <cite>...</cite> tags with <span>...</span> tags:
['cite'] = '<span class="$1">$2</span>';									-- |ref= није постављен па нема id="..." атрибута
['cite-id'] = '<span id="$1" class="$2">$3</span>';							-- за употребу када је |ref= постављен
This is not strictly semantically correct so the best fix is to fix Common.css.
Embargo date checking will likely fail because of this line:
v:match ('^%d%d?%s+%a+%s+%d%d%d%d$')
which should be changed to:
mw.ustring.match (v, '^%d%d?%s+%a+%s+%d%d%d%d$')
because of the unicode characters used in sr date names.
Trappist the monk (talk) 15:59, 2 June 2016 (UTC)
OK, thank you. I will try to implement these...
Should mw.ustring library be used elsewhere instead of standard one (in sr:Модул:Citation/CS1, especially)? I don't know if all link checks etc. will work for Cyrillic (if present) beside Latin characters, generally speaking.
I changed to mw.ustring all of these here. Don't know where or if it is needed to change it in sr:Модул:Citation/CS1...
I insisted to update Common.css many times but is not moving forward. If you can tell me, what other styles/classes are responsible for display of references too?--Obsuser (talk) 16:39, 2 June 2016 (UTC)
Perhaps the mw.ustring library might be used elsewhere but only selectively. It should not be used in the url validation because urls are defined to use the Latin character set. There are many cases where the tests are for punctuation so the mw.ustring library shouldn't be needed there.
cs1|2 use <cite>...</cite> and <q>...</q> which both have css defined in Mediawiki:Common.css). At the moment, I can't think of any others.
Trappist the monk (talk) 17:40, 2 June 2016 (UTC)

If you find time, please check in sr:Модул:Citation/CS1:

  1. elseif date:match("^%a+%s*%d%d?,%s+%d%d%d%d$") or date:match ("^%d%d?%s*%a+%s+%d%d%d%d$") then
  2. if name:match ('^%(%(.*%)%)$') then
  3. link_title_ok (link, list_name:match ("(%w+)List"):lower() .. '-link' .. i, last, list_name:match ("(%w+)List"):lower() .. '-last' .. i)
  4. last = select_one( args, cfg.aliases[list_name .. '-Last'], 'redundant_parameters', i );

if they need mw.ustring and how to format them because -link and -last are in third case, for example, and fourth one too (4th does not have matching). I guess there is more to translate in this Module. Sorry for being bothersome.--Obsuser (talk) 19:23, 2 June 2016 (UTC)

  1. probably because it is looking for mdy and dmy format dates
  2. no, because the pattern accepts anything between the enclosing doubled parnetheses
  3. no, because the list_name is provided in the function call in English
  4. no, because select_one() doesn't use the string library to select an alias from a list
Trappist the monk (talk) 19:57, 2 June 2016 (UTC)

  1. Should '-link' or '-last' in 3rd item above be translated? It is similar to local err_msg_list_name = list_name:match ("(%w+)List") .. 's list' or last = select_one( args, cfg.aliases[list_name .. '-Last'], 'redundant_parameters', i );.
  2. Should I change name = mw.language.fetchLanguageName( lang, "en" ); to name = mw.language.fetchLanguageName( lang, "sr" );?
  3. Should I remove (I've already had because translation into Serbian are not going to be in |trans-title=) from the list of two-letter language codes (if in_array (lang, {'am', 'ar', 'be', 'bg', etc.), just few lines below code I've just mentioned (name = mw.language.fetchLanguageName( lang, "en" );)?
  4. Should any part of local date_parameters_list = {['access-date']=AccessDate, ['archive-date']=ArchiveDate, ['date']=Date, ['doi-broken-date']=DoiBroken, etc. be translated?
  5. Should any part of PublisherName = substitute (cfg.messages['newsgroup'], external_link( 'news:' .. PublisherName, PublisherName, A:ORIGIN('PublisherName') )); be translated?
  6. Should TitleNote = " (Speech)"; be translated into TitleNote = " (говор)"; (English speech is говор/govor in Serbian)?
  7. Should mw.ustring be in if this_page.text:match (v) then (check this page to see if it is in one of the namespaces that cs1 is not supposed to add to the error categories)?
  8. Should mw.ustring be in capture = k:match (pattern); (the whole match if no caputre in pattern else the capture if a match)?
  9. Are date ranges going to get nowrapped in module in the way {{grey|month dd}}, yyyy and {{grey|dd month}} yyyy are currently here on English Wikipedia?
  10. Could you check changes I made to .sr wiki main module compared to .en version? I maybe did translated or added something sufficiently but missed something important?
  11. Do you know is there a way to get some parts of references "locked" but some displayed as any (this for example) text on Wikipedia page? I'm asking this because -{}- on .sr are special words that block module for conversion from Cyrillic to Latin and vice-versa. -{WHO}- on .sr will display always and always as "WHO" but WHO in wikitext could tranform into "WХО" what is disaster (W Latin, Х [not X, ex] Cyrillic, О [not O] Cyrillic). Other problem is that during several last years or from the very beginnings of Serbian Wikipedia, nobody used tags -{}- inside citation templates and instead of that they are as a whole wrapped into -{}-. That means that Cyrillic months, Cyrillic names of authors, editors etc. will remain in Cyrillic script after you change script version near "Talk" card where it is written "ћир./lat." The text that should be displayed in a common way would be page abbreviations, edition abbreviations, month names etc.
  12. Should ['AV-media-notes'] = 'Media notes' for example (title classes) be translated directly as ['AV-media-notes'] = 'My translation' or to define set of values such as for other parameter names (['AV-media-notes'] = {'Media notes', 'My translation'})? (You know probably that these translations are right now useless as all parameters are called in templates using English names; that's why I ask should I define set like for accessdate {'accessdate', 'access-date', 'My translation1', 'My translation2'} or this is different as it is among categories...)
  13. What solution would you propose for ['foreign_lang_source'] and also "in language name" as Serbian has dative case so ISO standard names in nominative cannot be preceeded by translated in (у/u). Maybe to put "in language: language name" or maybe it is possible to define somewhere dative case ISO names, don't know where are even those regular defined or probably not defined at all...

I've made all categories but accessdate year is not being displayed but $2, and if »»abc«« quotes are are not replaced (here). You can see many previewed references here...

Thank you.--Obsuser (talk) 23:59, 2 June 2016 (UTC)

  1. problematic; I'm beginning to think that there should be one set of modules for Cyrillic and another set for Latin with matching sets of templates
  2. if you are going to support |script-title= and associated categories, then yes
  3. if you are going to support |script-title= and associated categories, then no
  4. no; those are internal table indexes and variable names
  5. you already did
  6. probably
  7. only if doesn't use English names for categories; should you not have also translated the list of uncategorized namespaces in /Configuration?
  8. wouldn't hurt
  9. the nowrapping applies only to |access-date= which must not be a range
  10. in nowrap_date () why did you remove cap2? Do the changes you made work?
  11. I don't understand; first you say Cyrillic months, Cyrillic names of authors, editors etc. will remain in Cyrillic script then you say The text that should be displayed in a common way would be page abbreviations, edition abbreviations, month names etc.
  12. translated as you have done is fine; that isn't a parameter name
  13. I don't understand that whole dative/nominative thing. If there is a common and acceptable way to refer to the source language, use that rather than translate the English form
Trappist the monk (talk) 12:38, 3 June 2016 (UTC)

10. I removed it because MDY format won't be used on .sr (I commented it out in date validation module). Problem is maybe something else, I don't know what. cap2 it is not accidentally removed, however.

11. Cyrillic remains Cyrillic between -{ and }-, Latin remains Latin between -{ and }- i.e. text between -{ and }- behaves in the same way as on English Wikipedia for sure (it cannot be transliterated). Text that should be transliterated are month names obviously, abbreviations for page, volume etc. Problem is that nobody used tags -{}- when citing sources in articles, so there's no way to tell if |title= specified is Cyrillic so it can be transliterated into Latin after changing script in ћир./lat. Text "Приступљено " should become "Pristupljeno " (English: "Retrieved "), for example. Thing is way more complicated because currently on .sr it is that every Latin word or character displayed in article with Cyrillic title does NOT get changed, so -{}- became much or less useless. Several years before, you had to use -{}- for everything that is in Latin (or for something you want to remain in Cyrillic when version of .sr Wikipedia is changed to Cyrillic); however, I think it will have to get turned on in future so I want to prepare these modules.

13. I checked and it is working nice with language two letter codes etc. but users used to (and do still) enter in |language= "енглеском" (dative) which requires "на" preposition because this dative without preposition is gramatically incorrect. When using two letter codes (ISO), if you enter in |language= "en" it will display "енглески" (nominative) which does not require anything or can be led by "језик: " (like "language: ", like title, and then you can write whatever you want).
Solution is dual:
 1. to detect if ISO code is not entered [if it is – just not to display "на " ("in ") or display "језик: " (like "language: "); however, if it is not, all those entered names can contain errors which will be displaying unnoticed till someone manually corrects them]
 2. in order to prevent previoisly mentioned unnoticed errors / spelling mistakes or whatever, a list of full language ISO names in dative that should be displayed has to be defined + very simple function (which I don't know how to program) should be added to compare entry in |language=; if it is ISO, display already defined dative name from some list (either module or template external) preceeded by preposition; if it is not ISO, display error to use ISO and display again preposition and parameter content (that content is manually entered language name in parameter insted of ISO).

+ I've made all categories but |accessdate= year is not being displayed but "$2" (maybe cap2 improper removal is problem, but MDY is not needed on .sr Wiki); and if quote is |quote=»abc«, it is displayed as »»abc«« – quotes are are not replaced and they should, like in English ""text"" (see this here). You can see many previewed references here, too.--Obsuser (talk) 22:38, 3 June 2016 (UTC)

10. With this change, this:
cap, cap2 = string.match (date, "^(.*)%s+(%d%d%d%d)$");
date = substitute (cfg.presentation['nowrap2'], {cap, cap2});
became this:
cap = mw.ustring.match (date, "^(.*)%s+(%d%d%d%d)$");
date = substitute (cfg.presentation['nowrap2'], cap);
which is the reason for my question. In /Configuration is this:
['nowrap2'] = '<span class="nowrap">$1</span> $2'
(does that $2 look familiar?) The string match returns two captures: cap gets everything up to the space preceding the year, cap2 gets the year. The nowrap2 argument to substitute () expects two values, cap and cap2. Because you deleted cap2 in two places, substitute () has nothing for $2 in nowrap2.
I'll think about items 11 and 13 some more later.
Trappist the monk (talk) 00:32, 4 June 2016 (UTC)
I applied changes for these items you explained. For now, these are remaining problems:
  1. Regarding my question on local err_msg_list_name = list_name:match ("(%w+)List") .. 's list' and last = select_one( args, cfg.aliases[list_name .. '-Last'], 'redundant_parameters', i );: I saw this is for categories, and I've already made categories with "author" and "editor" keywords not translated. If it is possible, it would be good to translate these words too.
  2. Regarding my question on if in_array (lang, {'am', 'ar', 'be', 'bg',: It was not completed; I did not want to ask should I remove whole thing but should I remove from this list 'sr', ? (I guess yes and I did remove it as nobody should specify Serbian as script language for title; problem here is that category names should also be in dative, not nominative.)
  3. Regarding my question on nowrapping dates: I wanted to ask if there are going to be introduced (in future) some functions here for nowrapping ranges and is it possible at all?
  4. 11 and 13 are almost impossible to resolve completely, especially for me who is doing something he is not familiar with. Language-related categorization is a big problem. However, suggestion or direct help is welcome.
  5. Quotes are still displayed as »»abc«« intead of »abc« when |quote=»abc«.
  6. In (d)d. (m)m. yyyy date format, year is connected to quoted text so a lot of white space remains and looks bad. Example image.
    /For me, notes: 1) maybe don't translate et al./
  7. Why is missing URL (when accessdate is defined) error hidden?
And is there any page on English Wiki that contains general test for citation templates, with various test for particular parameters functions etc. Other suggestions for module improvements are welcome, too.--Obsuser (talk) 03:23, 4 June 2016 (UTC)
  1. as I said this is problematic. I don't have an answer yet.
  2. When a Cyrillic title is used, |script-title=sr:... will prevent it from rendering in italic font. So, I don't think that you should have removed sr from the list
  3. there are no current plans to nowrap anything. Of course it is possible, of course plans can change
  4. nothing new to add at this time
  5. fixed
  6. perhaps you want to include that access-date format in nowrap_date ()
  7. example?
  8. no
Trappist the monk (talk) 11:24, 4 June 2016 (UTC)
  1. No need for example; first error condition, anchored accessdate_missing_url, has set hidden = true. Maybe there were discussion on that topic too on English Wikipedia but if not – I think it would be useful to display that error. Or, you considered something else (citing book, for example, could have accessdate but no url if someone checks book that is not online; however, it is said here that accessdate requires URL, although I think it should not because you can access to or retrieve some source without consulting its online version). Why does accessdate require URL?
ω Awaiting 1, 4 [not a must, of course; advices would be welcome] --Obsuser (talk) 22:54, 4 June 2016 (UTC)
When error messages were first displayed there were some editors who objected. The result was an RfC that determined that certain error messages should be hidden until a bot (that these editors claimed would soon be available) could fix most of the errors. There is no bot to fix these errors because it has to troll through the article history to see if the particular template ever had |url=; if it did, the bot must then figure out why it was removed; must then figure out if the url is/was valid, ... So, that error message and a couple of others remain hidden on If you want to show them on, go ahead; you aren't bound by our RfC.
Trappist the monk (talk) 00:29, 5 June 2016 (UTC)

Regarding the last (June) update of Module:Citation/CS1/Date validation on English Wikipedia:

  1. Space %s from date1, century, date2 = date_string:match ("((%d%d)%d%d)[%s%-–]+(%d%d)"); was removed intentionally?
  2. On Can param_val, n = mw.ustring.gsub (param_val, '[%-–]', '—'); replace all hyphens and ndashes with mdashes?
    (Or current form is OK: param_val, n = param_val:gsub ('%-', '—'); for replacing hyphens found to mdash + in new line right after that param_val, n = mw.ustring.gsub (param_val, '–', '—'); for replacing ndashes found to emdash?) Or other proposal?
  3. On If you can tell me, please, if mw.ustring should be added to or removed from some module, especially after the June update?

PS In Module:Citation/CS1 on you have one "generaltional".--Obsuser (talk) 22:54, 4 June 2016 (UTC)

  1. yes; if there were a space, the preceding elseif would fail because it correctly doesn't allow spaces in year–year ranges so looking for a space in the patten here we actually take values from date_string is pointless
  2. the first (...[%-–]...)should work
  3. I took a quick look and didn't find anything obvious
Trappist the monk (talk) 00:29, 5 June 2016 (UTC)

Hi. Do you know maybe why ​.citation-comment {display: inline !important;} /* show all Citation Style 1 error messages */​ does not turn on all hidden error messages for specific user on I put that in my vector css and common css (or only common css etc.) but error messages are still not being displayed. Or that does not work either on (maybe deprecated)... --Obsuser (talk) 21:05, 11 June 2016 (UTC)

Works for me when I put it at sr:Корисник:Trappist the monk/common.css. Perhaps you have to bypass your browser's cache?
Trappist the monk (talk) 21:50, 11 June 2016 (UTC)
My code had some \u200b (zero width space) character ([1]). Don't know where I picked it up, and copied and then pasted text as such. Now it should be OK.--Obsuser (talk) 00:18, 12 June 2016 (UTC)

I updated .sr so dates can be followed by dot (as dates alone can and should have trailing dot but when displayed in references ".)" and ".." should become ")" and "." because two dot for ordinal number [year in this case] in sr lang gets cleared if followed by other punctuation sign).

  1. Maybe there was a simpler way, maybe not, doesn't matter too much. But when comparing my test pages I noticed that those non dotted months (long and short at the same time, defined in short_x_months lists for two scripts) are accepted with dot after them if year has a trailing dot. For example, "мај. 2016" gives error (OK) but "мај. 2016." does not give error (not OK). Do you know where is glitch? I only added "%.?" and other needed code following hyphen replacement method.
  2. Other thing that does not function is that hyphen gets replaced in page intervals with emdash but endash does not get replaced with anything.--Obsuser (talk) 13:09, 15 June 2016 (UTC)
Can I have simple isolated examples of what it is you're talking about instead of the wall of citations?
Trappist the monk (talk) 13:19, 15 June 2016 (UTC)
Yes, here, you can edit it in preview or save:
  1. Months in short_cyrillic_months and short_latin_months are not meant to be followed by dot. After my last (today) updates, |date=мај. 2016 raises error but |date=мај. 2016. does not.
  2. |pages=22-23 gives "стр. 22—23" but |pages=22–23 gives "стр. 22–23" (endash is not changed to emdash; it should be, however).--Obsuser (talk) 13:34, 15 June 2016 (UTC)
  1. Figured out first one. I've forgotten to add %.? to elseif mw.ustring.match(date_string, "^%a+%. +%d%d%d%d%a?$") then (--disabling long months of length three to be followed by dot).
  2. Should I use anchor_year=year..'%/'..anchor_year; or anchor_year=year..'/'..anchor_year;? What are these parts with anchor_x=x.. 'character' ..anchor_x used for?
  3. Biggest problem for now (endash is small problem) is how to enable aside from ISO language codes to enter also language full names from some list where those acceptable names will be defined. For example, |language=de will result in "немачки" + category name is wrong as it needs to have dative ("немачком"), not nominative. |language=немачком will result in "немачком" + error written out for unrecognized language + no category. Do you know how to make it no matter if |language=de or string1, or string2 etc. associated to ISO is entered, dative is always being displayed? I need some list to associate to both ISO and its results (which are in nominative, e.g. "немачки") dative forms which are different for each language, and that those dative forms are used for categorisation and displaying no matter if |language=de, |language=немачки or |language=немачком is specified in a citation template. --Obsuser (talk) 14:34, 15 June 2016 (UTC)
You do have to tell hyphen_to_dash( str ) that you want it to convert ndashes as well as hyphens to mdash. If you don't, it won't. Try this:
mw.ustring.gsub(str, '[–%-]', '—' )
CITEREF anchors. See {{harv}}. / is not a magic character so does not require escaping (%/). The date portion of CITEREF anchors must match exactly with the date portion of the link created by {{harv}} and {{sfn}} templates.
I suppose you could create translation tables:
local iso_639_2_translation = {
	['de'] = {'немачки', 'немачком'},
	['en'] = {'nominative', 'dative'},
	['fr'] = {'nominative', 'dative'},
with perhaps something similar to translate nominative to dative or the other way round or both.
Trappist the monk (talk) 15:15, 15 June 2016 (UTC)

cs1 on – break 1[edit]

Speaking of big, I've split this off from the main topic because that is getting big

Trappist the monk (talk) 19:40, 15 June 2016 (UTC)

Modules are pretty big, so I'm spending hours to find particular function and miss some/many. Hyphen_to_dash is fixed, thank you.
  1. I don't understand CITEREF year extraction very well. Why is it capturing part after year and what is %a? part supposed to be in a citation at all (as in +((%d%d%d%d?)%.?%a?), on .sr %.? is extra)?
  2. If you notice some %.? missing or extra (maybe it is extra in ['dmy'] = '(%d%d?)%.%s+(%a+)%s+(%d%d%d%d)%.?',), or anything else which is important but wrong, please tell.
  3. If you can, give a look to several new date formats that include numerical days and months.
  4. I don't know if there are mistakes in is_valid range and other functions i.e. can they use captured number as same as captured month name?
  5. I know for such tables but don't know how to implement them so that no matter what is entry one thing is output.
  6. Why there's no message Serbian language specified when |language=sr? Instead, category with wrong (nominative instead of dative) is being added.
  7. Why is in ^%a+ +[1-9]%d%d%d% [%-–] %a+ +[1-9]%d%d%d%a?$ (in English date validation module, too)? Is this escaping space character? There is more than one matching with .
  8. Why there are no contributor or collaborator (and similar: contributor-last, collaborators etc.) parameters or those names are deprecated on
  9. Now |accessdate=2010 is not accepted, on it is...--Obsuser (talk) 16:27, 15 June 2016 (UTC)


  1. The single alpha character after a year is captured in cases when it is necessary to disambiguate a CITEREF. See Template:Harvard citation#More than one work in a year
  2. ok
  3. ok, later
  4. not sure I understand what you want
  5. I think that language parameter handling will need rewriting
  6. at we don't show |language=en because this is; in general, sources here are English so it is not necessary to say that they are English; that same is likely true at Don't know about the category; perhaps that's part of the language parameter rewrite that will be necessary.
  7. probably a copy/paste oversight; it is benign and can be removed
  8. at there is the full set of |contributor-first=, |contributor-last=, etc; see the Module:Citation/CS1/Whitelist; collaboration is a singular parameter to hold the name of a group of researchers, authors, etc.
  9. there is discussion at Help talk:Citation Style 1#incomplete access dates where I have suggested disallowing things like |access-date=2010
Trappist the monk (talk) 20:16, 15 June 2016 (UTC)
  1. Check please tonumber, is_valid_. . . and get_. . ._number functions in parts marked with 05. [d]d—[d]d. [m]m. yyyy, 11. [d]d. [m]m. — [d]d. [m]m. yyyy and 14. [d]d. [m]m. yyyy. — [d]d. [m]m. yyyy, as I am not sure how converting captured month number to assigned number will work (when compared to converting captured month name to assigned number etc.). Generally there might be some glitches or something I miss and is related to error checking functions in date validation module.
  2. What is actual problem was that when |language=sr is entered (or |language=српски / srpski as ISO "sr" gives "српски / srpski") – it works properly (no language or category is being shown). But if |language=српски or |language=srpski is entered, it is not recognized (because I did not define "sr-EC"/"sr-ec" and "sr-EL"/"sr-el" language codes aside from "sr" as default languages; maybe I will add "en" too because references are generally in English on many Wikipedias).
     I think I will be able to fix this in grey, so no need to pay attention to the grey part but only this below.
    If you are willing to, could you edit sandbox versions on to try to implement those lists (1. nominative-Cyrillic [equals ISO], 2. nominative-Latin [equals ISO but in Latin script], 3. dative-Cyrillic [specific list], 4. dative-Latin [specific list, equal to dative-Cyrillic but in Latin script]) for ISO/nominative/dative names so that displayed language and the one used for categories is a dative form?
     • Note that sr:Модул:Konverzija, sr:Модул:TitleReplace can be used for conversion between scripts (maybe could be implemented elsewhere too), and sr:Модул:Jezik/podaci contains list of nominative-Cyrillic names followed by some form of " language" (" језик" or " (језик)"), and it could be useful.
    Also, translation of " language" should be allowed after a language name too (i.e. |language=nominative-Cyrillic језик, |language=nominative-Latin jezik and |language=dative-Cyrillic језику, |language=dative-Latin jeziku should all result in displaying only "dative-Cyrillic" and using "dative-Cyrillic" as category language keyword [as category name will be Cyrillic]; " језик"/" jezik" and " језику"/" jeziku" should be as some optional suffix; " језик"/" jezik" are for nominative case; " језику"/" jeziku" are for dative case).
    I am also starting too think there will be needed separate Cyrillic and Latin modules, for separate "cite web" and "cite web-lat" templates, in order not to have mixed scripts in one citation.
    However, that is a massive work so [for now] it would be very useful to implement that language fix (displaying and categorization).
    If you can, please make only concept in sandbox version (it is used nowhere in article namespace, so can be freely edited), and I will make full list with names and transfer it to the live module(s) after tests.
  3. But I did not change anything regarding accepting / not accepting year alone as accessdate, neither on or It should be same; however, on currently |accessdate=2010 is accepted (error is not displayed); on |accessdate=2010 is not accepted (error is displayed).
  4. Did I properly remove dot from the end of the date parameters value?--
  5. This is for both and modules:
    a) Why is sometimes year being matched with %d%d%d%d but sometimes with [1-9]%d%d%d? Shouldn't it be always matched with [1-9]%d%d%d as first digit must not be 0?
    b) Is there any important difference while matching in between %d?%d%. and %d%d?%. or between [%-–—](%d?%d)%. and [%-–—](%d%d?)%.?
    c) What is %d%d* used for as only two numbers should be matched?
    d) In only: Why did you put ^%d%d?%s*%a+%s+%d%d%d%d$ i.e. why first time %s* and after that %s+ (I know what are quantifiers * and + used for but I think it is inconsistent with matching in the /Date validation module; anchor %a? is also missing)?
    e) There are nine * quantifiers in current English live /Date validation module. Could you check if some are not needed? I think there are some %s not needed too, as first match condition is with normal space and then in then branch of if function %s is used for no reason.
  6. a) Please check module sr:Модул:Citation/CS1, part for date nowrapping for glitches, especially matching for nowrap1, nowrap2, nowrap3 and nowrap 4.
    b) Is there a particular reason why nowrap is not also for date but only for accessdate, and how to turn it on for all date parameters [turn it on of course, on there must be discussion first] (AccessDate = nowrap_date (AccessDate); should be changed or Date = nowrap_date (Date); or something else added after that but I'm not sure if it will work; maybe it is possible to turn it on for all date parameters)?--Obsuser (talk) 09:44, 16 June 2016 (UTC)
  1. for both 11 and 14, is_valid_month_season_range() is for month names. For numerical months you'll have to do some sort of equivalent validation that just uses numbers
  2. I think that I suggested in one of our past discussions that cs1|2 modules for should be split into Cyrillic and Latin versions. Doing that would greatly simplify a lot of things. Doing that could help figure out how best to support internationalization.

    I do not think that you should hide the language when |language=en; special case handling just complicates things. If it is really important to do so, do it after a solution is reached for the bigger nominative/dative problem.
  3. you didn't, but I did when I wrote the work-around for MediaWiki's inability to handle non-English month names. I have implemented that same code in Module:Citation/CS1/Date validation/sandbox:
    {{cite web/new |url=// |title=Title |access-date=2010}}
    "Title". Retrieved 2010.  Check date values in: |access-date= (help)
  4. does it work? if not, show me where
  5. a) because the [1-9] is the first step in the validation. Once we get beyond that, we know that the first digit is ok so we don't need to be specific when we extract that portion of the date
    b) no, I don't think so
    c) for consistency, could, and probably should, be %d%d?; again these occur in a place where we already know that we have one or two proper digits
    d) because nowrap_date() doesn't know if the date format is a valid format, using %s* prevents odd looking access date rendering
    d) %s* is not used in the 'first validation test' anywhere in Module:Citation/CS1/Date validation; where did you find it?
    d) %s is used for no reason Where?
  6. nowrap_date() was an experiment written to solve the specific problem of line wrapping at inappropriate places in the rendered access date. Except for minor bug fixes (the %s*) I have not revisited that code since it was written. Access date is the only supported date because it is rendered at the end of a citation. The other dates, for the most part fall early in the citation so are much much less susceptible to line wrap problems. To turn it on for all dates seems unnecessary to me but if it is to be done, the current code should be rewritten elsewhere. Maybe after we separate into Cyrillic and Latin modules.
Trappist the monk (talk) 13:35, 16 June 2016 (UTC)
  1. а) I'm talking about Module:Citation/CS1/Date validation. Shouldn't it be always (in all date formats, except ISO) matched with [1-9]%d%d%d as first digit must never ever be 0?
    c) %d%d* should be(come) %d%d??
    d) I'm talking about Module:Citation/CS1. In ^%d%d?%s*%a+%s+%d%d%d%d$ first time %s is quantified as %s* and after that as %s+. I thought that %s* is never captured, so it is could be replaced with   in both first matching ('first validation test') and then second to get captured values for nowrapx functions.
    d) I'm talking about Module:Citation/CS1/Date validation. It used for no reason in then branches of if functions which [if functions] match normal space  ; if then branch is being done, then   is matched, once for sure. Example is "month-initial: month day, year" or "day-initial: day month year".
  2. а) I'm talking about Module:Citation/CS1. I still don't get why is %s* used and not   (or at least %s+, as if there's no space there's nothing to wrap).
    b) I knew that might be reason, but on small screens or big zoom (and with possible long Surname, Name1 Name2) – or if date is before accessdate – date can be equally "broken".
    c) I included date ranges in nowrapping too. Ranges are only for date, not accessdate (if in accessdate, error flag is raised etc.). Can Date = nowrap_date (Date); apply nowrapping to |date= too?
    d) Are nowrap1, nowrap2, nowrap3 and nowrap 4 matchings (^(.*) (%d%d%d%d%.? [%-–—]) (.*) (%d%d%d%d%.?%a?)$ for nowrap4, for example) good? You can see what I wanted to capture and nowrap by capture groups and each nowrap comment before. --Obsuser (talk) 15:55, 16 June 2016 (UTC)
  1. а) we explicitly test for first digit not being zero as a condition of getting into the rest of that date format's validation. Once inside, we know that the first digit is not 0 so have not need to 'test' it again; you can't get to the the %d%d%d%d without having satisfied the [1-9]%d%d%d
    c) yes
    d) we don't know if the access date has a valid format and presume that it's correct. We do care that there is a space character preceding the year because that is where we will end the nowrap (year is allowed to be on another line but we don't allow day to be separated from month by a line break). %s* matches zero or more consecutive white-space characters. That has nothing to do with captures. In this case if the date is malformed '16June 2016' the no wrap still works properly even though the date format is bad.
    d) another case where we have already explicitly tested for the presence of a space character so no need to be as precise.
  2. а) see 11.d
    b) as far as I know, no one has complained about that; perhaps no one has noticed. It could be done but it needs to be done in a different way; perhaps as a last step after trailing dot removal and |df= formatting.
    d) does it work? then its ok
Trappist the monk (talk) 19:39, 16 June 2016 (UTC)

Could you tell me where the text "Archived from the original on " should be translated in modules so that |deadurl=unfit does not display the aforementioned text in English? --Obsuser (talk) 16:16, 29 June 2016 (UTC)

sr:Module:Citation/CS1 lines 2978–3010 particularly line 2995.
Trappist the monk (talk) 16:39, 29 June 2016 (UTC)

Henry Hoʻolulu Pitman[edit]

One of the things that need to be done for Henry Hoʻolulu Pitman to pass FAC is a source review for formatting and reliability. Can you possibly make a comment on the nomination page about that seeing as how you just recently made some helpful citation repairs? See Wikipedia:Featured article candidates/Henry Hoʻolulu Pitman/archive2. Thanks.--KAVEBEAR (talk) 23:29, 23 June 2016 (UTC)

Wikipedia:Bots/Requests for approval/Monkbot 11[edit]

Monkbot task 11 has been approved for extended trial. — xaosflux Talk 11:24, 25 June 2016 (UTC)

Purpose of template[edit]

I would like to tag pages on their talk pages much like a wikiproject would. The purpose of the template would be to try to move my (i'm not the original founder but the original founder hasn't done anything in 3 years, so I as the only other member I assumed full control.) incubator tiny 1 man show from the gutter into something people other than just me visit and contribute to. thanks for reading Iazyges (talk) 06:24, 11 July 2016 (UTC)

In future, one conversation in one place please.
Editors at the original conversation have made some good suggestions. Once out of the incubator, perhaps a tweak to {{WikiProject Military history}} is all that's required.
Trappist the monk (talk) 10:57, 11 July 2016 (UTC)


Self-closed tags and new tracking category[edit]

Could you tell me why do I have Pages using invalid self-closed HTML tags in my article sr:Проширени периодни систем?

"The page contains invalid self-closed HTML tags" is part of the category description on English wiki; I used only br tags as <br /> and already defined references as <ref name=""/>.

What template or system is adding this category anyway i.e. where to translate it? Currently, sr:Категорија:Pages using invalid self-closed HTML tags has only four articles...--Obsuser (talk) 23:29, 14 July 2016 (UTC)

Forget, I have just seen this. Should not this change be important, even for cross wiki or other notice? --Obsuser (talk) 23:32, 14 July 2016 (UTC)
(talk page stalker) See this discussion and the link to the previous discussion. The change was mentioned in Tech News a couple of months ago. – Jonesey95 (talk) 23:45, 14 July 2016 (UTC)

Hatnotes, lists and outdenting when image is to the left[edit]

Do you know why are hatnotes such as here not outdented i.e. right on the text left margin? I made all modules, .css and .js are updated – so nobody could find error till now. Also, why are bulleted and numbered list, not only on but on too, not outdented more from the text left margin when image is to the left (bulleted lists' content is displayed also right on the text left margin)? --Obsuser (talk) 18:38, 17 July 2016 (UTC)

I don't know. At the moment real life has commandeered most of my time so I haven't got time to investigate this. You might be better served posting this question at WP:VPT.
Trappist the monk (talk) 23:55, 17 July 2016 (UTC)