Module:Category handler/config: Difference between revisions

Jump to navigation Jump to 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 17: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.