Difference between revisions of "Module:Category handler/config"

From D&D 5e
Jump to: navigation, search
(make this fit within 80 chars)
(restructure, make most config optional, and add a few items to the blacklist)
Line 10: Line 10:
 
--------------------------------------------------------------------------------
 
--------------------------------------------------------------------------------
  
-- The following config values set the names of parameters that suppress
+
--------------------------------------------------------------------------------
-- categorisation. They are used with Module:Yesno, and work as follows:
+
--                             Parameter names                              --
--
+
-- These configuration items specify custom parameter names. Values added    --
-- cfg.nocat:
+
-- here will work in addition to the default English parameter names.        --
-- Result of yesno(args[cfg.nocat])         Effect
+
-- To add one extra name, you can use this format:                            --
-- true                                    Categorisation is suppressed
+
--                                                                           --
-- false                                    Categorisation is allowed, and the
+
-- cfg.foo = 'parameter name'                                                --
--                                         blacklist check is skipped
+
--                                                                           --
-- nil                                      Categorisation is allowed
+
-- To add multiple names, you can use this format:                            --
--
+
--                                                                           --
-- cfg.categories:
+
-- cfg.foo = {'parameter name 1', 'parameter name 2', 'parameter name 3'}    --
-- Result of yesno(args[cfg.categories])    Effect
+
--------------------------------------------------------------------------------
-- true                                    Categorisation is allowed, and the
 
--                                         blacklist check is skipped
 
-- false                                    Categorisation is suppressed
 
-- nil                                      Categorisation is allowed
 
cfg.nocat = 'nocat'  
 
cfg.categories = 'categories'
 
  
-- The parameter name for the legacy "category2" parameter. This skips the
+
---- The nocat and categories parameter suppress
-- blacklist if set to the cfg.category2Yes value, and suppresses categorisation
+
---- categorisation. They are used with Module:Yesno, and work as follows:
-- if present but equal to anything other than cfg.category2Yes or
+
----
-- cfg.category2Negative.
+
---- cfg.nocat:
cfg.category2 = 'category2'
+
---- Result of yesno(args[cfg.nocat])        Effect
cfg.category2Yes = 'yes'
+
---- true                                    Categorisation is suppressed
cfg.category2Negative = '¬'
+
---- false                                    Categorisation is allowed, and the
 +
----                                          blacklist check is skipped
 +
---- nil                                      Categorisation is allowed
 +
----
 +
---- cfg.categories:
 +
---- Result of yesno(args[cfg.categories])    Effect
 +
---- true                                    Categorisation is allowed, and the
 +
----                                          blacklist check is skipped
 +
---- false                                    Categorisation is suppressed
 +
---- nil                                      Categorisation is allowed
 +
-- cfg.nocat = 'nocat'  
 +
-- cfg.categories = 'categories'
  
-- cfg.subpage is the parameter name to specify how to behave on subpages.
+
---- The parameter name for the legacy "category2" parameter. This skips the
-- cfg.subpageNo is the value to specify to not categorise on subpages; cfg.only
+
---- blacklist if set to the cfg.category2Yes value, and suppresses
-- is the value to specify to only categorise on subpages.
+
---- categorisation if present but equal to anything other than cfg.category2Yes
cfg.subpage = 'subpage'
+
---- or cfg.category2Negative.
cfg.subpageNo = 'no'
+
-- cfg.category2 = 'category2'
cfg.subpageOnly = 'only'
 
  
-- The parameter for data to return in all namespaces.
+
---- cfg.subpage is the parameter name to specify how to behave on subpages.
cfg.all = 'all'
+
-- cfg.subpage = 'subpage'
  
-- The parameter name for data to return if no data is specified for the
+
---- The parameter for data to return in all namespaces.
-- namespace that is detected. This must be the same as the cfg.other parameter
+
-- cfg.all = 'all'
-- in [[Module:Namespace detect]].
 
cfg.other = 'other'
 
  
-- The parameter name used to specify a page other than the current page; used
+
---- The parameter name for data to return if no data is specified for the
-- for testing and demonstration. This must be the same as the cfg.page
+
---- namespace that is detected.
-- parameter in [[Module:Namespace detect]].
+
-- cfg.other = 'other'
cfg.page = 'page'
+
 
 +
---- The parameter name used to specify a page other than the current page; used
 +
---- for testing and demonstration. This must be the same as the cfg.page
 +
---- parameter in [[Module:Namespace detect]].
 +
cfg.demopage = 'page'
 +
 
 +
--------------------------------------------------------------------------------
 +
--                              Parameter values                              --
 +
-- These are set values that can be used with certain parameters. Only one    --
 +
-- value can be specified, like this:                                        --
 +
--                                                                            --
 +
-- cfg.foo = 'value name'                                                    --
 +
--                                                                            --
 +
-- These settings are optional. It is always possible to use the module      --
 +
