Module:API info/util/github search

From Warcraft Watch Secrets
Revision as of 03:14, 23 August 2024 by imported>Ketho
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Documentation for this module may be created at Module:API info/util/github search/doc

local m = {}

-- case sensitive matching https://github.com/orgs/community/discussions/9759
local URL = "https://github.com/search?type=code&q=/(?-i)%s/"

-- https://docs.github.com/en/search-github/github-code-search/understanding-github-code-search-syntax
local params = {
	"language:Lua",
	"NOT+is:fork",

	-- filtering by owner because the search query does not have enough space for only blocking specific repos
	-- FrameXML
	"NOT+path:Interface",
	"NOT+path:FrameXML",
	"NOT+path:GlueXML",
	"NOT+path:SharedXML",
	"NOT+path:AddOns", -- filters out FrameXML Blizzard AddOns and user addon mirrors
	"NOT+repo:BigWigsMods/WoWUI",
	"NOT+owner:liquidbase", -- "NOT+repo:liquidbase/wowui-source"
	"NOT+owner:3kage", -- 3kage/wow-interface-addons-11.0.0.55120

	-- interface resources
	"NOT+owner:Ketho",
	"NOT+path:.luacheckrc",
	"NOT+repo:Resike/BlizzardInterfaceResources",
	"NOT+repo:mrbuds/wow-api-web",
	"NOT+owner:arkanoid1", -- "NOT+repo:arkanoid1/WowApi"
	"NOT+owner:refaim", -- refaim/Vanilla-WoW-Lua-Definitions
	"NOT+owner:clicketz", -- https://github.com/clicketz/files/blob/master/luacheckAdditions.lua

	-- dev tools
	"NOT+repo:Ellypse/IntelliJ-IDEA-Lua-IDE-WoW-API",
	"NOT+repo:ChrisKader/wowapi",
	"NOT+repo:nebularg/wow-selene-parser",
	"NOT+repo:Resike/LuaLSP",
	"NOT+owner:MrMartin92", -- "NOT+repo:MrMartin92/vscode-lua-wow"
	"NOT+repo:ketho-wow/KethoDoc",
	"NOT+path:data/impl", -- https://github.com/wowless/wowless/tree/main/data/impl

	-- libs
	"NOT+path:wow-api.lua", "NOT+path:wow-widget-api.lua", -- SDK for Lua IntelliJ Plugin
	"NOT+path:textentry.lua", -- Details Framework https://github.com/Tercioo/EnemyGrid/blob/master/libs/DF/textentry.lua

	-- luacats/emmylua
	"NOT+owner:papa-smurf", -- "NOT+repo:papa-smurf/Gargul"
	"NOT+owner:Bhahlou", -- "NOT+repo:Bhahlou/DahBooCustomizedGargul"
	"NOT+owner:nwpark", -- "NOT+repo:nwpark/WeakAuraGenerator"
	"NOT+owner:turulix", -- "NOT+repo:turulix/PPAutoMacro"
	"NOT+path:luaserver.lua", -- https://github.com/Tercioo/Details-Damage-Meter/blob/master/luaserver.lua
	"NOT+repo:QartemisT/WoW.luadoc",

	-- user addon mirrors
	-- "NOT+repo:Subwaytime/wow-addons",
	-- "NOT+repo:ZenonWow/addons-548",

	-- popular mirrors
	"(path:WeakAuras+AND+repo:WeakAuras/WeakAuras2+OR+NOT+path:WeakAuras)",
	"(path:ElvUI+AND+repo:tukui-org/ElvUI+OR+NOT+path:ElvUI)",
	"(NOT+path:DataStore)",
	 -- already at space limit
}

function m.main(f)
	local query = table.concat(params, "+")
	return URL.."+"..query
end

return m