local config = {}
--[[
* "Vecchi" parametri del Template:Software/Linguaggio associati all'elemento Wikidata
]]
config.languageSlugToWikidata = {
['action'] = 'Q343587',
['action!'] = 'Q343587',
['actionscript'] = 'Q234657',
['ada'] = 'Q154755',
['assembly'] = 'Q165436',
['bash'] = 'Q189248',
['basic'] = 'Q42979',
['c'] = 'Q15777',
['c++'] = 'Q2407',
['c ++'] = 'Q2407',
['cpp'] = 'Q2407',
['coffescript'] = 'Q1106819',
['css'] = 'Q46441',
['c#'] = 'Q2370',
['c #'] = 'Q2370',
['c sharp'] = 'Q2370',
['delphi'] = ',Q487378',
['embarcadero delphi']
= 'Q487378',
['erlang'] = 'Q334879',
['fortran'] = 'Q83303',
['go'] = 'Q37227',
['groovy'] = 'Q504453',
['haskell'] = 'Q34010',
['html'] = 'Q8811',
['html5'] = 'Q2053',
['java'] = 'Q251',
['javascript'] = 'Q2005',
['js'] = 'Q2005',
['lisp'] = 'Q132874',
['lua'] = 'Q207316',
['objective-c'] = 'Q188531',
['objective c'] = 'Q188531',
['object pascal'] = 'Q633894',
['pascal'] = 'Q81571',
['php'] = 'Q59',
['powershell'] = 'Q840410',
['perl'] = 'Q42478',
['pgsql'] = 'Q2044345',
['pl'] = 'Q2044345',
['pl-pgsql'] = 'Q2044345',
['pl/pgsql'] = 'Q2044345',
['python'] = 'Q28865',
['qml'] = 'Q961543',
['qt'] = 'Q201904',
['ruby'] = 'Q161053',
['scala'] = 'Q460584',
['scheme'] = 'Q187560',
['swift'] = 'Q17118377',
['tex'] = 'Q5301',
['tcl'] = 'Q5288',
['typescript'] = 'Q978185',
['vala'] = 'Q1138939',
['visual basic'] = 'Q2378',
['web'] = 'Q1141484',
['xul'] = 'Q726218'
}
--[[
* Per dare un po' di robustezza a questa configurazione su lungo termine.
*
* Per disabilitare la categoria impostare `cat` a false.
*
* @param cat string|false Il placeholder (%s) di "Categoria:Software in %s"
* @param free true|nil Ha la categoria per software libero?
* @param nonfree true|nil Ha la categoria per software proprietà?
* @param catf string|nil Categoria da mandare a sprintf
]]
local langcat = function(cat, free, nonfree)
return {
cat = cat,
free = free,
nonfree = nonfree
}
end
config.language = {
Q5289 = langcat('.NET' ),
Q343587 = langcat('Action!' ),
Q234657 = langcat(false ),
Q154755 = langcat('Ada' ),
Q165436 = langcat('Assembly' ),
Q189248 = langcat('Bash' ),
Q42979 = langcat('BASIC' ),
Q15777 = langcat('C', true, true),
Q2370 = langcat('C sharp', true, true),
Q2407 = langcat('C++', true, true),
Q1106819 = langcat('CoffeeScript' ),
Q46441 = langcat('CSS' ),
Q487378 = langcat('Delphi', true ),
Q334879 = langcat('Erlang' ),
Q83303 = langcat('Fortran' ),
Q37227 = langcat('Go' ),
Q504453 = langcat('Groovy' ),
Q34010 = langcat('Haskell' ),
Q8811 = langcat('HTML' ),
Q2053 = langcat('HTML5' ),
Q251 = langcat('Java', true ),
Q2005 = langcat('JavaScript', true ),
Q132874 = langcat('Lisp', true ),
Q207316 = langcat('Lua' ),
Q633894 = langcat('Object Pascal', true, true),
Q188531 = langcat('Objective-C', true ),
Q81571 = langcat('Pascal' ),
Q42478 = langcat('Perl', true ),
Q59 = langcat('PHP', true ),
Q2044345 = langcat('PL/pgSQL' ),
Q840410 = langcat('PowerShell' ),
Q28865 = langcat('Python', true ),
Q961543 = langcat('QML' ),
Q161053 = langcat('Ruby' ),
Q460584 = langcat('Scala' ),
Q187560 = langcat('Scheme' ),
Q17118377 = langcat('Swift' ),
Q5301 = langcat('TeX' ),
Q5288 = langcat('Tcl' ),
Q978185 = langcat('TypeScript' ),
Q726218 = langcat('XUL' ),
Q1138939 = langcat('Vala' ),
Q2378 = langcat('Visual Basic' ),
Q1141484 = langcat('WEB' ),
-- Toolkits:
Q189464 = langcat('GTK+', true ),
Q201904 = langcat('Qt', true, true),
Q310974 = langcat('ncurses' ),
Q284982 = langcat('wxWidgets' )
}
--[[
* Categoria:Software in licenza $1
* Vediamo se proseguire con questa configurazione o se fruire della proprietà Wikidata short name P1813
]]
config.licenseCategory = {
Q7603 = 'GNU GPL',
Q27126812 = 'GNU GPL v1',
Q27016750 = 'GNU GPL v1+',
Q10513450 = 'GNU GPL v2',
Q27016752 = 'GNU GPL v2+',
Q10513445 = 'GNU GPL v3',
Q27016754 = 'GNU GPL v3+',
Q192897 = 'GNU LGPL',
Q23035974 = 'GNU LGPL v2',
Q27016756 = 'GNU LGPL v2',
Q18534390 = 'GNU LGPL v2.1',
Q27016757 = 'GNU LGPL v2.1+',
Q18534393 = 'GNU LGPL v3',
Q27016762 = 'GNU LGPL v3+',
Q1131681 = 'GNU AGPL',
Q27017230 = 'GNU AGPL v1',
Q27017232 = 'GNU AGPL v3',
Q27020062 = 'GNU AGPL v3+',
Q616526 = 'Apache',
Q13785927 = 'Apache 2.0',
Q334661 = 'MIT',
Q308915 = 'MPL',
Q18526202 = 'X11',
Q191307 = 'BSD',
Q18517294 = 'BSD 2-clausole',
Q18491847 = 'BSD 3-clausole',
Q21503790 = 'BSD 4-clausole',
Q178285 = 'freeware',
-- Override di categorie minori da far (temporaneamente?) convergere:
Q27126812 = 'GNU GPL', -- GNU GPL v1
Q27016750 = 'GNU GPL', -- GNU GPL v1+
Q27017230 = 'GNU AGPL', -- GNU AGPL v1
Q27017232 = 'GNU AGPL', -- GNU AGPL v3
Q27020062 = 'GNU AGPL', -- GNU AGPL v3-
Q23035974 = 'GNU LGPL', -- GNU LGPL v2
Q27016756 = 'GNU LGPL', -- GNU LGPL v2+
Q18534390 = 'GNU LGPL', -- GNU LGPL v2.1
Q27016757 = 'GNU LGPL', -- GNU LGPL v2.1+
Q18534393 = 'GNU LGPL', -- GNU LGPL v3
Q27016762 = 'GNU LGPL', -- GNU LGPL v3+
Q18517294 = 'BSD', -- BSD 2-clausole
Q18491847 = 'BSD', -- BSD 3-clausole
Q21503790 = 'BSD', -- BSD 4-clausole
Q13785927 = 'Apache', -- Apache 2.0
Q18526202 = 'MIT' -- X11 License
}
--[[
* Categoria:Software $1
* Specificare le licenze che hanno una categorizzazione abbreviata.
]]
config.licenseCategoryShorter = {
Q178285 = 1 -- freeware
}
--[[
* Per dare un po' di robustezza a questa configurazione su lungo termine.
*
* Per disabilitare la categoria impostare `cat` a false.
*
* @param cat string|false Categoria e.g. "Elaboratori di formule"
* @param free bool|nil Ha la categoria per software libero?
* @param nonfree bool|nil Ha la categoria per software proprietario?
* @param catf string|nil Categoria più generica rispetto alla presupposta "Elaboratori di formule %s"
* @param sing bool|nil La categoria assume "libero" o "proprietario", invece che "liberi" o "proprietari"
* @param m bool|nil Genere maschile? Disabilitare per avere "libere" "proprietarie" invece che "liberi" o "proprietari"
]]
local genrecat = function(cat, free, nonfree, generic, catf, sing, m)
free = free == nil and true or free
nonfree = nonfree == nil and free or nonfree
return {
cat = cat,
free = free,
nonfree = nonfree,
catf = catf,
sing = sing,
m = m == nil and true or m
}
end
config.genre = {}
config.genre.cat = {
Q1200186 = genrecat('Software di accesso remoto'), -- remote desktop software
Q498267 = genrecat('Aggregatori di notizie'),
Q29051918 = genrecat('Ambienti di sviluppo di videogiochi'),
Q193564 = genrecat('Motori grafici'), -- game engine
missing = genrecat('Software per l\'analisi dei dati'),
missing = genrecat('Software per l\'analisi numerica'),
missing = genrecat('Antispyware'),
Q93249 = genrecat('Antivirus'),
Q877886 = genrecat('Archiviatori di file'), -- file archiver
Q2727468 = genrecat('Software per l\'automazione dello sviluppo'), -- automazione dello sviluppo
Q194274 = genrecat('Software di backup'), -- backup
Q8513 = genrecat('Software per basi di dati', nil, nil, 'Software %s per basi di dati' ), -- database
Q128570 = genrecat('Software per la bioinformatica', nil, false ), -- bioinformatic
Q226264 = genrecat('BIOS', nil, false),
Q836795 = genrecat('Boot loader'),
Q507703 = genrecat('Chatterbot', nil, false ), -- IRC bot
Q6368 = genrecat('Browser'),
Q26203752 = genrecat('Calcolatrici', nil, nil, nil, false),
Q180634 = genrecat('Software di calcolo distribuito'), -- calcolo distribuito
Q870780 = genrecat('Chatterbot', nil, false),
Q29156727 = genrecat('Software per la chimica', nil, false), -- cheminformatic software
Q21577192 = genrecat('Client BitTorrent'),
Q570871 = genrecat('Client di posta elettronica'),
Q1254596 = genrecat('Software per il cloud computing'), -- software as a service
Q47506 = genrecat('Compilatori'),
Q15614008 = genrecat('Software per la composizione tipografica'), -- typographic software
Q29157559 = genrecat('Software per la compressione dei dati'), -- compression software
Q1050567 = genrecat('Software CAE'), -- computer-aided engineering
Q1043936 = genrecat('Software CAPP'), -- computer-aided process planning
Q660192 = genrecat('Software CAM'), -- computer-aided manufacturing
Q150971 = genrecat('Software per computer grafica'), -- computer graphic
Q189177 = genrecat('Software per computer grafica 3D'), -- 3D computer graphics
Q751436 = genrecat('Software per la comunicazione tra processi', nil, false), -- inter-process communication
Q131093 = genrecat('Content management system'),
Q3257930 = genrecat('Software di controllo versione', nil, false),
Q5375622 = genrecat('Software per la crittografia'),
Q485643 = genrecat('Software per il customer relationship management'),
Q176165 = genrecat('Database management system'),
Q193231 = genrecat('Debugger'),
Q205020 = genrecat('Desktop environment'),
Q29364197 = genrecat('Software per desktop publishing'),
Q1138815 = genrecat('Desktop search'),
Q1060750 = genrecat('Software per il montaggio audio'),
Q831677 = genrecat('Document management system', nil, false),
Q131212 = genrecat('Editor di testo'),
Q726761 = genrecat('Editor HTML'),
Q1074158 = genrecat('Software per l\'educazione'), -- e-learning
-- Q2164323 = genrecat('Software per generare documentazione'),
Q29480132 = genrecat('Elaboratori di formule'),
Q2115026 = genrecat('Elaboratori di presentazioni'),
Q1070689 = genrecat('Software per l\'elaborazione digitale delle immagini'),
Q1194864 = genrecat('Software EDA'),
Q247423 = genrecat('Content management system'), -- IMPROPRIO! ARGHH!
Q131508 = genrecat('Software per enterprise resource planning'),
Q732970 = genrecat('File manager'),
Q104851 = genrecat('Firmware', nil, false),
Q183197 = genrecat('Fogli elettronici'),
Q168210 = genrecat('Software per forum', nil, false),
Q1330336 = genrecat('Framework per applicazioni web', nil, false),
Q907375 = genrecat('Framework di unit testing', nil, false),
Q1076785 = genrecat('Generatori di parser', nil, false),
Q483130 = genrecat('Geographic information system'),
Q565428 = genrecat('Gestore di download'),
Q860676 = genrecat('Gestore di immagini'),
Q24877948 = genrecat('Gestori di partizioni'),
Q1464880 = genrecat('Installer', nil, false),
Q13741 = genrecat('Ambienti di sviluppo'),
Q15590034 = genrecat('Software di interpolazione', nil, false), -- TODO: [[Discussioni categoria:Software di interpolazione]]
Q29642842 = genrecat('Software per la lettura di ebook', false, true),
Q29642875 = genrecat('Librerie C', false),
Q783866 = genrecat('Librerie JavaScript', false),
Q29642950 = genrecat('Librerie Python', false),
Q37045 = genrecat('Linguaggi di markup', true),
Q29643051 = genrecat('Software per la masterizzazione'),
Q210337 = genrecat('Lettori multimediali'),
Q4892352 = genrecat('Software per la messaggistica istantanea'),
Q1165574 = genrecat('Monitor di sistema'),
Q758870 = genrecat('Software per il montaggio audio'),
Q1373429 = genrecat('Software per montaggio video'),
Q193564 = genrecat('Motore grafico'),
Q1248874 = genrecat('Motori scacchistici'),
Q1324042 = genrecat('Newsreader'),
Q1088670 = genrecat('Software per P2P TV'),
Q161410 = genrecat('Software per peer-to-peer'),
Q1568118 = genrecat('Personal information manager'),
Q29645725 = genrecat('Software per printer spooler', true), -- TODO: [[Discussioni categoria:Software per printer spooler]]
Q64601 = genrecat('Software notazionali'),
Q29647057 = genrecat('Software per ray tracing', true, false),
Q3932296 = genrecat('RDBMS'),
Q167555 = genrecat('Software per il riconoscimento ottico dei caratteri')
}
config.genre.alias = {}
config.genre.alias.slug = {
['accesso remoto'] = 'Q1200186',
['aggregatore'] = 'Q498267',
['aggregatore di notizie'] = 'Q498267',
['sviluppo videogiochi'] = 'Q29051918',
['ambiente di sviluppo videogiochi'] = 'Q29051918',
['ambiente di sviluppo di videogiochi'] = 'Q29051918',
['analisi dati'] = nil,
['analisi dei dati'] = nil,
['analisi numerica'] = nil,
['calcolo numerico'] = nil,
['antispyware'] = nil,
['antivirus'] = 'Q93249',
['archiviazione'] = 'Q877886',
['archiviatore'] = 'Q877886',
['archiviatore di file'] = 'Q877886',
['automazione dello sviluppo'] = 'Q2727468',
['backup'] = 'Q194274',
['base dati'] = 'Q8513',
['base di dati'] = 'Q8513',
['basi di dati'] = 'Q8513',
['database'] = 'Q8513',
['bioinformatica'] = 'Q128570',
['bios'] = 'Q226264',
['boot loader'] = 'Q836795',
['bot irc'] = 'Q507703',
['browser'] = 'Q6368',
['cad'] = 'Q26203752',
['calcolatrice'] = 'Q7554269',
['calcolo distribuito'] = 'Q180634',
['chatterbot'] = 'Q870780',
['chemioinformatica'] = 'Q29156727',
['chimica'] = 'Q29156727',
['client di bittorrent'] = 'Q21577192',
['client bittorrent'] = 'Q21577192',
['posta elettronica'] = 'Q570871',
['client di posta'] = 'Q570871',
['cloud computing'] = 'Q1254596',
['compilatore'] = 'Q47506',
['composizione tipografica'] = 'Q15614008',
['compressione dei dati'] = 'Q29157559',
['compressione file'] = 'Q29157559',
['archiviazione file'] = 'Q29157559',
['computer-aided engineering'] = 'Q1050567',
['cae'] = 'Q1050567',
['computer-aided process planning'] = 'Q1043936',
['capp'] = 'Q1043936',
['computer-aided manufacturing'] = 'Q660192',
['cam'] = 'Q660192',
['computer grafica'] = 'Q150971',
['computer grafica 3d'] = 'Q189177',
['comunicazione tra processi'] = 'Q751436',
['content management system'] = 'Q131093',
['cms'] = 'Q131093',
['sistema di controllo versione'] = 'Q3257930',
['controllo versione'] = 'Q3257930',
['revision control'] = 'Q3257930',
['crittografia'] = 'Q5375622',
['customer relationship management'] = 'Q485643',
['crm'] = 'Q485643',
['database management system'] = 'Q176165',
['dbms'] = 'Q176165',
['debugger'] = 'Q193231',
['desktop environment'] = 'Q205020',
['ambiente desktop'] = 'Q205020',
['desktop publishing'] = 'Q29364197',
['dpt'] = 'Q29364197',
['desktop search'] = 'Q1138815',
['digital audio workstation'] = 'Q1060750',
['daw'] = 'Q1060750',
['document management system'] = 'Q831677',
['dbms'] = 'Q831677',
['editor di testo'] = 'Q131212',
['editor'] = 'Q131212',
['editor html'] = 'Q726761',
['editor web'] = 'Q726761',
['educazione'] = 'Q1074158',
['apprendimento'] = 'Q1074158',
['e-learning'] = 'Q1074158',
['edutainment'] = 'Q1153173',
['elaboratore di formule'] = 'Q29480132',
['elaboratore di presentazioni'] = 'Q2115026',
['presentazioni'] = 'Q2115026',
['elaborazione digitale delle immagini'] = 'Q1070689',
['elaborazione immagini'] = 'Q1070689',
['elaborazione delle immagini'] = 'Q1070689',
['electronic design automation'] = 'Q1194864',
['eda'] = 'Q1194864',
['enterprise content management'] = 'Q247423',
['enterprise resource planning'] = 'Q131508',
['pianificazione delle risorse d\'impresa'] = 'Q131508',
['erp'] = 'Q131508',
['firmware'] = 'Q104851',
['foglio elettronico'] = 'Q183197',
['spreadsheet'] = 'Q183197',
['foglio di calcolo'] = 'Q183197',
['forum'] = 'Q168210',
['web framework'] = 'Q1330336',
['framework di unit test'] = 'Q907375',
['framework di unit testing'] = 'Q907375',
['unit test'] = 'Q907375',
['unit testing'] = 'Q907375',
['generatore di parser'] = 'Q1076785',
['compiler-compiler'] = 'Q1076785',
['geographic information system'] = 'Q483130',
['gis'] = 'Q483130',
['gestore di download'] = 'Q565428',
['download manager'] = 'Q565428',
['gestore di immagini'] = 'Q860676',
['gestore foto'] = 'Q860676',
['gestore delle foto'] = 'Q860676',
['gestore delle immagini'] = 'Q860676',
['gestore di partizioni'] = 'Q24877948',
['installer'] = 'Q1464880',
['integrated development environment'] = 'Q13741',
['ambiente di sviluppo'] = 'Q13741',
['ambiente di sviluppo integrato'] = 'Q13741',
['ide'] = 'Q13741',
['interpolazione'] = 'Q15590034',
['ebook reader'] = 'Q29642842',
['lettore di ebook'] = 'Q29642842',
['libreria python'] = 'Q29642950',
['python'] = 'Q29642950',
['linguaggio di markup'] = 'Q37045',
['masterizzazione'] = 'Q29643051',
['lettore multimediale'] = 'Q210337',
['media player'] = 'Q210337',
['messaggistica istantanea'] = 'Q4892352',
['chat'] = 'Q4892352',
['instant messaging'] = 'Q4892352',
['instant messenger'] = 'Q4892352',
['monitor di sistema'] = 'Q1165574',
['system monitor'] = 'Q1165574',
['montaggio di audio digitale'] = 'Q758870',
['montaggio audio digitale'] = 'Q758870',
['editor di audio digitale'] = 'Q758870',
['editor di file audio'] = 'Q758870',
['montaggio video'] = 'Q1373429',
['video editing'] = 'Q1373429',
['motore grafico'] = 'Q193564',
['motore scacchistico'] = 'Q1248874',
['newsreader'] = 'Q1324042',
['newsclient'] = 'Q1324042',
['news client'] = 'Q1324042',
['p2p tv'] = 'Q1088670',
['peer-to-peer'] = 'Q161410',
['p2p'] = 'Q161410',
['peer 2 peer'] = 'Q161410',
['peer to peer'] = 'Q161410',
['file sharing'] = 'Q161410',
['personal information manager'] = 'Q1568118',
['printer spooler'] = 'Q29645725',
['programma notazionale'] = 'Q64601',
['software notazionale'] = 'Q64601',
['notazionale'] = 'Q64601',
['ray tracing'] = 'Q29647057',
['relational database management system'] = 'Q3932296',
['rdbms'] = 'Q3932296',
['ocr'] = 'Q167555',
['optical character recognition'] = 'Q167555',
['riconoscimento ottico dei caratteri'] = 'Q167555'
}
config.genre.alias.wd = {
Q1200186 = 'Q607297', -- remote desktop = remote desktop software
Q184793 = 'Q26203752', -- computer-aided design = computer-aided design software
Q15614005 = 'Q15614008', -- typesetting software = typographic software
Q29642901 = 'Q29642875', -- C header file = C library
Q1153173 = 'Q1074158', -- edutainment = e-learning
Q1388383 = 'Q29643051', -- optical disc authoring = optical disc authoring software
Q10417670 = 'Q4892352', -- IRC client = instant messaging client
Q287198 = 'Q4892352', -- online chat = instant messaging client
}
return config