from browser import window
TAGS = {
" podrocje " : [ " administracija " , " antropologija " , " arheologija " , " arhitektura " , " astrologija " , " astronomija " , " avtomobilizem " , " biblično " , " bibliotekarstvo " , " biologija " , " -- anatomija " , " -- biokemija " , " -- botanika " , " -- paleontologija " , " -- zoologija " , " ekonomija " , " -- industrija " , " -- ribištvo " , " -- rudarstvo " , " -- šolstvo " , " -- trgovina " , " -- turizem " , " -- zdravstvo " , " -- metalurgija " , " -- živilska industrija " , " elektrika " , " elektronika " , " filozofija " , " finance " , " fizika " , " fotografija " , " geografija " , " -- ekologija " , " -- geologija " , " -- geodezija " , " -- meteorologija " , " -- mineralogija " , " -- petrografija " , " glasba " , " gradbeništvo " , " heraldika " , " jezikoslovje " , " kemija " , " kmetijstvo " , " -- čebelarstvo " , " -- gozdarstvo " , " -- poljedelstvo " , " -- sadjarstvo " , " -- vinogradništvo " , " -- vrtnarstvo " , " konjeništvo " , " kulinarika " , " letalstvo " , " literarna teorija " , " -- književnost " , " -- pesništvo " , " lovstvo " , " matematika " , " -- geometrija " , " -- statistika " , " medicina " , " mehanika " , " mitologija " , " moda " , " obrtništvo " , " -- čevljarstvo " , " -- dimnikarstvo " , " -- kamnoseštvo " , " -- mizarstvo " , " -- optika " , " oglaševanje " , " politika " , " pomorstvo " , " pošta " , " pravo " , " psihologija " , " računalništvo " , " religija " , " sociologija " , " šport " , " tekstil " , " telekomunikacije " , " -- radiotelevizija " , " -- radio " , " -- telefonija " , " -- televizija " , " tiskarstvo " , " transport " , " -- cestni promet " , " -- tovorni promet " , " -- zračni promet " , " -- železnica " , " umetnost " , " uprizoritvene umetnosti " , " -- film " , " -- gledališče " , " -- ples " , " -- balet " , " veterina " , " vojska " , " zavarovalništvo " , " zgodovina " ] ,
" stilne " : [ " registrske " , " -- narečno " , " -- sleng " , " -- v otroškem govoru " , " -- neformalno " , " -- formalno " , " -- v jeziku mladih " , " -- v govoru " , " -- v pogovoru " , " -- nenevtralno " , " -- v splošni rabi " , " konotacijske " , " -- šaljivo " , " -- ironično " , " -- vulgarno " , " -- slabšalno " , " -- žaljivo " , " -- grobo " , " -- ljubkovalno " , " pragmatične " , " -- pregovor " , " -- kot pozdrav " , " -- kot kletvica " , " -- kot žaljivka " , " -- kot gesta " , " -- kot grožnja " , " -- kot nagovor " , " -- kot nasvet " , " -- kot navodilo " , " -- kot opozorilo " , " časovne " , " -- starinsko " , " -- nekdaj " ] ,
" slovnične " : [ " v pridevniški rabi " , " v primerniku " , " v presežniku " , " v samostalniški rabi " , " v ednini " , " v dvojini " , " v množini " , " števno " , " neštevno " , " v 3. osebi " , " v velelniku " , " z veliko začetnico " ] ,
" skupne " : [ " tudi " , " predvsem " , " običajno " , " včasih " , " redko " ] ,
" latinsko " : [ ] ,
" razmerje " : [ " približek " , " sinonim " , " antonim " ] ,
" semantično " : [ ] ,
" English-full " : [ ]
}
SLO2ENG_TAGS = {
" podrocje " : " domain " ,
" stilne-časovne " : " style-time " ,
" stilne-registrske " : " style-register " ,
" stilne-konotacijske " : " style-connotation " ,
" stilne-pragmatične " : " style-pragmatics " ,
" slovnične " : " grammar " ,
" skupne " : " general " ,
" latinsko " : " latin " ,
" razmerje " : " relation " ,
" semantično " : " semantic " ,
" English-full " : " Polno angleško "
}
ENG2SLO_TAGS = { value : key for key , value in SLO2ENG_TAGS . items ( ) }
STYLE_SECTIONS = [ ( " registrske " , " register " ) ,
( " konotacijske " , " connotation " ) ,
( " pragmatične " , " pragmatics " ) ,
( " časovne " , " time " ) ]
def import_label_list ( selector , xml_element ) :
result = [ ]
for tag_xml in xml_element . querySelectorAll ( selector ) :
t_type = tag_xml . getAttribute ( " type " )
t_value = tag_xml . textContent
t_type , t_value = import_tag ( t_type , t_value )
result . append ( ( t_type , t_value ) )
return result
def import_tag ( key , value ) :
# converts tag from input xml to what we need in the editor
# if slovene, than some old values apparantly, just import as is
# simmilar for "stilne"
# if english, than translate and change style-xxx for stilne
# for value, just handle if some bad "-- xxx" stuff is in xml
if key in SLO2ENG_TAGS :
pass
elif key in ( " stilne " , " style " ) :
key = " stilne "
elif key in ENG2SLO_TAGS :
key = ENG2SLO_TAGS [ key ]
# handle stilne-xxx stuff
if " - " in key :
key = key . split ( " - " ) [ 0 ]
else :
window . console . log ( " Uknown tag :( " , key , value )
# using some default
key = TAGS . keys ( ) [ 0 ]
# this should not happen, but maybe there was a bug...
value = value . replace ( " -- " , " " ) . strip ( )
for tag_key in TAGS . keys ( ) :
for possible_value in TAGS [ tag_key ] :
if value == possible_value or " -- " + value == possible_value :
return key , possible_value
# not found, must be manually inputted
return key , value
def export_tag ( key , value ) :
if key == " stilne " :
arr = TAGS [ " stilne " ]
key = " style "
value_idx = arr . index ( value )
if value_idx > = 0 :
for sec_slo , sec_eng in reversed ( STYLE_SECTIONS ) :
idx = arr . index ( sec_slo )
if idx < value_idx :
key = " style- " + sec_eng
break
else :
key = SLO2ENG_TAGS [ key ]
value = value . replace ( " -- " , " " ) . strip ( )
return key , value