Cleanup
This commit is contained in:
parent
d9e122f6d2
commit
57900be16e
308
CONTRIBUTORS
308
CONTRIBUTORS
|
@ -1,194 +1,174 @@
|
||||||
DEVELOPERS
|
danieloeh
|
||||||
==========
|
mfietz
|
||||||
|
TomHennen
|
||||||
Alan Orth
|
|
||||||
Alexander Terczka
|
|
||||||
Alexei Bendebury
|
|
||||||
Ali
|
|
||||||
alifeflow
|
|
||||||
alimemonzx
|
|
||||||
amhokies
|
|
||||||
Anders Bo Rasmussen
|
|
||||||
Anderson Mesquita
|
|
||||||
Andrew Gaul
|
|
||||||
Andrey Krutov
|
|
||||||
Anthony Lieuallen
|
|
||||||
axq
|
|
||||||
bhlee
|
|
||||||
Borjan Tchakaloff
|
|
||||||
brad
|
|
||||||
Brad Pitcher
|
|
||||||
Burt Wiley Snyder
|
|
||||||
ByteHamster
|
ByteHamster
|
||||||
Cameron Banga
|
orionlee
|
||||||
Christian Ludwig
|
domingos86
|
||||||
Christopher Szucko
|
andersonvom
|
||||||
Cj Malone
|
patheticpat
|
||||||
Colin Willson
|
spacecowboy
|
||||||
Cédric Cabessa
|
brad
|
||||||
damoasda
|
Cj-Malone
|
||||||
Danial Klimkin
|
gaul
|
||||||
Daniel Oeh
|
|
||||||
David Carver
|
|
||||||
David Reiss
|
|
||||||
Dean Brettle
|
|
||||||
dethstar
|
|
||||||
Dirk Mueller
|
|
||||||
Domingos Lopes
|
|
||||||
drabux
|
|
||||||
egsavage
|
|
||||||
EirikV
|
|
||||||
Eoin Mcloughlin
|
|
||||||
eraymond
|
|
||||||
Ercan Erden
|
|
||||||
falko
|
|
||||||
Falko Lehmann
|
|
||||||
Hannes Achleitner
|
|
||||||
hannesa2
|
|
||||||
Hanno Zulla
|
|
||||||
heckler01
|
|
||||||
Holger Jeromin
|
|
||||||
Humberto Fraga
|
|
||||||
InsidE
|
|
||||||
James Falcon
|
|
||||||
Jan Niehusmann
|
|
||||||
Jan-Peter von Hunnius
|
|
||||||
Jatin Kumar
|
|
||||||
Jens Klingenberg
|
|
||||||
Jens Müller
|
|
||||||
Joe Stein
|
|
||||||
Johan Liesén
|
|
||||||
Kaligule
|
|
||||||
Katrin Leinweber
|
|
||||||
Kevin Dalley
|
|
||||||
Koen Glotzbach
|
|
||||||
kroegerama
|
|
||||||
Kurian Vithayathil
|
|
||||||
LatinSuD
|
|
||||||
Lee Yeong Khang
|
|
||||||
lightonflux
|
|
||||||
ligi
|
|
||||||
Luis Cruz
|
|
||||||
Marc Lasson
|
|
||||||
Martin Fietz
|
|
||||||
Martin Olsson
|
|
||||||
mat tso
|
|
||||||
mateoeh
|
|
||||||
Matias de Andrea
|
|
||||||
Matthew Gaffen
|
|
||||||
Matthias Schütz
|
|
||||||
Matthieu De Beule
|
|
||||||
Maurice Gilden
|
|
||||||
Meir Schwarz
|
|
||||||
Michael Kaiser
|
|
||||||
Michael Scarito
|
|
||||||
Mike Chelen
|
|
||||||
minusf
|
|
||||||
MolarAmbiguity
|
|
||||||
Mostafa Ahangarha
|
|
||||||
Mounir Lamouri
|
|
||||||
mr-intj
|
|
||||||
Nathan Mascitelli
|
|
||||||
Nis Wechselberg
|
|
||||||
Oliver Crow
|
|
||||||
orelogo
|
|
||||||
pachecosf
|
|
||||||
Paul Ortyl
|
|
||||||
Petar Kukolj
|
|
||||||
qkolj
|
qkolj
|
||||||
Raghul
|
pachecosf
|
||||||
Raghul Jagannathan
|
ahangarha
|
||||||
recalculated
|
rharriso
|
||||||
rezanejati
|
xgouchet
|
||||||
Ross Harrison
|
damoasda
|
||||||
Sam Lee
|
|
||||||
Sam Whited
|
|
||||||
saqura
|
|
||||||
Selivanov Pavel
|
|
||||||
Serge
|
|
||||||
Seth Golub
|
|
||||||
sevenmaster
|
sevenmaster
|
||||||
Shantana Hardy
|
TheRealFalcon
|
||||||
Shinichiro Fujiwara
|
keunes
|
||||||
Simon Danner
|
shortspider
|
||||||
Simon Rutishauser
|
hannesa2
|
||||||
Simon Schubert
|
jas14
|
||||||
Soso Tughushi
|
udif
|
||||||
Spencer Visick
|
dirkmueller
|
||||||
Stefan Mitrik
|
jatinkumarg
|
||||||
Stephen Kitt
|
peschmae0
|
||||||
Terence Eden
|
orelogo
|
||||||
Tim Butram
|
|
||||||
Tobias Preuss
|
|
||||||
Tom Hennen
|
|
||||||
Tom Tom
|
|
||||||
tommy watson
|
|
||||||
tuxayo
|
|
||||||
twiceyuan
|
|
||||||
Udi Finkelstein
|
|
||||||
VarunBarad
|
|
||||||
volhol
|
|
||||||
Volker Hollich
|
|
||||||
Wagubi Brian
|
|
||||||
WangYun
|
|
||||||
William Seemann
|
|
||||||
ydinath
|
ydinath
|
||||||
|
CedricCabessa
|
||||||
|
mchelen
|
||||||
TRANSLATORS
|
johnjohndoe
|
||||||
===========
|
dethstar
|
||||||
|
drabux
|
||||||
|
saqura
|
||||||
|
bibz
|
||||||
|
hzulla
|
||||||
|
deandreamatias
|
||||||
|
MeirAtIMDDE
|
||||||
|
egsavage
|
||||||
|
ligi
|
||||||
|
dreiss
|
||||||
|
liesen
|
||||||
|
nereocystis
|
||||||
|
rezanejati
|
||||||
|
twiceyuan
|
||||||
|
HaBaLeS
|
||||||
|
volhol
|
||||||
|
CameronBanga
|
||||||
|
HolgerJeromin
|
||||||
|
xisberto
|
||||||
|
jmue
|
||||||
|
katrinleinweber
|
||||||
|
LatinSuD
|
||||||
|
24hours
|
||||||
|
SosoTughushi
|
||||||
|
fabolhak
|
||||||
|
archibishop
|
||||||
|
alifeflow
|
||||||
|
toggles
|
||||||
|
matdb
|
||||||
|
kingargyle
|
||||||
|
dsmith47
|
||||||
|
hannesaa2
|
||||||
|
jhunnius
|
||||||
|
ShadowIce
|
||||||
|
raghulj
|
||||||
|
raghulrm
|
||||||
|
stevomit
|
||||||
|
skitt
|
||||||
|
mr-intj
|
||||||
|
tuxayo
|
||||||
|
alimemonzx
|
||||||
|
alanorth
|
||||||
|
alexte
|
||||||
|
andrey-krutov
|
||||||
|
arantius
|
||||||
|
bws9000
|
||||||
|
chrissicool
|
||||||
|
cszucko
|
||||||
|
CWftw
|
||||||
|
danielm5
|
||||||
|
ariedov
|
||||||
|
brettle
|
||||||
|
eirikv
|
||||||
|
eerden
|
||||||
|
jannic
|
||||||
|
Foso
|
||||||
|
Kaligule
|
||||||
|
kvithayathil
|
||||||
|
luiscruz
|
||||||
|
mlasson
|
||||||
|
M-arcel
|
||||||
|
mo
|
||||||
|
mdeveloper20
|
||||||
|
mschuetz
|
||||||
|
MolarAmbiguity
|
||||||
|
mounirlamouri
|
||||||
|
ortylp
|
||||||
|
PtilopsisLeucotis
|
||||||
|
SamWhited
|
||||||
|
selivan
|
||||||
|
sonnayasomnambula
|
||||||
|
sethoscope
|
||||||
|
shantanahardy
|
||||||
|
mamehacker
|
||||||
|
danners
|
||||||
|
corecode
|
||||||
|
vimsick
|
||||||
|
edent
|
||||||
|
atrus6
|
||||||
|
waylife
|
||||||
|
wseemann
|
||||||
|
amhokies
|
||||||
|
axq
|
||||||
|
fossterer
|
||||||
|
lightonflux
|
||||||
|
minusf
|
||||||
Arabic: abdelrahman.fahem93, abdunnasir, abuzar3.khalid, desha, iDemo, mohamedagamy, msahouli, nabilMaghura
|
Arabic: abdelrahman.fahem93, abdunnasir, abuzar3.khalid, desha, iDemo, mohamedagamy, msahouli, nabilMaghura
|
||||||
Asturian (Spain): enolp
|
Asturian (ast_ES): enolp
|
||||||
Azerbaijani: danieloeh, kotfenix
|
Azerbaijani: danieloeh, kotfenix
|
||||||
|
Basque: gaztainalde, pospolos, zakurranputza
|
||||||
Bulgarian: solusitor
|
Bulgarian: solusitor
|
||||||
Catalan: dvd1985, exort12, javiercoll, lambdani, marcmetallextrem, xc70
|
Catalan: dvd1985, exort12, javiercoll, lambdani, marcmetallextrem, xc70
|
||||||
Catalan (Spain): 00c0c0, javiercoll
|
Catalan (ca_ES): 00c0c0, javiercoll
|
||||||
Chinese: dillonbecker, RainSlide, xukeek, yangyang
|
Chinese: dillonbecker, RainSlide, xukeek, yangyang
|
||||||
Chinese (China): bebeauties38, domingos86, dudeG, ErlichLiu, Felix2yu, gaohongyuan, Guaidaodl, Huck0, iconteral, JayYoung, jhxie, kavdx, kyleehee, linxiangyu, molisiye, owen8877, RainSlide, Sak94664, spice2wolf, stellaxuyi, tupunco, wi24rd, wongsyrone, xukeek, yangyang, yiqiok, YogaGuru
|
Chinese (zh_CN): bebeauties38, cyril3, domingos86, dudeG, ErlichLiu, Felix2yu, gaohongyuan, Guaidaodl, Huck0, iconteral, JayYoung, jhxie, kavdx, kyleehee, linxiangyu, molisiye, owen8877, RainSlide, Sak94664, spice2wolf, stellaxuyi, tupunco, wi24rd, wongsyrone, xukeek, yangyang, yiqiok, YogaGuru
|
||||||
Chinese (Taiwan): gugod, nigelinux, pggdt, ymhuang0808
|
Chinese (zh_TW): gugod, nigelinux, pggdt, Solomon, ymhuang0808
|
||||||
Czech (Czech Republic): elich, Hanzmeister, mcepl, petnek, svetlemodry
|
Czech (cs_CZ): anotheranonymoususer, elich, Hanzmeister, mcepl, petnek, svetlemodry
|
||||||
Danish: CasperHN, jhertel
|
Danish: CasperHN, jhertel
|
||||||
Dutch: e2jk, glotzbach, rwv, Vistaus
|
Dutch: e2jk, glotzbach, rwv, Vistaus
|
||||||
English: mfietz, sterylmreep
|
English: mfietz, sterylmreep
|
||||||
Estonian: Eraser
|
Estonian: Eraser
|
||||||
Finnish: danieloeh, elguitar, Sahtor
|
Finnish: danieloeh, elguitar, Sahtor
|
||||||
French: cactux, ChaoticMind, clombion, e2jk, lacouture, LouFex, Matth78, mfietz, Poussinou, PRIMOKORN, repat, Sioul, sterylmreep, TacoTheDank, Tilwa, vcariven, whenrow
|
French: cactux, ChaoticMind, clombion, e2jk, edewaele, lacouture, LouFex, Matth78, mfietz, Poussinou, repat, Sioul, sterylmreep, TacoTheDank, Tilwa, vcariven, whenrow
|
||||||
Galician: antiparvos, pikamoku, Raichely
|
Galician: antiparvos, pikamoku, Raichely
|
||||||
German: 112358, altegedanken, barilla, benedikt.g, bitsunited, Buggi, ceving, ChaoticMind, Chaquotay, dab0015, dadosch, DerSilly, die_otto, DJaeger, elkangaroo, enz, fidel, finsterwalder, Foso, GNi33, hightower5, HolgerJeromin, kalei, lohmann, LostInWeb, mfietz, moasda, nilso, repat, SAPlayer, schafia, Schroedingberg, sevenmaster, sucaml, Teaspoon, theonlytruth, weltenwort, Wyrrrd, ypid
|
German: 112358, altegedanken, barilla, benedikt.g, bitsunited, Buggi, ByteHamster, ceving, ChaoticMind, Chaquotay, dab0015, dadosch, DerSilly, die_otto, DJaeger, elkangaroo, enz, fidel, finsterwalder, Foso, GNi33, hightower5, HolgerJeromin, kalei, lohmann, LostInWeb, mfietz, moasda, nilso, repat, SAPlayer, schafia, Schroedingberg, sevenmaster, sucaml, Teaspoon, theonlytruth, weltenwort, Wyrrrd, ypid
|
||||||
Greek: antonist, danieloeh, hua2016s, MSavoritias, pavlosv
|
Modern Greek (1453-): antonist, danieloeh, hua2016s, jack.ath92, MSavoritias, pavlosv
|
||||||
Hebrew (Israel): amir.dafnyman, E1i9, mongoose4004, pinkasey, rellieberman, Yaron, הלוי11
|
Hebrew (he_IL): amir.dafnyman, E1i9, mongoose4004, pinkasey, rellieberman, Yaron, הלוי11
|
||||||
Hindi (India): ankitiitb1069, Isaasu, nmabhinandan, purple.coder, siddhusengar
|
Hindi (hi_IN): ankitiitb1069, Isaasu, nmabhinandan, purple.coder, siddhusengar
|
||||||
Hungarian: glatz.balazs, hurrikan, lna91, marthynw, naren93, tszauer, ttyborg42
|
Hungarian: glatz.balazs, hurrikan, lna91, marthynw, meskobalazs, naren93, tszauer, ttyborg42
|
||||||
Icelandic: marthjod
|
Icelandic: marthjod
|
||||||
Indonesian: jff, levirs565, luke137, rezafaiza, silvanael16
|
Indonesian: jff, levirs565, luke137, rezafaiza, silvanael16
|
||||||
Italian: aalex70, allin, apanontin, Bonnee, giuseppep, Guybrush88, marco_pag, neonsoftware, sevenmaster, theloca95
|
Italian: aalex70, allin, apanontin, Bonnee, giuseppep, Guybrush88, marco_pag, neonsoftware, sevenmaster, theloca95
|
||||||
Italian (Italy): aalex70, allin, apanontin, Bonnee, buongiorgio, giuseppep, Guybrush88, m.chinni, neonsoftware, niccord, nixxo, sevenmaster, theloca95
|
Italian (it_IT): aalex70, allin, apanontin, Bonnee, buongiorgio, giuseppep, Guybrush88, ilmanzo, m.chinni, neonsoftware, niccord, nixxo, sevenmaster, theloca95
|
||||||
Japanese: Naofumi, RACER1, sh3llc4t, TranslatorG
|
Japanese: Naofumi, RACER1, sh3llc4t, TranslatorG
|
||||||
Kannada (India): thejeshgn
|
Kannada (kn_IN): chiraag.nataraj, thejeshgn
|
||||||
Korean: changwoo, libliboom, seungrye, skcha
|
Korean: changwoo, libliboom, seungrye, skcha
|
||||||
Korean (South Korea): changwoo, seungrye
|
Korean (ko_KR): changwoo, seungrye
|
||||||
Lithuanian: naglis
|
Lithuanian: naglis
|
||||||
Macedonian: krisfremen
|
Macedonian: krisfremen
|
||||||
Malayalam: rashivkp, rubenroy
|
Malayalam: joice, rashivkp, rubenroy
|
||||||
Norwegian: timbast
|
Norwegian: timbast
|
||||||
Norwegian Bokmål: corkie, danieloeh, heraldo
|
Norwegian Bokmål: corkie, danieloeh, heraldo
|
||||||
Norwegian Bokmål (Norway): corkie, heraldo, kongk, timbast
|
Norwegian Bokmål (nb_NO): corkie, heraldo, kongk, timbast
|
||||||
Persian: ahangarha, F7D, sinamoghaddas
|
Persian: ahangarha, F7D, sinamoghaddas
|
||||||
Polish: Iwangelion, maniexx, mateossh, mfloryan
|
Polish: Iwangelion, maniexx, mateossh, mfloryan
|
||||||
Polish (Poland): d6210809, hiro2020, Iwangelion, lomapur, mandlus, maniexx, Mephistofeles, shark103, tyle
|
Polish (pl_PL): d6210809, hiro2020, Iwangelion, kRkk, lomapur, mandlus, maniexx, Mephistofeles, shark103, tyle
|
||||||
Portuguese: andersonvom, domingos86, emansije, smarquespt
|
Portuguese: andersonvom, domingos86, emansije, smarquespt
|
||||||
Portuguese (Brazil): alexupits, alysonborges, andersonvom, arua, caioau, carlo_valente, castrors, deandreamatias, edman, Firmino, jackmiras, Junin, lipefire, lluccia, lucasmotacr, mbaltar, rogervezaro, RubeensVinicius, SamWilliam, silvanael16
|
Portuguese (pt_BR): alexupits, alysonborges, andersonvom, arua, caioau, carlo_valente, castrors, deandreamatias, edman, Firmino, jackmiras, Junin, lipefire, lluccia, lucasmotacr, mbaltar, rogervezaro, RubeensVinicius, SamWilliam, silvanael16
|
||||||
Romanian (Romania): corneliu.e, fuzzmz, ralienpp
|
Romanian (ro_RO): corneliu.e, fuzzmz, ralienpp
|
||||||
Russian (Russia): astra1, btimofeev, Duke_Raven, gammja, GaynullinDima, MegMasters98, mercutiy, null, overmind88, PtilopsisLeucotis, s.chebotar, shams4real, skvheadless, un_logic, Vladryyu, whereisthetea, zhenya97
|
Russian (ru_RU): astra1, btimofeev, Duke_Raven, gammja, GaynullinDima, MegMasters98, mercutiy, null, overmind88, PtilopsisLeucotis, s.chebotar, shams4real, skvheadless, un_logic, Vladryyu, whereisthetea, zhenya97
|
||||||
Slovenian (Slovenia): panter23
|
Slovenian (sl_SI): panter23
|
||||||
Spanish: AleksSyntek, andersonvom, coperfix, deandreamatias, domingos86, dvd1985, Fitoschido, frandavid100, hard_ware, javiercoll, Juanmuto, lambdani, LatinSuD, leogrignafini, palopezv, TacoTheDank, tres.14159, wakutiteo
|
Spanish: AleksSyntek, andersonvom, Atreyu94, coperfix, deandreamatias, domingos86, dvd1985, Fitoschido, frandavid100, hard_ware, javiercoll, Juanmuto, lambdani, LatinSuD, leogrignafini, palopezv, TacoTheDank, tres.14159, wakutiteo
|
||||||
Spanish (Spain): andersonvom, dvd1985, e2jk, frandavid100, hard_ware, palopezv, Raichely, TacoTheDank
|
Spanish (es_ES): andersonvom, dvd1985, e2jk, frandavid100, hard_ware, palopezv, Raichely, TacoTheDank
|
||||||
Swahili: kmtra
|
Swahili (macrolanguage): kmtra
|
||||||
Swahili (Kenya): BonfaceKilz
|
Swahili (macrolanguage) (sw_KE): BonfaceKilz
|
||||||
Swedish (Sweden): albin.brantin, Bio, bpnilsson, ChaoticMind, jony08, nilso, SharpMelon, TiloWiklund, TwoD
|
Swedish (sv_SE): albin.brantin, Bio, bpnilsson, ChaoticMind, jony08, nilso, SharpMelon, TiloWiklund, TwoD
|
||||||
Telugu: Isaasu, veeven
|
Telugu: Isaasu, veeven
|
||||||
Turkish: basarancaner, brsata, Erdy, golcuk, overbite, Slsdem
|
Turkish: basarancaner, brsata, Erdy, golcuk, overbite, Slsdem
|
||||||
Ukrainian (Ukraine): older, paul_sm, sergiyr, zhenya97
|
Ukrainian (uk_UA): older, paul_sm, sergiyr, zhenya97
|
||||||
Vietnamese: abnvolk, nguyenvui, ppanhh, vietnamesel10n
|
Vietnamese: abnvolk, nguyenvui, ppanhh, vietnamesel10n
|
||||||
Vietnamese (Vietnam): bizover
|
Vietnamese (vi_VN): bizover
|
||||||
|
|
|
@ -187,18 +187,7 @@ if (project.hasProperty("antennaPodServiceAccountEmail")) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
task filterAbout(type: Copy) {
|
task copyLicense(type: Copy) {
|
||||||
from "src/main/templates/about.html"
|
|
||||||
into "src/main/assets"
|
|
||||||
filter(ReplaceTokens, tokens: [
|
|
||||||
versionname: android.defaultConfig.versionName,
|
|
||||||
commit : "git rev-parse --short HEAD".execute().text,
|
|
||||||
year : new Date().format('yyyy')])
|
|
||||||
outputs.upToDateWhen { false }
|
|
||||||
}
|
|
||||||
|
|
||||||
task copyTextFiles(type: Copy) {
|
|
||||||
from "../CONTRIBUTORS"
|
|
||||||
from "../LICENSE"
|
from "../LICENSE"
|
||||||
into "src/main/assets/"
|
into "src/main/assets/"
|
||||||
rename { String fileName ->
|
rename { String fileName ->
|
||||||
|
@ -207,5 +196,5 @@ task copyTextFiles(type: Copy) {
|
||||||
outputs.upToDateWhen { false }
|
outputs.upToDateWhen { false }
|
||||||
}
|
}
|
||||||
|
|
||||||
preBuild.dependsOn filterAbout, copyTextFiles
|
preBuild.dependsOn copyLicense
|
||||||
|
|
||||||
|
|
|
@ -127,8 +127,3 @@
|
||||||
-dontwarn java.lang.management.ManagementFactory
|
-dontwarn java.lang.management.ManagementFactory
|
||||||
-dontwarn java.lang.management.ThreadInfo
|
-dontwarn java.lang.management.ThreadInfo
|
||||||
-dontwarn java.lang.management.ThreadMXBean
|
-dontwarn java.lang.management.ThreadMXBean
|
||||||
|
|
||||||
# About screen teaser in html view
|
|
||||||
-keep class de.danoeh.antennapod**.R$drawable {
|
|
||||||
public int teaser;
|
|
||||||
}
|
|
||||||
|
|
|
@ -140,14 +140,6 @@
|
||||||
|
|
||||||
<activity android:name=".activity.StorageErrorActivity">
|
<activity android:name=".activity.StorageErrorActivity">
|
||||||
</activity>
|
</activity>
|
||||||
<activity
|
|
||||||
android:name=".activity.AboutActivity"
|
|
||||||
android:configChanges="keyboardHidden|orientation|screenSize"
|
|
||||||
android:label="@string/about_pref">
|
|
||||||
<meta-data
|
|
||||||
android:name="android.support.PARENT_ACTIVITY"
|
|
||||||
android:value="de.danoeh.antennapod.activity.PreferenceActivity"/>
|
|
||||||
</activity>
|
|
||||||
<activity
|
<activity
|
||||||
android:name=".activity.ImportExportActivity"
|
android:name=".activity.ImportExportActivity"
|
||||||
android:label="@string/import_export">
|
android:label="@string/import_export">
|
||||||
|
|
|
@ -16,7 +16,7 @@ Estonian;Eraser
|
||||||
Finnish;danieloeh, elguitar, Sahtor
|
Finnish;danieloeh, elguitar, Sahtor
|
||||||
French;cactux, ChaoticMind, clombion, e2jk, edewaele, lacouture, LouFex, Matth78, mfietz, Poussinou, repat, Sioul, sterylmreep, TacoTheDank, Tilwa, vcariven, whenrow
|
French;cactux, ChaoticMind, clombion, e2jk, edewaele, lacouture, LouFex, Matth78, mfietz, Poussinou, repat, Sioul, sterylmreep, TacoTheDank, Tilwa, vcariven, whenrow
|
||||||
Galician;antiparvos, pikamoku, Raichely
|
Galician;antiparvos, pikamoku, Raichely
|
||||||
German;112358, altegedanken, barilla, benedikt.g, bitsunited, Buggi, ceving, ChaoticMind, Chaquotay, dab0015, dadosch, DerSilly, die_otto, DJaeger, elkangaroo, enz, fidel, finsterwalder, Foso, GNi33, hightower5, HolgerJeromin, kalei, lohmann, LostInWeb, mfietz, moasda, nilso, repat, SAPlayer, schafia, Schroedingberg, sevenmaster, sucaml, Teaspoon, theonlytruth, weltenwort, Wyrrrd, ypid
|
German;112358, altegedanken, barilla, benedikt.g, bitsunited, Buggi, ByteHamster, ceving, ChaoticMind, Chaquotay, dab0015, dadosch, DerSilly, die_otto, DJaeger, elkangaroo, enz, fidel, finsterwalder, Foso, GNi33, hightower5, HolgerJeromin, kalei, lohmann, LostInWeb, mfietz, moasda, nilso, repat, SAPlayer, schafia, Schroedingberg, sevenmaster, sucaml, Teaspoon, theonlytruth, weltenwort, Wyrrrd, ypid
|
||||||
Modern Greek (1453-);antonist, danieloeh, hua2016s, jack.ath92, MSavoritias, pavlosv
|
Modern Greek (1453-);antonist, danieloeh, hua2016s, jack.ath92, MSavoritias, pavlosv
|
||||||
Hebrew (he_IL);amir.dafnyman, E1i9, mongoose4004, pinkasey, rellieberman, Yaron, הלוי11
|
Hebrew (he_IL);amir.dafnyman, E1i9, mongoose4004, pinkasey, rellieberman, Yaron, הלוי11
|
||||||
Hindi (hi_IN);ankitiitb1069, Isaasu, nmabhinandan, purple.coder, siddhusengar
|
Hindi (hi_IN);ankitiitb1069, Isaasu, nmabhinandan, purple.coder, siddhusengar
|
|
|
@ -1,158 +0,0 @@
|
||||||
package de.danoeh.antennapod.activity;
|
|
||||||
|
|
||||||
import android.content.res.TypedArray;
|
|
||||||
import android.graphics.Color;
|
|
||||||
import android.os.Build;
|
|
||||||
import android.os.Bundle;
|
|
||||||
import androidx.appcompat.app.AppCompatActivity;
|
|
||||||
import android.util.Log;
|
|
||||||
import android.view.MenuItem;
|
|
||||||
import android.view.View;
|
|
||||||
import android.webkit.WebSettings;
|
|
||||||
import android.webkit.WebView;
|
|
||||||
import android.webkit.WebViewClient;
|
|
||||||
import android.widget.LinearLayout;
|
|
||||||
|
|
||||||
import de.danoeh.antennapod.core.util.IntentUtils;
|
|
||||||
import org.apache.commons.io.IOUtils;
|
|
||||||
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.io.InputStream;
|
|
||||||
import java.nio.charset.Charset;
|
|
||||||
|
|
||||||
import de.danoeh.antennapod.R;
|
|
||||||
import de.danoeh.antennapod.core.preferences.UserPreferences;
|
|
||||||
import io.reactivex.Single;
|
|
||||||
import io.reactivex.android.schedulers.AndroidSchedulers;
|
|
||||||
import io.reactivex.disposables.Disposable;
|
|
||||||
import io.reactivex.schedulers.Schedulers;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Displays the 'about' screen
|
|
||||||
*/
|
|
||||||
public class AboutActivity extends AppCompatActivity {
|
|
||||||
|
|
||||||
private static final String TAG = AboutActivity.class.getSimpleName();
|
|
||||||
|
|
||||||
private WebView webView;
|
|
||||||
private LinearLayout webViewContainer;
|
|
||||||
private Disposable disposable;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
protected void onCreate(Bundle savedInstanceState) {
|
|
||||||
setTheme(UserPreferences.getTheme());
|
|
||||||
super.onCreate(savedInstanceState);
|
|
||||||
getSupportActionBar().setDisplayShowHomeEnabled(true);
|
|
||||||
setContentView(R.layout.about);
|
|
||||||
webViewContainer = findViewById(R.id.webViewContainer);
|
|
||||||
webView = findViewById(R.id.webViewAbout);
|
|
||||||
webView.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);
|
|
||||||
if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.ICE_CREAM_SANDWICH_MR1) {
|
|
||||||
webView.setLayerType(View.LAYER_TYPE_SOFTWARE, null);
|
|
||||||
}
|
|
||||||
webView.setBackgroundColor(Color.TRANSPARENT);
|
|
||||||
webView.setWebViewClient(new WebViewClient() {
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean shouldOverrideUrlLoading(WebView view, String url) {
|
|
||||||
if (url.startsWith("http")) {
|
|
||||||
IntentUtils.openInBrowser(AboutActivity.this, url);
|
|
||||||
return true;
|
|
||||||
} else {
|
|
||||||
url = url.replace("file:///android_asset/", "");
|
|
||||||
loadAsset(url);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
});
|
|
||||||
loadAsset("about.html");
|
|
||||||
}
|
|
||||||
|
|
||||||
private void loadAsset(String filename) {
|
|
||||||
disposable = Single.create(subscriber -> {
|
|
||||||
InputStream input = null;
|
|
||||||
try {
|
|
||||||
TypedArray res = AboutActivity.this.getTheme().obtainStyledAttributes(
|
|
||||||
new int[] { R.attr.about_screen_font_color, R.attr.about_screen_background,
|
|
||||||
R.attr.about_screen_card_background, R.attr.about_screen_card_border});
|
|
||||||
String fontColor = String.format("#%06X", 0xFFFFFF & res.getColor(0, 0));
|
|
||||||
String backgroundColor = String.format("#%06X", 0xFFFFFF & res.getColor(1, 0));
|
|
||||||
String cardBackground = String.format("#%06X", 0xFFFFFF & res.getColor(2, 0));
|
|
||||||
String cardBorder = String.format("#%06X", 0xFFFFFF & res.getColor(3, 0));
|
|
||||||
res.recycle();
|
|
||||||
input = getAssets().open(filename);
|
|
||||||
String webViewData = IOUtils.toString(input, Charset.defaultCharset());
|
|
||||||
if (!webViewData.startsWith("<!DOCTYPE html>")) {
|
|
||||||
webViewData = webViewData.replace("%", "%");
|
|
||||||
webViewData =
|
|
||||||
"<!DOCTYPE html>" +
|
|
||||||
"<html>" +
|
|
||||||
"<head>" +
|
|
||||||
" <meta http-equiv=\"Content-Type\" content=\"text/html;charset=UTF-8\">" +
|
|
||||||
" <style type=\"text/css\">" +
|
|
||||||
" @font-face {" +
|
|
||||||
" font-family: 'Roboto-Light';" +
|
|
||||||
" src: url('file:///android_asset/Roboto-Light.ttf');" +
|
|
||||||
" }" +
|
|
||||||
" * {" +
|
|
||||||
" color: @fontcolor@;" +
|
|
||||||
" font-family: roboto-Light;" +
|
|
||||||
" font-size: 8pt;" +
|
|
||||||
" }" +
|
|
||||||
" </style>" +
|
|
||||||
"</head><body><p>" + webViewData + "</p></body></html>";
|
|
||||||
webViewData = webViewData.replace("\n", "<br/>");
|
|
||||||
}
|
|
||||||
webViewData = webViewData.replace("@fontcolor@", fontColor);
|
|
||||||
webViewData = webViewData.replace("@background@", backgroundColor);
|
|
||||||
webViewData = webViewData.replace("@card_background@", cardBackground);
|
|
||||||
webViewData = webViewData.replace("@card_border@", cardBorder);
|
|
||||||
subscriber.onSuccess(webViewData);
|
|
||||||
} catch (IOException e) {
|
|
||||||
Log.e(TAG, Log.getStackTraceString(e));
|
|
||||||
subscriber.onError(e);
|
|
||||||
} finally {
|
|
||||||
IOUtils.closeQuietly(input);
|
|
||||||
}
|
|
||||||
})
|
|
||||||
.subscribeOn(Schedulers.io())
|
|
||||||
.observeOn(AndroidSchedulers.mainThread())
|
|
||||||
.subscribe(
|
|
||||||
webViewData ->
|
|
||||||
webView.loadDataWithBaseURL("file:///android_asset/", webViewData.toString(), "text/html", "utf-8", "file:///android_asset/" + filename.toString()),
|
|
||||||
error -> Log.e(TAG, Log.getStackTraceString(error))
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onBackPressed() {
|
|
||||||
if (webView.canGoBack()) {
|
|
||||||
webView.goBack();
|
|
||||||
} else {
|
|
||||||
super.onBackPressed();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean onOptionsItemSelected(MenuItem item) {
|
|
||||||
if (item.getItemId() == android.R.id.home) {
|
|
||||||
onBackPressed();
|
|
||||||
return true;
|
|
||||||
} else {
|
|
||||||
return super.onOptionsItemSelected(item);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
protected void onDestroy() {
|
|
||||||
super.onDestroy();
|
|
||||||
if (disposable != null) {
|
|
||||||
disposable.dispose();
|
|
||||||
}
|
|
||||||
if (webViewContainer != null && webView != null) {
|
|
||||||
webViewContainer.removeAllViews();
|
|
||||||
webView.destroy();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -31,7 +31,7 @@ public class AboutDevelopersFragment extends ListFragment {
|
||||||
developersLoader = Single.create((SingleOnSubscribe<ArrayList<SimpleIconListAdapter.ListItem>>) emitter -> {
|
developersLoader = Single.create((SingleOnSubscribe<ArrayList<SimpleIconListAdapter.ListItem>>) emitter -> {
|
||||||
ArrayList<SimpleIconListAdapter.ListItem> developers = new ArrayList<>();
|
ArrayList<SimpleIconListAdapter.ListItem> developers = new ArrayList<>();
|
||||||
BufferedReader reader = new BufferedReader(new InputStreamReader(
|
BufferedReader reader = new BufferedReader(new InputStreamReader(
|
||||||
getContext().getAssets().open("developers.txt")));
|
getContext().getAssets().open("developers.csv")));
|
||||||
String line;
|
String line;
|
||||||
while ((line = reader.readLine()) != null) {
|
while ((line = reader.readLine()) != null) {
|
||||||
String[] info = line.split(";");
|
String[] info = line.split(";");
|
||||||
|
|
|
@ -31,7 +31,7 @@ public class AboutTranslatorsFragment extends ListFragment {
|
||||||
translatorsLoader = Single.create((SingleOnSubscribe<ArrayList<SimpleIconListAdapter.ListItem>>) emitter -> {
|
translatorsLoader = Single.create((SingleOnSubscribe<ArrayList<SimpleIconListAdapter.ListItem>>) emitter -> {
|
||||||
ArrayList<SimpleIconListAdapter.ListItem> translators = new ArrayList<>();
|
ArrayList<SimpleIconListAdapter.ListItem> translators = new ArrayList<>();
|
||||||
BufferedReader reader = new BufferedReader(new InputStreamReader(
|
BufferedReader reader = new BufferedReader(new InputStreamReader(
|
||||||
getContext().getAssets().open("translators.txt")));
|
getContext().getAssets().open("translators.csv")));
|
||||||
String line;
|
String line;
|
||||||
while ((line = reader.readLine()) != null) {
|
while ((line = reader.readLine()) != null) {
|
||||||
String[] info = line.split(";");
|
String[] info = line.split(";");
|
||||||
|
|
|
@ -7,7 +7,6 @@ import androidx.preference.PreferenceFragmentCompat;
|
||||||
import com.bytehamster.lib.preferencesearch.SearchConfiguration;
|
import com.bytehamster.lib.preferencesearch.SearchConfiguration;
|
||||||
import com.bytehamster.lib.preferencesearch.SearchPreference;
|
import com.bytehamster.lib.preferencesearch.SearchPreference;
|
||||||
import de.danoeh.antennapod.R;
|
import de.danoeh.antennapod.R;
|
||||||
import de.danoeh.antennapod.activity.AboutActivity;
|
|
||||||
import de.danoeh.antennapod.activity.BugReportActivity;
|
import de.danoeh.antennapod.activity.BugReportActivity;
|
||||||
import de.danoeh.antennapod.activity.PreferenceActivity;
|
import de.danoeh.antennapod.activity.PreferenceActivity;
|
||||||
import de.danoeh.antennapod.core.util.IntentUtils;
|
import de.danoeh.antennapod.core.util.IntentUtils;
|
||||||
|
|
|
@ -1,183 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
|
|
||||||
<style type="text/css">
|
|
||||||
|
|
||||||
@font-face {
|
|
||||||
font-family: 'Roboto-Light';
|
|
||||||
src: url('file:///android_asset/Roboto-Light.ttf');
|
|
||||||
}
|
|
||||||
|
|
||||||
html, body {
|
|
||||||
background: @background@;
|
|
||||||
margin: 0;
|
|
||||||
padding: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
* {
|
|
||||||
color: @fontcolor@;
|
|
||||||
font-family: roboto-Light;
|
|
||||||
font-size: 12pt;
|
|
||||||
}
|
|
||||||
|
|
||||||
img#logo {
|
|
||||||
display: block;
|
|
||||||
margin-left: auto;
|
|
||||||
margin-right: auto;
|
|
||||||
max-height: 200px;
|
|
||||||
max-height: 50vh;
|
|
||||||
max-width: 100%;
|
|
||||||
height: auto;
|
|
||||||
width: auto;
|
|
||||||
}
|
|
||||||
|
|
||||||
div#logobackground{
|
|
||||||
width: 100%;
|
|
||||||
background: #42a5f5;
|
|
||||||
}
|
|
||||||
|
|
||||||
.card {
|
|
||||||
background: @card_background@;
|
|
||||||
margin: 10px;
|
|
||||||
padding: 10px;
|
|
||||||
border: 1px solid @card_border@;
|
|
||||||
border-top-width: 0;
|
|
||||||
border-bottom-width: 2px;
|
|
||||||
}
|
|
||||||
|
|
||||||
h1 {
|
|
||||||
font-size: 15pt;
|
|
||||||
margin-left: 20px;
|
|
||||||
}
|
|
||||||
|
|
||||||
h2 {
|
|
||||||
font-size: 13pt;
|
|
||||||
margin-top: 0px;
|
|
||||||
}
|
|
||||||
|
|
||||||
a {
|
|
||||||
font-size: 14px;
|
|
||||||
color: #00A8DF;
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
</style>
|
|
||||||
<title>About AntennaPod</title>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<div id="logobackground">
|
|
||||||
<img id="logo" src="file:///android_res/drawable/teaser.png" alt="Logo"/>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<h1>AntennaPod</h1>
|
|
||||||
|
|
||||||
<div class="card">
|
|
||||||
<table>
|
|
||||||
<tr><td>Version:</td><td><b>@versionname@</b></td></tr>
|
|
||||||
<tr><td>Commit:</td><td><b>@commit@</b></td></tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="card">
|
|
||||||
Created by Daniel Oeh<br />
|
|
||||||
Copyright © 2012-@year@<br />
|
|
||||||
AntennaPod Contributors <a href="CONTRIBUTORS.txt">(View)</a><br />
|
|
||||||
Licensed under the MIT License <a href="LICENSE.txt">(View)</a><br />
|
|
||||||
Privacy Policy <a href="https://antennapod.org/privacy.html">(View)</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<h1>Used libraries</h1>
|
|
||||||
|
|
||||||
<div class="card">
|
|
||||||
<h2>Apache Commons <a href="http://commons.apache.org/">(Link)</a></h2>
|
|
||||||
by The Apache Software Foundation, licensed under the Apache 2.0 license <a href="LICENSE_APACHE-2.0.txt">(View)</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="card">
|
|
||||||
<h2>EventBus <a href="https://github.com/greenrobot/EventBus">(Link)</a></h2>
|
|
||||||
by greenrobot, licensed under the Apache 2.0 license <a href="LICENSE_APACHE-2.0.txt">(View)</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="card">
|
|
||||||
<h2>ExoPlayer <a href="https://github.com/google/ExoPlayer">(Link)</a></h2>
|
|
||||||
by Google, licensed under the Apache 2.0 license <a href="LICENSE_APACHE-2.0.txt">(View)</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="card">
|
|
||||||
<h2>Floating Action Button Speed Dial <a href="https://github.com/leinardi/FloatingActionButtonSpeedDial">(Link)</a></h2>
|
|
||||||
by Roberto Leinardi, licensed under the Apache 2.0 license <a href="LICENSE_APACHE-2.0.txt">(View)</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="card">
|
|
||||||
<h2>Glide <a href="https://github.com/bumptech/glide/">(Link)</a></h2>
|
|
||||||
licensed under the Simplified BSD license <a href="LICENSE_GLIDE.txt">(View)</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="card">
|
|
||||||
<h2>Iconify <a href="https://github.com/JoanZapata/android-iconify">(Link)</a></h2>
|
|
||||||
by Joan Zapata, licensed under the Apache 2.0 license <a href="LICENSE_ANDROID_ICONIFY.txt">(View)</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="card">
|
|
||||||
<h2>jsoup <a href="http://jsoup.org/">(Link)</a></h2>
|
|
||||||
licensed under the MIT license <a href="LICENSE_JSOUP.txt">(View)</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="card">
|
|
||||||
<h2>Material Design Icons <a href="https://github.com/google/material-design-icons">(Link)</a></h2>
|
|
||||||
by Google, licensed under an Attribution-ShareAlike 4.0 International license <a href="LICENSE_MATERIAL_DESIGN_ICONS.txt">(View)</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="card">
|
|
||||||
<h2>Material Design Icons <a href="https://github.com/Templarian/MaterialDesign">(Link)</a></h2>
|
|
||||||
by Templarian, licensed under the SIL Open Font License, Version 1.1 <a href="LICENSE_SIL.txt">(View)</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="card">
|
|
||||||
<h2>Material Dialogs <a href="https://github.com/afollestad/material-dialogs">(Link)</a></h2>
|
|
||||||
by Aidan Michael Follestad, licensed under the MIT License <a href="LICENSE_MATERIAL_DIALOGS.txt">(View)</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="card">
|
|
||||||
<h2>OkHttp <a href="https://github.com/square/okhttp">(Link)</a></h2>
|
|
||||||
by Square, licensed under the Apache 2.0 license <a href="LICENSE_OKHTTP.txt">(View)</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="card">
|
|
||||||
<h2>Okio <a href="https://github.com/square/okio">(Link)</a></h2>
|
|
||||||
by Square, licensed under the Apache 2.0 license <a href="LICENSE_APACHE-2.0.txt">(View)</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="card">
|
|
||||||
<h2>Presto Client <a href="http://www.aocate.com/presto/">(Link)</a></h2>
|
|
||||||
licensed under the Apache 2.0 license <a href="LICENSE_PRESTO.txt">(View)</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="card">
|
|
||||||
<h2>RecyclerView-FlexibleDivider <a href="https://github.com/yqritc/RecyclerView-FlexibleDivider">(Link)</a></h2>
|
|
||||||
licensed under the Apache 2.0 license <a href="LICENSE_APACHE-2.0.txt">(View)</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="card">
|
|
||||||
<h2>RxAndroid <a href="https://github.com/ReactiveX/RxAndroid">(Link)</a></h2>
|
|
||||||
licensed under the Apache 2.0 license <a href="LICENSE_APACHE-2.0.txt">(View)</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="card">
|
|
||||||
<h2>StackBlur <a href="https://github.com/kikoso/android-stackblur">(Link)</a></h2>
|
|
||||||
by Enrique López Mañas, licensed under the Apache 2.0 license <a href="LICENSE_APACHE-2.0.txt">(View)</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="card">
|
|
||||||
<h2>Triangle Label View <a href="https://github.com/shts/TriangleLabelView">(Link)</a></h2>
|
|
||||||
by Shota Saito, licensed under the Apache 2.0 license <a href="LICENSE_TRIANGLE_LABEL_VIEW.txt">(View)</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="card">
|
|
||||||
<h2>AntennaPod-AudioPlayer <a href="https://github.com/AntennaPod/AntennaPod-AudioPlayer/">(Link)</a></h2>
|
|
||||||
by the AntennaPod team, licensed under the Apache 2.0 license <a href="LICENSE_APACHE-2.0.txt">(View)</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,471 +0,0 @@
|
||||||
#!/usr/bin/env python3
|
|
||||||
import requests
|
|
||||||
import subprocess
|
|
||||||
import configparser
|
|
||||||
import os
|
|
||||||
|
|
||||||
config = configparser.ConfigParser()
|
|
||||||
config.read(os.path.expanduser("~") + '/.transifexrc')
|
|
||||||
if 'https://www.transifex.com' in config:
|
|
||||||
TRANSIFEX_USER = config['https://www.transifex.com']['username']
|
|
||||||
TRANSIFEX_PW = config['https://www.transifex.com']['password']
|
|
||||||
else:
|
|
||||||
TRANSIFEX_USER = ""
|
|
||||||
TRANSIFEX_PW = ""
|
|
||||||
|
|
||||||
print('DEVELOPERS\n==========\n')
|
|
||||||
p = subprocess.Popen("git log --format='%aN' --no-merges "
|
|
||||||
+"| grep -v '@' " # No email adresses
|
|
||||||
+"| grep -v 'no.reply' " # no.reply
|
|
||||||
+"| sed -e 's/^\(Daniel\|daniel oeh\|danieloeh\)$/Daniel Oeh/I'" # Duplicate name
|
|
||||||
+"| sed -e 's/^keunes$/Koen Glotzbach/'" # Duplicate name
|
|
||||||
+"| sed -e 's/^H. Lehmann$/ByteHamster/'" # Duplicate name
|
|
||||||
+"| sed -e 's/^domingos86$/Domingos Lopes/'" # Duplicate name
|
|
||||||
+"| sed -e 's/^orionlee$/Sam Lee/'" # Duplicate name
|
|
||||||
+"| sort -fu", shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
|
|
||||||
for line in p.stdout.readlines():
|
|
||||||
output = line.decode()
|
|
||||||
print(output, end='')
|
|
||||||
|
|
||||||
language_codes = {
|
|
||||||
"af_NA": "Afrikaans (Namibia)",
|
|
||||||
"af_ZA": "Afrikaans (South Africa)",
|
|
||||||
"af": "Afrikaans",
|
|
||||||
"ak_GH": "Akan (Ghana)",
|
|
||||||
"ak": "Akan",
|
|
||||||
"ast_ES": "Asturian (Spain)",
|
|
||||||
"sq_AL": "Albanian (Albania)",
|
|
||||||
"sq": "Albanian",
|
|
||||||
"am_ET": "Amharic (Ethiopia)",
|
|
||||||
"am": "Amharic",
|
|
||||||
"ar_DZ": "Arabic (Algeria)",
|
|
||||||
"ar_BH": "Arabic (Bahrain)",
|
|
||||||
"ar_EG": "Arabic (Egypt)",
|
|
||||||
"ar_IQ": "Arabic (Iraq)",
|
|
||||||
"ar_JO": "Arabic (Jordan)",
|
|
||||||
"ar_KW": "Arabic (Kuwait)",
|
|
||||||
"ar_LB": "Arabic (Lebanon)",
|
|
||||||
"ar_LY": "Arabic (Libya)",
|
|
||||||
"ar_MA": "Arabic (Morocco)",
|
|
||||||
"ar_OM": "Arabic (Oman)",
|
|
||||||
"ar_QA": "Arabic (Qatar)",
|
|
||||||
"ar_SA": "Arabic (Saudi Arabia)",
|
|
||||||
"ar_SD": "Arabic (Sudan)",
|
|
||||||
"ar_SY": "Arabic (Syria)",
|
|
||||||
"ar_TN": "Arabic (Tunisia)",
|
|
||||||
"ar_AE": "Arabic (United Arab Emirates)",
|
|
||||||
"ar_YE": "Arabic (Yemen)",
|
|
||||||
"ar": "Arabic",
|
|
||||||
"hy_AM": "Armenian (Armenia)",
|
|
||||||
"hy": "Armenian",
|
|
||||||
"as_IN": "Assamese (India)",
|
|
||||||
"as": "Assamese",
|
|
||||||
"asa_TZ": "Asu (Tanzania)",
|
|
||||||
"asa": "Asu",
|
|
||||||
"az_Cyrl": "Azerbaijani (Cyrillic)",
|
|
||||||
"az_Cyrl_AZ": "Azerbaijani (Cyrillic, Azerbaijan)",
|
|
||||||
"az_Latn": "Azerbaijani (Latin)",
|
|
||||||
"az_Latn_AZ": "Azerbaijani (Latin, Azerbaijan)",
|
|
||||||
"az": "Azerbaijani",
|
|
||||||
"bm_ML": "Bambara (Mali)",
|
|
||||||
"bm": "Bambara",
|
|
||||||
"eu_ES": "Basque (Spain)",
|
|
||||||
"eu": "Basque",
|
|
||||||
"be_BY": "Belarusian (Belarus)",
|
|
||||||
"be": "Belarusian",
|
|
||||||
"bem_ZM": "Bemba (Zambia)",
|
|
||||||
"bem": "Bemba",
|
|
||||||
"bez_TZ": "Bena (Tanzania)",
|
|
||||||
"bez": "Bena",
|
|
||||||
"bn_BD": "Bengali (Bangladesh)",
|
|
||||||
"bn_IN": "Bengali (India)",
|
|
||||||
"bn": "Bengali",
|
|
||||||
"bs_BA": "Bosnian (Bosnia and Herzegovina)",
|
|
||||||
"bs": "Bosnian",
|
|
||||||
"bg_BG": "Bulgarian (Bulgaria)",
|
|
||||||
"bg": "Bulgarian",
|
|
||||||
"my_MM": "Burmese (Myanmar [Burma])",
|
|
||||||
"my": "Burmese",
|
|
||||||
"ca_ES": "Catalan (Spain)",
|
|
||||||
"ca": "Catalan",
|
|
||||||
"tzm_Latn": "Central Morocco Tamazight (Latin)",
|
|
||||||
"tzm_Latn_MA": "Central Morocco Tamazight (Latin, Morocco)",
|
|
||||||
"tzm": "Central Morocco Tamazight",
|
|
||||||
"chr_US": "Cherokee (United States)",
|
|
||||||
"chr": "Cherokee",
|
|
||||||
"cgg_UG": "Chiga (Uganda)",
|
|
||||||
"cgg": "Chiga",
|
|
||||||
"zh": "Chinese (Simplified)",
|
|
||||||
"zh_CN": "Chinese (China)",
|
|
||||||
"zh_HK": "Chinese (Hong Kong SAR China)",
|
|
||||||
"zh_MO": "Chinese (Macau SAR China)",
|
|
||||||
"zh_MO_SG": "Chinese (Singapore)",
|
|
||||||
"zh_TW": "Chinese (Taiwan)",
|
|
||||||
"zh": "Chinese",
|
|
||||||
"kw_GB": "Cornish (United Kingdom)",
|
|
||||||
"kw": "Cornish",
|
|
||||||
"hr_HR": "Croatian (Croatia)",
|
|
||||||
"hr": "Croatian",
|
|
||||||
"cs_CZ": "Czech (Czech Republic)",
|
|
||||||
"cs": "Czech",
|
|
||||||
"da_DK": "Danish (Denmark)",
|
|
||||||
"da": "Danish",
|
|
||||||
"nl_BE": "Dutch (Belgium)",
|
|
||||||
"nl_NL": "Dutch (Netherlands)",
|
|
||||||
"nl": "Dutch",
|
|
||||||
"ebu_KE": "Embu (Kenya)",
|
|
||||||
"ebu": "Embu",
|
|
||||||
"en_AS": "English (American Samoa)",
|
|
||||||
"en_AU": "English (Australia)",
|
|
||||||
"en_BE": "English (Belgium)",
|
|
||||||
"en_BZ": "English (Belize)",
|
|
||||||
"en_BW": "English (Botswana)",
|
|
||||||
"en_CA": "English (Canada)",
|
|
||||||
"en_GU": "English (Guam)",
|
|
||||||
"en_HK": "English (Hong Kong SAR China)",
|
|
||||||
"en_IN": "English (India)",
|
|
||||||
"en_IE": "English (Ireland)",
|
|
||||||
"en_JM": "English (Jamaica)",
|
|
||||||
"en_MT": "English (Malta)",
|
|
||||||
"en_MH": "English (Marshall Islands)",
|
|
||||||
"en_MU": "English (Mauritius)",
|
|
||||||
"en_NA": "English (Namibia)",
|
|
||||||
"en_NZ": "English (New Zealand)",
|
|
||||||
"en_MP": "English (Northern Mariana Islands)",
|
|
||||||
"en_PK": "English (Pakistan)",
|
|
||||||
"en_PH": "English (Philippines)",
|
|
||||||
"en_SG": "English (Singapore)",
|
|
||||||
"en_ZA": "English (South Africa)",
|
|
||||||
"en_TT": "English (Trinidad and Tobago)",
|
|
||||||
"en_UM": "English (U.S. Minor Outlying Islands)",
|
|
||||||
"en_VI": "English (U.S. Virgin Islands)",
|
|
||||||
"en_GB": "English (United Kingdom)",
|
|
||||||
"en_US": "English (United States)",
|
|
||||||
"en_ZW": "English (Zimbabwe)",
|
|
||||||
"en": "English",
|
|
||||||
"eo": "Esperanto",
|
|
||||||
"et_EE": "Estonian (Estonia)",
|
|
||||||
"et": "Estonian",
|
|
||||||
"ee_GH": "Ewe (Ghana)",
|
|
||||||
"ee_TG": "Ewe (Togo)",
|
|
||||||
"ee": "Ewe",
|
|
||||||
"fo_FO": "Faroese (Faroe Islands)",
|
|
||||||
"fo": "Faroese",
|
|
||||||
"fil_PH": "Filipino (Philippines)",
|
|
||||||
"fil": "Filipino",
|
|
||||||
"fi_FI": "Finnish (Finland)",
|
|
||||||
"fi": "Finnish",
|
|
||||||
"fr_BE": "French (Belgium)",
|
|
||||||
"fr_BJ": "French (Benin)",
|
|
||||||
"fr_BF": "French (Burkina Faso)",
|
|
||||||
"fr_BI": "French (Burundi)",
|
|
||||||
"fr_CM": "French (Cameroon)",
|
|
||||||
"fr_CA": "French (Canada)",
|
|
||||||
"fr_CF": "French (Central African Republic)",
|
|
||||||
"fr_TD": "French (Chad)",
|
|
||||||
"fr_KM": "French (Comoros)",
|
|
||||||
"fr_CG": "French (Congo - Brazzaville)",
|
|
||||||
"fr_CD": "French (Congo - Kinshasa)",
|
|
||||||
"fr_CI": "French (Côte d’Ivoire)",
|
|
||||||
"fr_DJ": "French (Djibouti)",
|
|
||||||
"fr_GQ": "French (Equatorial Guinea)",
|
|
||||||
"fr_FR": "French (France)",
|
|
||||||
"fr_GA": "French (Gabon)",
|
|
||||||
"fr_GP": "French (Guadeloupe)",
|
|
||||||
"fr_GN": "French (Guinea)",
|
|
||||||
"fr_LU": "French (Luxembourg)",
|
|
||||||
"fr_MG": "French (Madagascar)",
|
|
||||||
"fr_ML": "French (Mali)",
|
|
||||||
"fr_MQ": "French (Martinique)",
|
|
||||||
"fr_MC": "French (Monaco)",
|
|
||||||
"fr_NE": "French (Niger)",
|
|
||||||
"fr_RW": "French (Rwanda)",
|
|
||||||
"fr_RE": "French (Réunion)",
|
|
||||||
"fr_BL": "French (Saint Barthélemy)",
|
|
||||||
"fr_MF": "French (Saint Martin)",
|
|
||||||
"fr_SN": "French (Senegal)",
|
|
||||||
"fr_CH": "French (Switzerland)",
|
|
||||||
"fr_TG": "French (Togo)",
|
|
||||||
"fr": "French",
|
|
||||||
"ff_SN": "Fulah (Senegal)",
|
|
||||||
"ff": "Fulah",
|
|
||||||
"gl_ES": "Galician (Spain)",
|
|
||||||
"gl": "Galician",
|
|
||||||
"lg_UG": "Ganda (Uganda)",
|
|
||||||
"lg": "Ganda",
|
|
||||||
"ka_GE": "Georgian (Georgia)",
|
|
||||||
"ka": "Georgian",
|
|
||||||
"de_AT": "German (Austria)",
|
|
||||||
"de_BE": "German (Belgium)",
|
|
||||||
"de_DE": "German (Germany)",
|
|
||||||
"de_LI": "German (Liechtenstein)",
|
|
||||||
"de_LU": "German (Luxembourg)",
|
|
||||||
"de_CH": "German (Switzerland)",
|
|
||||||
"de": "German",
|
|
||||||
"el_CY": "Greek (Cyprus)",
|
|
||||||
"el_GR": "Greek (Greece)",
|
|
||||||
"el": "Greek",
|
|
||||||
"gu_IN": "Gujarati (India)",
|
|
||||||
"gu": "Gujarati",
|
|
||||||
"guz_KE": "Gusii (Kenya)",
|
|
||||||
"guz": "Gusii",
|
|
||||||
"ha_Latn": "Hausa (Latin)",
|
|
||||||
"ha_Latn_GH": "Hausa (Latin, Ghana)",
|
|
||||||
"ha_Latn_NE": "Hausa (Latin, Niger)",
|
|
||||||
"ha_Latn_NG": "Hausa (Latin, Nigeria)",
|
|
||||||
"ha": "Hausa",
|
|
||||||
"haw_US": "Hawaiian (United States)",
|
|
||||||
"haw": "Hawaiian",
|
|
||||||
"he_IL": "Hebrew (Israel)",
|
|
||||||
"he": "Hebrew",
|
|
||||||
"hi_IN": "Hindi (India)",
|
|
||||||
"hi": "Hindi",
|
|
||||||
"hu_HU": "Hungarian (Hungary)",
|
|
||||||
"hu": "Hungarian",
|
|
||||||
"is_IS": "Icelandic (Iceland)",
|
|
||||||
"is": "Icelandic",
|
|
||||||
"ig_NG": "Igbo (Nigeria)",
|
|
||||||
"ig": "Igbo",
|
|
||||||
"id_ID": "Indonesian (Indonesia)",
|
|
||||||
"id": "Indonesian",
|
|
||||||
"ga_IE": "Irish (Ireland)",
|
|
||||||
"ga": "Irish",
|
|
||||||
"it_IT": "Italian (Italy)",
|
|
||||||
"it_CH": "Italian (Switzerland)",
|
|
||||||
"it": "Italian",
|
|
||||||
"ja_JP": "Japanese (Japan)",
|
|
||||||
"ja": "Japanese",
|
|
||||||
"kea_CV": "Kabuverdianu (Cape Verde)",
|
|
||||||
"kea": "Kabuverdianu",
|
|
||||||
"kab_DZ": "Kabyle (Algeria)",
|
|
||||||
"kab": "Kabyle",
|
|
||||||
"kl_GL": "Kalaallisut (Greenland)",
|
|
||||||
"kl": "Kalaallisut",
|
|
||||||
"kln_KE": "Kalenjin (Kenya)",
|
|
||||||
"kln": "Kalenjin",
|
|
||||||
"kam_KE": "Kamba (Kenya)",
|
|
||||||
"kam": "Kamba",
|
|
||||||
"kn_IN": "Kannada (India)",
|
|
||||||
"kn": "Kannada",
|
|
||||||
"kk_Cyrl": "Kazakh (Cyrillic)",
|
|
||||||
"kk_Cyrl_KZ": "Kazakh (Cyrillic, Kazakhstan)",
|
|
||||||
"kk": "Kazakh",
|
|
||||||
"km_KH": "Khmer (Cambodia)",
|
|
||||||
"km": "Khmer",
|
|
||||||
"ki_KE": "Kikuyu (Kenya)",
|
|
||||||
"ki": "Kikuyu",
|
|
||||||
"rw_RW": "Kinyarwanda (Rwanda)",
|
|
||||||
"rw": "Kinyarwanda",
|
|
||||||
"kok_IN": "Konkani (India)",
|
|
||||||
"kok": "Konkani",
|
|
||||||
"ko_KR": "Korean (South Korea)",
|
|
||||||
"ko": "Korean",
|
|
||||||
"khq_ML": "Koyra Chiini (Mali)",
|
|
||||||
"khq": "Koyra Chiini",
|
|
||||||
"ses_ML": "Koyraboro Senni (Mali)",
|
|
||||||
"ses": "Koyraboro Senni",
|
|
||||||
"lag_TZ": "Langi (Tanzania)",
|
|
||||||
"lag": "Langi",
|
|
||||||
"lv_LV": "Latvian (Latvia)",
|
|
||||||
"lv": "Latvian",
|
|
||||||
"lt_LT": "Lithuanian (Lithuania)",
|
|
||||||
"lt": "Lithuanian",
|
|
||||||
"luo_KE": "Luo (Kenya)",
|
|
||||||
"luo": "Luo",
|
|
||||||
"luy_KE": "Luyia (Kenya)",
|
|
||||||
"luy": "Luyia",
|
|
||||||
"mk_MK": "Macedonian (Macedonia)",
|
|
||||||
"mk": "Macedonian",
|
|
||||||
"jmc_TZ": "Machame (Tanzania)",
|
|
||||||
"jmc": "Machame",
|
|
||||||
"kde_TZ": "Makonde (Tanzania)",
|
|
||||||
"kde": "Makonde",
|
|
||||||
"mg_MG": "Malagasy (Madagascar)",
|
|
||||||
"mg": "Malagasy",
|
|
||||||
"ms_BN": "Malay (Brunei)",
|
|
||||||
"ms_MY": "Malay (Malaysia)",
|
|
||||||
"ms": "Malay",
|
|
||||||
"ml_IN": "Malayalam (India)",
|
|
||||||
"ml": "Malayalam",
|
|
||||||
"mt_MT": "Maltese (Malta)",
|
|
||||||
"mt": "Maltese",
|
|
||||||
"gv_GB": "Manx (United Kingdom)",
|
|
||||||
"gv": "Manx",
|
|
||||||
"mr_IN": "Marathi (India)",
|
|
||||||
"mr": "Marathi",
|
|
||||||
"mas_KE": "Masai (Kenya)",
|
|
||||||
"mas_TZ": "Masai (Tanzania)",
|
|
||||||
"mas": "Masai",
|
|
||||||
"mer_KE": "Meru (Kenya)",
|
|
||||||
"mer": "Meru",
|
|
||||||
"mfe_MU": "Morisyen (Mauritius)",
|
|
||||||
"mfe": "Morisyen",
|
|
||||||
"naq_NA": "Nama (Namibia)",
|
|
||||||
"naq": "Nama",
|
|
||||||
"ne_IN": "Nepali (India)",
|
|
||||||
"ne_NP": "Nepali (Nepal)",
|
|
||||||
"ne": "Nepali",
|
|
||||||
"nd_ZW": "North Ndebele (Zimbabwe)",
|
|
||||||
"nd": "North Ndebele",
|
|
||||||
"no": "Norwegian",
|
|
||||||
"nb_NO": "Norwegian Bokmål (Norway)",
|
|
||||||
"nb": "Norwegian Bokmål",
|
|
||||||
"nn_NO": "Norwegian Nynorsk (Norway)",
|
|
||||||
"nn": "Norwegian Nynorsk",
|
|
||||||
"nyn_UG": "Nyankole (Uganda)",
|
|
||||||
"nyn": "Nyankole",
|
|
||||||
"or_IN": "Oriya (India)",
|
|
||||||
"or": "Oriya",
|
|
||||||
"om_ET": "Oromo (Ethiopia)",
|
|
||||||
"m_KE": "Oromo (Kenya)",
|
|
||||||
"om": "Oromo",
|
|
||||||
"ps_AF": "Pashto (Afghanistan)",
|
|
||||||
"ps": "Pashto",
|
|
||||||
"fa_AF": "Persian (Afghanistan)",
|
|
||||||
"fa_IR": "Persian (Iran)",
|
|
||||||
"fa": "Persian",
|
|
||||||
"pl_PL": "Polish (Poland)",
|
|
||||||
"pl": "Polish",
|
|
||||||
"pt_BR": "Portuguese (Brazil)",
|
|
||||||
"pt_GW": "Portuguese (Guinea-Bissau)",
|
|
||||||
"pt_MZ": "Portuguese (Mozambique)",
|
|
||||||
"pt_PT": "Portuguese (Portugal)",
|
|
||||||
"pt": "Portuguese",
|
|
||||||
"pa_Arab": "Punjabi (Arabic)",
|
|
||||||
"pa_Arab_PK": "Punjabi (Arabic, Pakistan)",
|
|
||||||
"pa_Guru": "Punjabi (Gurmukhi)",
|
|
||||||
"pa_Guru_IN": "Punjabi (Gurmukhi, India)",
|
|
||||||
"pa": "Punjabi",
|
|
||||||
"ro_MD": "Romanian (Moldova)",
|
|
||||||
"ro_RO": "Romanian (Romania)",
|
|
||||||
"ro": "Romanian",
|
|
||||||
"rm_CH": "Romansh (Switzerland)",
|
|
||||||
"rm": "Romansh",
|
|
||||||
"rof_TZ": "Rombo (Tanzania)",
|
|
||||||
"rof": "Rombo",
|
|
||||||
"ru_MD": "Russian (Moldova)",
|
|
||||||
"ru_RU": "Russian (Russia)",
|
|
||||||
"ru_UA": "Russian (Ukraine)",
|
|
||||||
"ru": "Russian",
|
|
||||||
"rwk_TZ": "Rwa (Tanzania)",
|
|
||||||
"rwk": "Rwa",
|
|
||||||
"saq_KE": "Samburu (Kenya)",
|
|
||||||
"saq": "Samburu",
|
|
||||||
"sg_CF": "Sango (Central African Republic)",
|
|
||||||
"sg": "Sango",
|
|
||||||
"seh_MZ": "Sena (Mozambique)",
|
|
||||||
"seh": "Sena",
|
|
||||||
"sr_Cyrl": "Serbian (Cyrillic)",
|
|
||||||
"sr_Cyrl_BA": "Serbian (Cyrillic, Bosnia and Herzegovina)",
|
|
||||||
"sr_Cyrl_ME": "Serbian (Cyrillic, Montenegro)",
|
|
||||||
"sr_Cyrl_RS": "Serbian (Cyrillic, Serbia)",
|
|
||||||
"sr_Latn": "Serbian (Latin)",
|
|
||||||
"sr_Latn_BA": "Serbian (Latin, Bosnia and Herzegovina)",
|
|
||||||
"sr_Latn_ME": "Serbian (Latin, Montenegro)",
|
|
||||||
"sr_Latn_RS": "Serbian (Latin, Serbia)",
|
|
||||||
"sr": "Serbian",
|
|
||||||
"sn_ZW": "Shona (Zimbabwe)",
|
|
||||||
"sn": "Shona",
|
|
||||||
"ii_CN": "Sichuan Yi (China)",
|
|
||||||
"ii": "Sichuan Yi",
|
|
||||||
"si_LK": "Sinhala (Sri Lanka)",
|
|
||||||
"si": "Sinhala",
|
|
||||||
"sk_SK": "Slovak (Slovakia)",
|
|
||||||
"sk": "Slovak",
|
|
||||||
"sl_SI": "Slovenian (Slovenia)",
|
|
||||||
"sl": "Slovenian",
|
|
||||||
"xog_UG": "Soga (Uganda)",
|
|
||||||
"xog": "Soga",
|
|
||||||
"so_DJ": "Somali (Djibouti)",
|
|
||||||
"so_ET": "Somali (Ethiopia)",
|
|
||||||
"so_KE": "Somali (Kenya)",
|
|
||||||
"so_SO": "Somali (Somalia)",
|
|
||||||
"so": "Somali",
|
|
||||||
"es_AR": "Spanish (Argentina)",
|
|
||||||
"es_BO": "Spanish (Bolivia)",
|
|
||||||
"es_CL": "Spanish (Chile)",
|
|
||||||
"es_CO": "Spanish (Colombia)",
|
|
||||||
"es_CR": "Spanish (Costa Rica)",
|
|
||||||
"es_DO": "Spanish (Dominican Republic)",
|
|
||||||
"es_EC": "Spanish (Ecuador)",
|
|
||||||
"es_SV": "Spanish (El Salvador)",
|
|
||||||
"es_GQ": "Spanish (Equatorial Guinea)",
|
|
||||||
"es_GT": "Spanish (Guatemala)",
|
|
||||||
"es_HN": "Spanish (Honduras)",
|
|
||||||
"es_419": "Spanish (Latin America)",
|
|
||||||
"es_MX": "Spanish (Mexico)",
|
|
||||||
"es_NI": "Spanish (Nicaragua)",
|
|
||||||
"es_PA": "Spanish (Panama)",
|
|
||||||
"es_PY": "Spanish (Paraguay)",
|
|
||||||
"es_PE": "Spanish (Peru)",
|
|
||||||
"es_PR": "Spanish (Puerto Rico)",
|
|
||||||
"es_ES": "Spanish (Spain)",
|
|
||||||
"es_US": "Spanish (United States)",
|
|
||||||
"es_UY": "Spanish (Uruguay)",
|
|
||||||
"es_VE": "Spanish (Venezuela)",
|
|
||||||
"es": "Spanish",
|
|
||||||
"sw_KE": "Swahili (Kenya)",
|
|
||||||
"sw_TZ": "Swahili (Tanzania)",
|
|
||||||
"sw": "Swahili",
|
|
||||||
"sv_FI": "Swedish (Finland)",
|
|
||||||
"sv_SE": "Swedish (Sweden)",
|
|
||||||
"sv": "Swedish",
|
|
||||||
"gsw_CH": "Swiss German (Switzerland)",
|
|
||||||
"gsw": "Swiss German",
|
|
||||||
"shi_Latn": "Tachelhit (Latin)",
|
|
||||||
"shi_Latn_MA": "Tachelhit (Latin, Morocco)",
|
|
||||||
"shi_Tfng": "Tachelhit (Tifinagh)",
|
|
||||||
"shi_Tfng_MA": "Tachelhit (Tifinagh, Morocco)",
|
|
||||||
"shi": "Tachelhit",
|
|
||||||
"dav_KE": "Taita (Kenya)",
|
|
||||||
"dav": "Taita",
|
|
||||||
"ta_IN": "Tamil (India)",
|
|
||||||
"ta_LK": "Tamil (Sri Lanka)",
|
|
||||||
"ta": "Tamil",
|
|
||||||
"te_IN": "Telugu (India)",
|
|
||||||
"te": "Telugu",
|
|
||||||
"teo_KE": "Teso (Kenya)",
|
|
||||||
"teo_UG": "Teso (Uganda)",
|
|
||||||
"teo": "Teso",
|
|
||||||
"th_TH": "Thai (Thailand)",
|
|
||||||
"th": "Thai",
|
|
||||||
"bo_CN": "Tibetan (China)",
|
|
||||||
"bo_IN": "Tibetan (India)",
|
|
||||||
"bo": "Tibetan",
|
|
||||||
"ti_ER": "Tigrinya (Eritrea)",
|
|
||||||
"ti_ET": "Tigrinya (Ethiopia)",
|
|
||||||
"ti": "Tigrinya",
|
|
||||||
"to_TO": "Tonga (Tonga)",
|
|
||||||
"to": "Tonga",
|
|
||||||
"tr_TR": "Turkish (Turkey)",
|
|
||||||
"tr": "Turkish",
|
|
||||||
"uk_UA": "Ukrainian (Ukraine)",
|
|
||||||
"uk": "Ukrainian",
|
|
||||||
"ur_IN": "Urdu (India)",
|
|
||||||
"ur_PK": "Urdu (Pakistan)",
|
|
||||||
"ur": "Urdu",
|
|
||||||
"uz_Arab": "Uzbek (Arabic)",
|
|
||||||
"uz_Arab_AF": "Uzbek (Arabic, Afghanistan)",
|
|
||||||
"uz_Cyrl": "Uzbek (Cyrillic)",
|
|
||||||
"uz_Cyrl_UZ": "Uzbek (Cyrillic, Uzbekistan)",
|
|
||||||
"uz_Latn": "Uzbek (Latin)",
|
|
||||||
"uz_Latn_UZ": "Uzbek (Latin, Uzbekistan)",
|
|
||||||
"uz": "Uzbek",
|
|
||||||
"vi_VN": "Vietnamese (Vietnam)",
|
|
||||||
"vi": "Vietnamese",
|
|
||||||
"vun_TZ": "Vunjo (Tanzania)",
|
|
||||||
"vun": "Vunjo",
|
|
||||||
"cy_GB": "Welsh (United Kingdom)",
|
|
||||||
"cy": "Welsh",
|
|
||||||
"yo_NG": "Yoruba (Nigeria)",
|
|
||||||
"yo": "Yoruba",
|
|
||||||
"zu_ZA": "Zulu (South Africa)",
|
|
||||||
"zu": "Zulu"
|
|
||||||
}
|
|
||||||
|
|
||||||
print('\n\nTRANSLATORS\n===========\n')
|
|
||||||
r = requests.get('http://www.transifex.com/api/2/project/antennapod/languages/', auth=(TRANSIFEX_USER, TRANSIFEX_PW))
|
|
||||||
for lang in r.json():
|
|
||||||
lang_contributers = lang['coordinators'] + lang['reviewers'] + lang['translators']
|
|
||||||
lang_contributers = sorted(lang_contributers, key=str.lower)
|
|
||||||
print(language_codes[lang['language_code']], ": ", ', '.join(lang_contributers), sep="")
|
|
|
@ -4,7 +4,8 @@ import requests
|
||||||
MAINTAINERS = ['mfietz', 'ByteHamster']
|
MAINTAINERS = ['mfietz', 'ByteHamster']
|
||||||
FORMER_MAINTAINERS = ['TomHennen']
|
FORMER_MAINTAINERS = ['TomHennen']
|
||||||
|
|
||||||
csvFile = open("app/src/main/assets/developers.txt", "w")
|
csvFile = open("app/src/main/assets/developers.csv", "w")
|
||||||
|
contributorsFile = open("CONTRIBUTORS", "a")
|
||||||
page = 1
|
page = 1
|
||||||
hasMore = True
|
hasMore = True
|
||||||
while hasMore:
|
while hasMore:
|
||||||
|
@ -21,7 +22,9 @@ while hasMore:
|
||||||
line = contributor['login'].replace(";", "") + ';' + str(contributor['id']) + ';' + role
|
line = contributor['login'].replace(";", "") + ';' + str(contributor['id']) + ';' + role
|
||||||
csvFile.write(line + '\n')
|
csvFile.write(line + '\n')
|
||||||
print(line)
|
print(line)
|
||||||
|
contributorsFile.write(contributor['login'] + '\n')
|
||||||
page = page + 1
|
page = page + 1
|
||||||
hasMore = len(json) > 0
|
hasMore = len(json) > 0
|
||||||
csvFile.close()
|
csvFile.close()
|
||||||
|
contributorsFile.close()
|
||||||
|
|
|
@ -13,24 +13,27 @@ else:
|
||||||
TRANSIFEX_USER = ""
|
TRANSIFEX_USER = ""
|
||||||
TRANSIFEX_PW = ""
|
TRANSIFEX_PW = ""
|
||||||
|
|
||||||
csvFile = open("app/src/main/assets/translators.txt", "w")
|
csvFile = open("app/src/main/assets/translators.csv", "w")
|
||||||
|
contributorsFile = open("CONTRIBUTORS", "a")
|
||||||
r = requests.get('http://www.transifex.com/api/2/project/antennapod/languages/',
|
r = requests.get('http://www.transifex.com/api/2/project/antennapod/languages/',
|
||||||
auth=(TRANSIFEX_USER, TRANSIFEX_PW))
|
auth=(TRANSIFEX_USER, TRANSIFEX_PW))
|
||||||
for lang in r.json():
|
for lang in r.json():
|
||||||
lang_contributers = lang['coordinators'] + lang['reviewers'] + lang['translators']
|
langContributers = lang['coordinators'] + lang['reviewers'] + lang['translators']
|
||||||
lang_contributers = sorted(lang_contributers, key=str.lower)
|
langContributers = sorted(langContributers, key=str.lower)
|
||||||
lang_code = lang['language_code']
|
langCode = lang['language_code']
|
||||||
try:
|
try:
|
||||||
lang_name = pycountry.languages.lookup(lang_code).name
|
langName = pycountry.languages.lookup(langCode).name
|
||||||
except:
|
except:
|
||||||
try:
|
try:
|
||||||
lang_name = pycountry.languages.lookup(
|
langName = pycountry.languages.lookup(
|
||||||
lang_code.split('_')[0]).name + ' (' + lang_code + ')'
|
langCode.split('_')[0]).name + ' (' + langCode + ')'
|
||||||
except:
|
except:
|
||||||
lang_name = lang['language_code']
|
langName = lang['language_code']
|
||||||
print('\033[91mLanguage code not found:' + lang_code + '\033[0m')
|
print('\033[91mLanguage code not found:' + langCode + '\033[0m')
|
||||||
|
|
||||||
line = lang_name + ';' + ', '.join(lang_contributers).replace(';', '')
|
joinedTranslators = ', '.join(langContributers).replace(';', '');
|
||||||
csvFile.write(line + '\n')
|
contributorsFile.write(langName + ": " + joinedTranslators + '\n')
|
||||||
print(line)
|
csvFile.write(langName + ';' + joinedTranslators + '\n')
|
||||||
|
print(langName + ';' + joinedTranslators)
|
||||||
csvFile.close()
|
csvFile.close()
|
||||||
|
contributorsFile.close()
|
||||||
|
|
|
@ -9,9 +9,10 @@ set -e
|
||||||
DEST=$2
|
DEST=$2
|
||||||
VERSION_NAME=$1
|
VERSION_NAME=$1
|
||||||
|
|
||||||
# need to get rid of this so that it gets regenerated
|
rm CONTRIBUTORS
|
||||||
# probably a way to solve this in Gradle too...
|
./createDevelopersList.py
|
||||||
rm -f app/src/main/assets/about.html
|
./createTranslatorsList.py
|
||||||
|
|
||||||
./gradlew clean assemblePlayDebug assemblePlayRelease
|
./gradlew clean assemblePlayDebug assemblePlayRelease
|
||||||
cp app/build/outputs/apk/app-play-debug.apk $DEST/AntennaPod_${VERSION_NAME}_debug.apk
|
cp app/build/outputs/apk/app-play-debug.apk $DEST/AntennaPod_${VERSION_NAME}_debug.apk
|
||||||
cp app/build/outputs/apk/app-play-release.apk $DEST/AntennaPod_${VERSION_NAME}_release.apk
|
cp app/build/outputs/apk/app-play-release.apk $DEST/AntennaPod_${VERSION_NAME}_release.apk
|
||||||
|
|
Loading…
Reference in New Issue