Module:Search
This module depends on the following other modules: |
Lua error in package.lua at line 80: module 'Module:Uses TemplateStyles/config' not found. Implements {{search}}
local p = {} local function urlencode(text) -- Return equivalent of {{urlencode:text}}. local function byte(char) return string.format('%%%02X', string.byte(char)) end return text:gsub('[^ %w%-._]', byte):gsub(' ', '+') end local function make_link(url, expansion, display_text, after) return mw.ustring.format( '[%s <abbr title="%s">%s</abbr>]%s', url, expansion, display_text, after or '' ) end function p.main(frame) local args = require('Module:Arguments').getArgs(frame, { wrappers = 'Template:Search' }) local search_phrase_encoded = urlencode(args[1] or 'example phrase') local short_module_args = { class = 'template-search plainlinks', make_link('https://simple.wikipedia.org/w/index.php?title=Special:Search&search=' .. search_phrase_encoded, 'Wikipedia', 'wp'), make_link('https://www.google.com/search?q=' .. search_phrase_encoded, 'Google', 'g'), make_link('https://www.bing.com/search?q=' .. search_phrase_encoded, 'Bing', 'b'), } local long_module_args = { class = 'template-search plainlinks', make_link('https://simple.wikipedia.org/w/index.php?title=Special:Search&search=' .. search_phrase_encoded, 'Wikipedia', 'wp'), make_link('https://www.google.com/search?q=site%3Awikipedia.org+' .. search_phrase_encoded, 'Wikipedia over Google', 'gwp'), make_link('https://www.google.com/search?q=' .. search_phrase_encoded, 'Google', 'g'), make_link('https://www.bing.com/search?q=site%3Awikipedia.org+' .. search_phrase_encoded, 'Wikipedia over Bing', 'bwp'), make_link('https://www.bing.com/search?q=' .. search_phrase_encoded, 'Bing', 'b', ' |'), make_link('https://www.britannica.com/search?nop&query=' .. search_phrase_encoded, 'Encyclopaedia Britannica', 'eb'), make_link('https://www.bartleby.com/cgi-bin/texis/webinator/65search?query=' .. search_phrase_encoded, 'Columbia Encyclopedia', 'co'), make_link('https://www.google.com/search?q=site%3Ahttp%3A%2F%2Fwww.pcmag.com%2Fencyclopedia_term%2F+' .. search_phrase_encoded, 'PC Magazine Encyclopedia over Google', 'gct'), make_link('https://scienceworld.wolfram.com/search/index.cgi?as_q=' .. search_phrase_encoded, 'World of Science', 'sw'), make_link('https://archive.org/search.php?query=' .. search_phrase_encoded, 'Internet Archive', 'arc'), make_link('https://babel.hathitrust.org/cgi/ls?field1=ocr;q1=' .. search_phrase_encoded .. ';a=srchls;lmt=ft', 'HathiTrust', 'ht'), } local long = (args.long or '') ~= '' local ubl = require('Module:List').unbulleted local list = ubl(long and long_module_args or short_module_args) return frame:extensionTag{ name = 'templatestyles', args = { src = 'Module:Search/styles.css' } } .. '(' .. list .. ')' end return p