Lingvoj:
- English
- Esperanto
- español
- français
- norsk bokmål
- Nederlands
- русский
Kromaĵo -> Skriptado
- Celo
- Kiel ekzekuti skriptojn
- Kiel skribi viajn proprajn skriptojn
- Implementaj detaloj
- Skriptoj
- Altnivelaj agordoj
Celo
Uzu ĝin por aŭtomatigi malgrandajn taskojn por kiuj neniu ekzistanta kromaĵo povas fari, ekz.
- aldona kvalito-testoj por kiuj neniu validigilo-testoj estas haveblaj
- aŭtomate enigi datumojn en tre specifaj situacioj (ekz. sekvencoj de domnumeroj)
- importi de propra dosierformato ne subtenata de JOSM
- eksporti al propra dosierformato ne subtenata de JOSM
Kiel ekzekuti skriptojn
La skriptada kromaĵo permesas al vi ruli skriptojn ene de JOSM.
Vi povas ruli skriptojn de konzolo aŭ de dosieroj. Se vi elektas dosierojn, tiam la plej lastaj skriptoj aperos en "skriptado" menuo. Vidu ankaŭ
Kiel skribi viajn proprajn skriptojn
Bonvolu zorgeme inspekti ambaŭ rimedojn:
- https://gubaer.github.io/josm-scripting-plugin/doc/documentation.html - sekvu ĉiujn ligilojn ĉi tie
- https://gubaer.github.io/josm-scripting-plugin/apidoc/modules/josm.html - skanu kion ĉiuj klasoj, moduloj, miksadoj kaj nomspacoj povas fari.
Por skribi funkciajn skriptojn ol "josm.alert(josm.menu.length);" vi devas kombini ekzemplojn de multaj paĝoj, ekzemple:
- Kreu agon uzante "JSAction" klaso, tiam alkroĉu ĝin al menuo kiel montrite ĉe "Etendante la JOSM menuon kaj la JOSM ilobreton" paĝo
Implementaj detaloj
La kromaĵo inkluzivas enigitan skriptan motoron por Javascript bazitan sur Mozilla Rhino kaj
Javascript API por la JOSM aplikaĵaj objektoj.
Alternative, vi povas uzi iun ajn skriptan lingvon kiu provizas JSR-223 kongruan skriptan motoron, aparte
Groovy, Python, aŭ Ruby.
Skriptoj
Skriptoj en JavaScript
- https://gist.github.com/Rub21/feb83f57a727ac0d8a34 - Etendi mallongigojn (US)
- https://gist.github.com/Rub21/47838797856566a8b6ba - Majuskligi nomojn kaj elimini "name=S/N"
- https://gist.github.com/Rub21/cc055320c925c855926e - etendi mallongigojn (Peru); video demonstro
Skriptoj en Python
- Help/Plugin/Scripting/Python - diversaj malgrandaj skriptoj kiuj celas ilustri kiel fari unu aferon.
- Help/Plugin/Scripting/Python/SurfaceTypesOfRoutes (en) - (Interesa por biciklaj vojoj, ambaŭ bukloj kaj linearaj). Mallonga peco de kodo, sed ilustras iujn interesajn konceptojn kaj raportas pri OSM-datumoj. Ne faras ŝanĝojn al la datumoj
- Help/Plugin/Scripting/Python/RCN_Route_Validator (en) - Ĉi tio ne estas simpla skripto plu. Ĝi faras multon en komplika kampo (retoj de biciklaj nodvojoj kun numeritaj nodoj), faras ŝanĝojn al rilatoj, skribas al dosiero kiu povas esti algluita al la vikio. Analizas vojojn, sed ankaŭ retojn de vojoj aŭ kolektojn de retoj de vojoj, depende de la elekto en JOSM kiam la skripto estis rulita.
- AutoAddIntersections (bezonas UtilsPlugin2) - Aldonas komandvican aŭskultanton kiu plenumos utilsplugin2's AldoniNodojnĈeIntersekcioj komandon post renkonti Extrude komandon. (Vidu #7991)
Rulu unufoje por JOSM-sesio.
Altnivelaj agordoj
Serĉu por scripting.
subĉeno.
Reen al Kromaĵa Helpo
Reen al Ĉefa Helpo