-- defaults instead.                                                          --
 +
--------------------------------------------------------------------------------
 +
 
 +
---- The following settings are used with the cfg.category2 parameter. Setting
 +
---- cfg.category2 to cfg.category2Yes skips the blacklist, and if cfg.category2
 +
---- is present but equal to anything other than cfg.category2Yes or
 +
---- cfg.category2Negative then it supresses cateogrisation.
 +
-- cfg.category2Yes = 'yes'
 +
-- cfg.category2Negative = '¬'
 +
 
 +
---- The following settings are used with the cfg.subpage parameter.
 +
---- cfg.subpageNo is the value to specify to not categorise on subpages;
 +
---- cfg.subpageOnly is the value to specify to only categorise on subpages.
 +
-- cfg.subpageNo = 'no'
 +
-- cfg.subpageOnly = 'only'
 +
 
 +
--------------------------------------------------------------------------------
 +
--                                Blacklist                                  --
 +
-- The categorisation blacklist. Pages that match Lua patterns in this list  --
 +
-- will not be categorised. (However, see the explanation of cfg.nocat,      --
 +
-- cfg.categories and cfg.category2 for some exceptions.) If the namespace    --
 +
-- name has a space in, it must be written with an underscore, e.g.          --
 +
-- "Wikipedia_talk". Other parts of the title can have either underscores or  --
 +
-- spaces.                                                                    --
 +
--------------------------------------------------------------------------------
  
-- The categorisation blacklist. Pages that match Lua patterns in this list will
 
-- not be categorised. (However, see the explanation of cfg.nocat,
 
-- cfg.categories and cfg.category2 for some exceptions.) If the namespace name
 
-- has a space in, it must be written with an underscore, e.g. "Wikipedia_talk".
 
-- Other parts of the title can have either underscores or spaces.
 
 
cfg.blacklist = {
 
cfg.blacklist = {
    '^Main Page$', -- don't categorise the main page.
+
'^Main Page$', -- don't categorise the main page.
   
+
 
    -- Don't categorise the following pages or their subpages.
+
-- Don't categorise the following pages or their subpages.
    '^Wikipedia:Cascade%-protected items$',
+
'^Wikipedia:Cascade%-protected items$',
    '^Wikipedia:Cascade%-protected items/.*$',
+
'^Wikipedia:Cascade%-protected items/.*$',
    '^User:UBX$', -- The userbox "template" space.
+
'^User:UBX$', -- The userbox "template" space.
    '^User:UBX/.*$',
+
'^User:UBX/.*$',
    '^User_talk:UBX$',
+
'^User_talk:UBX$',
    '^User_talk:UBX/.*$',
+
'^User_talk:UBX/.*$',
   
+
 
    -- Don't categorise subpages of these pages, but allow
+
-- Don't categorise subpages of these pages, but allow
    -- categorisation of the base page.
+
-- categorisation of the base page.
    '^Wikipedia:Template messages/.+$',
+
'^Wikipedia:Template messages/.+$',
   
+
 
    '/[aA]rchive' -- Don't categorise archives.
+
-- Don't categorise User CSD logs or PROD logs.
 +
'^User:.*/[cC][sS][dD] ?[lL][oO][gG]',
 +
'^User:.*/[pP][rR][oO][dD] ?[lL][oO][gG]',
 +
 
 +
-- Don't categorise archives.
 +
'/[aA]rchive',
 +
"^Wikipedia:Administrators' noticeboard/IncidentArchive",
 +
"^Wikipedia:Administrators' noticeboard/3RRArchive",
 
}
 
}
  
-- This is a table of namespaces to categorise by default. They should be in the
+
--------------------------------------------------------------------------------
-- format of parameter names accepted by [[Module:Namespace detect]].
+
--                          Default namespaces                              --
 +
-- This is a table of namespaces to categorise by default. They should be in --
 +
-- the format of parameter names accepted by [[Module:Namespace detect]].     --
 +
--------------------------------------------------------------------------------
 +
 
 
cfg.defaultNamespaces = {
 
cfg.defaultNamespaces = {
    'main',
+
'main',
    'file',
+
'file',
    'help',
+
'help',
    'category'
+
'category'
 
}
 
}
  

Revision as of 09:59, 7 April 2014

Documentation for this module may be created at Module:Category handler/config/doc

--------------------------------------------------------------------------------
--            [[Module:Category handler]] configuration data                  --
--       Language-specific parameter names and values can be set here.        --
--------------------------------------------------------------------------------

local cfg = {} -- Don't edit this line.

--------------------------------------------------------------------------------
--                       Start configuration data                             --
--------------------------------------------------------------------------------

