Tillegg -> Skripting
- Formål
- Hvordan kjøre skript
- Hvordan skrive dine egne skript
- Implementasjonsdetaljer
- Skript
- Avanserte innstillinger
Formål
Bruk det til å automatisere små oppgaver som ingen eksisterende plugin kan gjøre, f.eks.
- ekstra kvalitetstester som ingen valideringstesttilfeller er tilgjengelige for
- automatisk å legge inn data i svært spesifikke situasjoner (f.eks. sekvenser av husnumre)
- importere fra et egendefinert filformat som ikke støttes av JOSM
- eksportere til et egendefinert filformat som ikke støttes av JOSM
Hvordan kjøre skript
Skripting-tillegget lar deg kjøre skript i JOSM.
Du kan kjøre skript fra konsoll eller fra filer. Hvis du velger filer, vil de siste skriptene vises i "skripting"-menyen. Se også
Hvordan skrive dine egne skript
Vennligst inspiser nøye begge ressursene:
- https://gubaer.github.io/josm-scripting-plugin/doc/documentation.html - følg alle lenker her
- https://gubaer.github.io/josm-scripting-plugin/apidoc/modules/josm.html - skann hva alle klasser, moduler, mixins og navneområder kan gjøre.
For å skrive funksjonelle skript enn "josm.alert(josm.menu.length);" bør du kombinere eksempler fra flere sider, for eksempel:
- Opprett en handling ved å bruke "JSAction"-klassen, deretter fest den til menyen som vist på "Utvide JOSM-menyen og JOSM-verktøylinjen"-siden
Implementasjonsdetaljer
Tillegget inkluderer en innebygd skriptmotor for Javascript basert på Mozilla Rhino og et
Javascript API for JOSM-applikasjonsobjektene.
Alternativt kan du bruke ethvert skriptspråk som tilbyr en JSR-223-kompatibel skriptmotor, spesielt
Groovy, Python, eller Ruby.
Skript
Skript i JavaScript
- https://gist.github.com/Rub21/feb83f57a727ac0d8a34 - Utvid forkortelser (US)
- https://gist.github.com/Rub21/47838797856566a8b6ba - Store bokstaver i navn og eliminer "name=S/N"
- https://gist.github.com/Rub21/cc055320c925c855926e - utvid forkortelser (Peru); videodemonstrasjon
Skript i Python
- Help/Plugin/Scripting/Python - ulike små skript som er ment å illustrere hvordan man gjør én ting.
- Help/Plugin/Scripting/Python/SurfaceTypesOfRoutes (en) - (Interessant for sykkelruter, både løkker og lineære). Kort kodebit, men illustrerer noen interessante konsepter og rapporterer om OSM-data. Gjør ikke endringer i dataene
- Help/Plugin/Scripting/Python/RCN_Route_Validator (en) - Dette er ikke lenger et trivielt skript. Det gjør mye i et komplisert felt (nettverk av sykkelnoderuter med nummererte noder), gjør endringer i relasjoner, skriver til en fil som kan limes til wikien. Analyserer ruter, men også nettverk av ruter eller samlinger av nettverk av ruter, avhengig av valget i JOSM når skriptet ble kjørt.
- AutoAddIntersections (trenger UtilsPlugin2) - Legger til en kølytter for kommandoer som vil utføre utilsplugin2's AddNodesAtIntersections-kommando etter å ha møtt Extrude-kommandoen. (Se #7991)
Kjør én gang per JOSM-økt.
Avanserte innstillinger
Søk etter scripting.
understreng.
Tilbake til Tilleggshjelp
Tilbake til Hovedhjelp