[Talk-it] Cambiare formato testo in JOSM

marco bra marcobra.ubuntu a gmail.com
Ven 27 Set 2013 21:23:20 UTC


Groppo, non ho usato il tuo script, ma l'ho provato ed e' potente,
sarebbero da discriminare alcune liste di parole...  che non vanno
maiuscole... "di", "del" etc.

Ci potresti lasciare qualche riferimento disponibile in rete, che per
tua esperienza, è utile per approfondimenti...

Grazie

mcheck



Il 27 settembre 2013 22:58, marco bra <marcobra.ubuntu a gmail.com> ha scritto:
> Risultato... in allegato
>
> Ciao
>
> Il 27 settembre 2013 19:48, Groppo <groppo8 a gmail.com> ha scritto:
>> 2013/9/26 bredy <bredyfox a yahoo.it>
>>>
>>> Ho dei nomi di località tutte in maiuscolo con tag name, c'è un modo per
>>> trasformarle con solo iniziali maiuscole?
>>
>>
>> Puoi provare in JOSM, tramite uno script Python.
>>
>> Se non lo hai già, devi installare e configurare il plugin "Scripting", come
>> scritto qui:
>> http://wiki.openstreetmap.org/wiki/IT:Quality_Assurance_Tools_script/Installation
>> nella prima sezione: "Abilita in JOSM l'esecuzione di script esterni".
>>
>> Poi:
>>
>> 1 - apri il file .osm
>> 2 - vai sul menu "Scripting" --> "Show scripting console" --> "Change" e
>> selezioni "python, with jython engine"
>> 3 - incolli nella console il codice più sotto e premi "Run".
>>
>> Lo script passa in rassegna nodi, way e relazioni e trasforma in maiuscolo
>> la prima lettera di ciascuna parola nel tag "name".
>> Es. "name = abc ABC" --> "name = Abc Abc"
>>
>> Come sempre, conviene provare su una copia e controllare il risultato prima
>> di caricare su OSM ;-)
>> (oltre a seguire le solite procedure per gli import, se è una fonte nuova.)
>>
>>
>> Ciao,
>> Groppo
>>
>>
>> #codice script
>> """
>> Capitalize words of value in "name=*" tags, through JOSM
>> """
>>
>> import sys
>> from javax.swing import JOptionPane
>> from org.openstreetmap.josm import Main
>>
>> def getMapView():
>>     if Main.main and Main.main.map:
>>         return Main.main.map.mapView
>>     else:
>>         JOptionPane.showMessageDialog(Main.parent, "Apri dei dati, prima di
>> eseguire lo script.")
>>         sys.exit(1)
>>
>> mv = getMapView()
>> if mv and mv.editLayer and mv.editLayer.data:
>>     dataset = mv.editLayer.data
>>     elements = []
>>     elements.extend(dataset.nodes)
>>     elements.extend(dataset.ways)
>>     elements.extend(dataset.relations)
>>
>>     #For each OSM object in the dataset
>>     for element in elements:
>>         tags = element.getKeys()
>>         if len(tags) != 0:
>>             if "name" in tags:
>>                 #capitalize words of "name" value
>>                 tags["name"] = element.get("name").title()
>>                 #update tags
>>                 element.setKeys(tags)
>>
>> JOptionPane.showMessageDialog(Main.parent, "Done.")
>>
>> _______________________________________________
>> Talk-it mailing list
>> Talk-it a openstreetmap.org
>> https://lists.openstreetmap.org/listinfo/talk-it
>>
>
>
>
> --
> Linux Infinite Freedom
>
> I'm writing from this place:
> http://www.openstreetmap.org/?lat=44.39945&lon=8.6798&zoom=15&layers=M



-- 
Linux Infinite Freedom

I'm writing from this place:
http://www.openstreetmap.org/?lat=44.39945&lon=8.6798&zoom=15&layers=M



Maggiori informazioni sulla lista Talk-it