Module:Studio debug: Difference between revisions
From PickiPedia: A knowledge base of bluegrass, old time psychedelic jams, and other public domain music
Jump to navigationJump to search
Test the extra printouts (via update-page on MediaWiki MCP Server) |
Isolate the licence lookup (via update-page on MediaWiki MCP Server) |
||
| Line 3: | Line 3: | ||
local p = {} | local p = {} | ||
local function | local function rows( frame ) | ||
local raw = frame:callParserFunction( "#ask", { | |||
"[[Has performer::Harry Clark]]", | |||
"?Has track name=track", | |||
"?Has track number=number", | |||
"?Has instrument=instrument", | |||
"mainlabel=record", | |||
"link=none", | |||
"searchlabel=", | |||
"limit=200", | |||
"format=plainlist", | |||
"sep=@@", | |||
"mainlabel=record", "link=none", "searchlabel=", "limit=200", | "template=Studio appearance row", | ||
"format=plainlist", "sep=@@", "template=Studio appearance row", | } ) | ||
} ) | raw = mw.text.unstrip( raw or "" ) | ||
raw = raw:gsub( "\127[^\127]*\127", "" ):gsub( "<[^>]+>", "" ) | |||
local record = raw:match( "^(.-)||" ) or "" | |||
return | return record:match( "^([^#]*)" ) or record | ||
end | end | ||
function p. | -- Query, then link. No licence lookup. | ||
local | function p.nolicence( frame ) | ||
return " | local record = rows( frame ) | ||
return '<div style="font-weight:600;">[[' .. record .. "]]</div>" | |||
end | end | ||
function p. | -- Query, then ask the record for its licence, then link. | ||
local | function p.withlicence( frame ) | ||
"?Has | local record = rows( frame ) | ||
local licence = frame:callParserFunction( "#show", { | |||
record, "?Has license", "link=none", "default=", | |||
} ) | } ) | ||
return " | licence = mw.text.unstrip( licence or "" ) | ||
licence = licence:gsub( "\127[^\127]*\127", "" ):gsub( "<[^>]+>", "" ) | |||
return '<div style="font-weight:600;">[[' .. record .. "]]</div> licence=[" .. licence .. "]" | |||
end | end | ||
return p | return p | ||
Revision as of 21:43, 17 September 2026
Documentation for this module may be created at Module:Studio debug/doc
-- Temporary. Delete once Module:Studio sessions is behaving.
local p = {}
local function rows( frame )
local raw = frame:callParserFunction( "#ask", {
"[[Has performer::Harry Clark]]",
"?Has track name=track",
"?Has track number=number",
"?Has instrument=instrument",
"mainlabel=record",
"link=none",
"searchlabel=",
"limit=200",
"format=plainlist",
"sep=@@",
"template=Studio appearance row",
} )
raw = mw.text.unstrip( raw or "" )
raw = raw:gsub( "\127[^\127]*\127", "" ):gsub( "<[^>]+>", "" )
local record = raw:match( "^(.-)||" ) or ""
return record:match( "^([^#]*)" ) or record
end
-- Query, then link. No licence lookup.
function p.nolicence( frame )
local record = rows( frame )
return '<div style="font-weight:600;">[[' .. record .. "]]</div>"
end
-- Query, then ask the record for its licence, then link.
function p.withlicence( frame )
local record = rows( frame )
local licence = frame:callParserFunction( "#show", {
record, "?Has license", "link=none", "default=",
} )
licence = mw.text.unstrip( licence or "" )
licence = licence:gsub( "\127[^\127]*\127", "" ):gsub( "<[^>]+>", "" )
return '<div style="font-weight:600;">[[' .. record .. "]]</div> licence=[" .. licence .. "]"
end
return p