--------------------------------------------------------------------------------
--                              Parameter names                               --
-- These configuration items specify custom parameter names. Values added     --
-- here will work in addition to the default English parameter names.         --
-- To add one extra name, you can use this format:                            --
--                                                                            --
-- cfg.foo = 'parameter name'                                                 --
--                                                                            --
-- To add multiple names, you can use this format:                            --
--                                                                            --
-- cfg.foo = {'parameter name 1', 'parameter name 2', 'parameter name 3'}     --
--------------------------------------------------------------------------------

---- The nocat and categories parameter suppress
---- categorisation. They are used with Module:Yesno, and work as follows:
----
---- cfg.nocat:
---- Result of yesno(args[cfg.nocat])         Effect
---- true                                     Categorisation is suppressed
---- false                                    Categorisation is allowed, and the
----                                          blacklist check is skipped
---- nil                                      Categorisation is allowed
----
---- cfg.categories:
---- Result of yesno(args[cfg.categories])    Effect
---- true                                     Categorisation is allowed, and the
----                                          blacklist check is skipped
---- false                                    Categorisation is suppressed
---- nil                                      Categorisation is allowed
-- cfg.nocat = 'nocat'    
-- cfg.categories = 'categories'

---- The parameter name for the legacy "category2" parameter. This skips the
---- blacklist if set to the cfg.category2Yes value, and suppresses
---- categorisation if present but equal to anything other than cfg.category2Yes
---- or cfg.category2Negative.
-- cfg.category2 = 'category2'

---- cfg.subpage is the parameter name to specify how to behave on subpages.
-- cfg.subpage = 'subpage'

---- The parameter for data to return in all namespaces.
-- cfg.all = 'all'

---- The parameter name for data to return if no data is specified for the
---- namespace that is detected.
-- cfg.other = 'other'

---- The parameter name used to specify a page other than the current page; used
---- for testing and demonstration. This must be the same as the cfg.page
---- parameter in [[Module:Namespace detect]].
cfg.demopage = 'page'

--------------------------------------------------------------------------------
--                              Parameter values                              --
-- These are set values that can be used with certain parameters. Only one    --
-- value can be specified, like this:                                         --
--                                                                            --
-- cfg.foo = 'value name'                                                     --
--                                                                            --
-- These settings are optional. It is always possible to use the module       --
-- defaults instead.                                                          --
--------------------------------------------------------------------------------

---- The following settings are used with the cfg.category2 parameter. Setting
---- cfg.category2 to cfg.category2Yes skips the blacklist, and if cfg.category2
---- is present but equal to anything other than cfg.category2Yes or
---- cfg.category2Negative then it supresses cateogrisation.
-- cfg.category2Yes = 'yes'
-- cfg.category2Negative = '¬'

---- The following settings are used with the cfg.subpage parameter.
---- cfg.subpageNo is the value to specify to not categorise on subpages;
---- cfg.subpageOnly is the value to specify to only categorise on subpages.
-- cfg.subpageNo = 'no'
-- cfg.subpageOnly = 'only'

--------------------------------------------------------------------------------
--                                 Blacklist                                  --
-- The categorisation blacklist. Pages that match Lua patterns in this list   --
-- will not be categorised. (However, see the explanation of cfg.nocat,       --
-- cfg.categories and cfg.category2 for some exceptions.) If the namespace    --
-- name has a space in, it must be written with an underscore, e.g.           --
-- "Wikipedia_talk". Other parts of the title can have either underscores or  --
-- spaces.                                                                    --
--------------------------------------------------------------------------------

cfg.blacklist = {
	'^Main Page$', -- don't categorise the main page.

	-- Don't categorise the following pages or their subpages.
	'^Wikipedia:Cascade%-protected items$',
	'^Wikipedia:Cascade%-protected items/.*$',
	'^User:UBX$', -- The userbox "template" space.
	'^User:UBX/.*$',
	'^User_talk:UBX$',
	'^User_talk:UBX/.*$',

	-- Don't categorise subpages of these pages, but allow
	-- categorisation of the base page.
	'^Wikipedia:Template messages/.+$',

	-- Don't categorise User CSD logs or PROD logs.
	'^User:.*/[cC][sS][dD] ?[lL][oO][gG]',
	'^User:.*/[pP][rR][oO][dD] ?[lL][oO][gG]',

	-- Don't categorise archives.
	'/[aA]rchive',
	"^Wikipedia:Administrators' noticeboard/IncidentArchive",
	"^Wikipedia:Administrators' noticeboard/3RRArchive",
}

--------------------------------------------------------------------------------
--                           Default namespaces                               --
-- This is a table of namespaces to categorise by default. They should be in  --
-- the format of parameter names accepted by [[Module:Namespace detect]].     --
--------------------------------------------------------------------------------

cfg.defaultNamespaces = {
	'main',
	'file',
	'help',
	'category'
}

--------------------------------------------------------------------------------
--                           End configuration data                           --
--------------------------------------------------------------------------------

return cfg -- Don't edit this line.