မဝ်ဂျူ:Separated entries
This module is subject to page protection. It is a highly visible module in use by a very large number of pages, or is substituted very frequently. Because vandalism or mistakes would affect many pages, and even trivial editing might cause substantial load on the servers, it is protected from editing. |
ထာမ်ပလိက်တဏအ်ဝွံမရပ်စပ်သုၚ်စောဲမတော်ခယျၜိုတ် မုက်လိက် ၊ သီုအရာ ≈30822% ဆေၚ်စပ်ကဵုသီုဖအိုတ် မုက်လိက်ဟေၚ်. To avoid large-scale disruption and unnecessary server load, any changes to it should first be testedပ္ဍဲမဆေၚ်စပ်ကဵုထာမ်ပလိက် /sandbox ဝါ /testcases မုက်လိက်တန်ဍောတ်၊ ဝါ ပ္ဍဲမုက်လိက်တန်ဍောတ်ညးလွပ်ဒြပ်ဇကု။ The tested changes can then be added to this page in a single edit. သ္ပဂုန်တုဲစၚ်ခြၚ်ချပ်ဗ္စာရဏာသဳကၠဳပရေၚ်ဂွံပြံၚ်လှာဲလ္တူဆေၚ်စပ်ကဵုရပ်စပ်စကာညးလွပ် ဓရီုကျာညိကၠာ။ |
This module depends on the following other modules: |
Usage
ပလေဝ်ဒါန်Module:Separated entries serves as a template front-end to mw.text.listToText
. It takes any number of positional parameters and pieces them together with |separator=
. |conjunction=
can be optionally defined if a different separator is desired between the last and second last items. The starting positional parameter can be specified using |start=
. Leading and trailing whitespace is stripped. To add deliberate leading and trailing whitespace, use the HTML entity  
for a space and
for a "newline". Separated entries does not raise any errors by design.
{{#invoke:separated entries|main|separator=...}}
For more complex cases – such as selecting the parameters to list, or preprocessing them, or omitting the last parameters – ထာမ်ပလိက်:Mfl is available. The following two examples with “ + ” as delimiter and “ ... ” as conjunction produce a similar result:
{{#invoke:separated entries|main|separator= + |conjunction= ... }}
{{#invoke:params|sequential|squeezing|trimming_values|setting|i/l| + | ... |list_values}}
See also
ပလေဝ်ဒါန်-- This module takes positional parameters as input and concatenates them with
-- an optional separator. The final separator (the "conjunction") can be
-- specified independently, enabling natural-language lists like
-- "foo, bar, baz and qux".
local compressSparseArray = require('Module:TableTools').compressSparseArray
local p = {}
function p._main(args)
local separator = args.separator
-- Decode (convert to Unicode) HTML escape sequences, such as " " for space.
and mw.text.decode(args.separator) or ''
local conjunction = args.conjunction and mw.text.decode(args.conjunction) or separator
-- Discard named parameters.
local values = compressSparseArray(args)
return mw.text.listToText(values, separator, conjunction)
end
local function makeInvokeFunction(separator, conjunction)
return function (frame)
local args = require('Module:Arguments').getArgs(frame)
args.separator = separator or args.separator
args.conjunction = conjunction or args.conjunction
return p._main(args)
end
end
p.main = makeInvokeFunction()
p.br = makeInvokeFunction('<br />')
p.comma = makeInvokeFunction(mw.message.new('comma-separator'):plain())
return p