Module:IncrementParams: Difference between revisions
Jump to navigation
Jump to search
(rm unnecessary vendor specifics) |
m (1 revision imported) |
(No difference)
|
Latest revision as of 13:47, 16 April 2023
Documentation for this module may be created at Module:IncrementParams/doc
-- STEP 1: Click on the "edit" tab at the top of the page to edit this module. -- STEP 2: if you want to increment by a number other than 1, put that number below, after the equals sign. local increment = 1 -- STEP 3: Replace the example template text with the template text that you wish to increment. local templatetext = [==========[ |header3 = Section 1 |label5 = Label A |data5 = Data A |label7 = Label C |data7 = Data C |header10 = Section 2 |label12 = Label D |data12 = Data D ]==========] -- STEP 4: Save this module. -- STEP 5: You can now output the incremented text with the following code: -- {{subst:#invoke:IncrementParams|main}} -- Or you can simply copy and paste the text from this module's documentation. -- STEP 6: Check the output! In rare cases this module might produce false positives. -- For example, it will change the text "[[Some link|foo3=bar]]" to "[[Some link|foo4=bar]]". -- You can use the "show changes" function in the edit window of the template you are editing -- to find any false positives. -- STEP 7: When you are finished, undo your changes to this page, so that the next person -- won't be confused by seeing any non-default values. Thanks for using this module! local p = {} local function replace(prefix, num, suffix) return '|' .. prefix .. tostring(tonumber(num) + increment) .. suffix .. '=' end function p.main(frame) -- Increment the template text. templatetext = mw.ustring.gsub(templatetext, '|(%s*%a?[%a_%-]-%s*)([1-9]%d*)(%s*[%a_%-]-%a?%s*)=', replace) -- Add pre tags and escape html etc. if the pre option is set. if frame and frame.args and frame.args.pre and frame.args.pre ~= '' then templatetext = mw.text.nowiki(templatetext) templatetext = '<pre style="white-space:pre-wrap; word-wrap:break-word;">' .. templatetext .. '</pre>' end return templatetext end return p