Skip to content

Pythonista

oivron edited this page Sep 10, 2020 · 9 revisions

Skjermdump av Pythonista

Pythonista er et utviklingsmiljø for å skrive Python-script for iOS på iPad eller iPhone. Den inneholder alle verktøy du har behov for, blant annet automatiske code completion, debugger og konsoll.

Tilgjengelighet for synshemmede

Det finnes en del tilpasningsmuligheter i appen. Du kan for eksempel velge blant flere themes. Flere av dem har ganske god kontrast mellom tekst og bakgrunn. Du kan også velge mellom ulike skrifttyper og skriftstørrelser, men det ser ut til at dette bare gjelder for editoren. All annen tekst forblir upåvirket av slike endringer. Når du bruker appen med eksternt tastatur, er en del hurtigtaster tilgjengelig.

For blinde anbefaler vi å bruke leselist med punkttastatur. Det er mulig å bruke appen kun med eksternt tastatur, men det er tyngre å jobbe på denne måten. Pythonista med leselist og VoiceOver fungerer ganske bra. Har eleven leselist med punkttastatur, finnes alle VoiceOvers standard hurtigtaster tilgjengelig.

Tilpasninger i Pythonista

Gå til Bibliotek. Velg for eksempel This iPad fra Script library. Trykk på de tre prikkene (…) helt nederst. Slå av Thumbnail Previews. Dette gjør at det ser ryddigere ut, men spiller ingen rolle for VoiceOver.

For andre relevante tilpasninger: Gå til Bibliotek og trykk på tannhjulet nederst i skjermbildet:

  • Theme: tilbyr ulike fargeoppsett med ulike grad av kontrast.
  • Code Font: endring av skrifttype og størrelse.
  • Keyboard & Typing: Automatic character pairs (standard på). Det betyr for eksempel at hvis man skriver en venstre parentes, vil den automatisk etterfølges av en høyre parentes. Og skriver man et anførselstegn, kommer det automatisk ett til. Dette kan være nyttig, men det er viktig at man er klar over virkemåten til denne funksjonen.

Generelt

Appen er testet på to ulike måter: Med iPad og Bluetooth-tastatur, samt med iPad og leselist. I det første tilfellet ved hjelp av dra og trykk på iPad i kombinasjon med skriving på tastaturet. I det andre tilfellet har leselista blitt brukt til all skriving og alle kommandoer. Det anbefales å bruke leselist.

Det er viktig å være klar over at Pythonista virker forskjellig avhengig av om du bruker eksternt tastatur eller ikke:

  • Når eksternt tastatur eller leselist er koblet til, skjules skjermtastaturet.
  • Code completion i redigering av filer vises på et annet sted når tastatur er tilkoblet.

Når VoiceOver er aktivert, kan du dobbelttrykke med to fingre for å veksle mellom konsoll og åpne filer (det vil si editor). NB! Av en eller annen grunn vil denne kommandoen noen ganger åpne en dialog som spør om du ønsker å aktivere diktering. Det samme skjer hvis du utfører samme kommando på leselista.

Appen med eksternt tastatur

VoiceOver-kommandoer på eksternt tastatur:

  • VoiceOver-tast (VO): Ctrl+Tilvalg (eller Ctrl+Alt)
  • Flytt ett element til høyre: VO+Pil høyre
  • Flytt ett element til venstre: VO+Pil venstre
  • Aktiver element: VO+Mellomrom
  • Endre rotorinnstilling: VO+KOMMANDO+Pil høyre eller venstre
  • Endre verdi på valgt rotorinnstilling: VO+KOMMANDO+Pil opp eller ned. (Bør unngås siden den åpner en hjelpedialog. Sveip heller opp eller ned direkte på skjermen.)
  • Gå til toppen av skjermen: VO+Fn+Pil venstre.
  • Gå til bunnen av skjermen: VO+Fn+Pil høyre.

Hurtigtaster på eksternt tastatur

Common keyboard shortcuts (these work in all text areas on iOS):

  • Command + X – Cut
  • Command + C – Copy
  • Command + V – Paste
  • Command + Z – Undo
  • Command + Shift + Z – Redo
  • Command + A – Select All

Pythonista keyboard shortcuts:

  • Command + R – Run
  • Command + L – Show outline (you can navigate in the outline using the up/down arrow keys and return)
  • Command + D – Insert snippet
  • Command + J – Show/hide console panel
  • Command + return – Focus on editor
  • Command + F – Toggle search
  • Command + G – Show next search result
  • Command + Shift + G – Show previous search result
  • Command + K – Clear console output

Konsoll

Navigeringen er ok. Det finnes ingen beholdere du kan navigere på, men du kan aktivere Vertikal navigering i rotoren. Første gang du kommer inn i konsollen etter å ha startet appen, vil tekstfeltet helt nederst være inaktivt. VoiceOver sier "tekstfelt, dobbeltklikk for å redigere". Hvis du dobbeltklikker, får du fokus i tekstfeltet og kan skrive. Når du skriver vil det komme fram en liste rett over skrivefeltet med kodeforslag (code completion). Disse forlagene får du tilgang til med VO+Pil venstre eller ved å sveipe mot venstre på skjermen. For å velge et forslag, dobbelttrykk på skjermen eller trykke VO+Mellomrom.

Husk at når du trykker Enter for å kjøre kode eller velger fra lista over forslag, vil fokus ofte flyttes vekk fra skrivefeltet. Før du kan skrive videre, må du derfor flytte fokus tilbake til tekstfeltet.

Når du har utført en kodesnutt, kommer resultatet fram i output-delen av konsollen. Den kommer du til ved å bla bakover. For å lese output, kan det være hensiktsmessig å velge Linjer fra rotoren og så lese ved å dra nedover på skjermen. Det kan være lurt å tømme konsollvinduet for å unngå at det blir for mye tekst. VoiceOver leser fra toppen, mens siste output vises på bunnen av output-vinduet. Ved å tømme vinduet regelmessig, unngår du å måtte lese gjennom for mye output.

Biblioteket

Når du åpner Biblioteket, blir det liggende som et vindu ved siden av den åpne fila (editoren). Ulempen her er at hvis du navigerer på vanlig måte (sveip mot høyre), vil deler av filvinduet blande seg inn når du navigerer. Det er bedre å bruke Vertikal navigering. VO+Fn+Pil venstre tar deg til toppen av biblioteket. Derfra kan du navigere videre på vanlig måte. Ellers virker biblioteket ganske bra.

Filer (editor)

Editoren brukes til å redigere filer. Her kjenner vi igjen noen av de samme elementene som i konsollen: liste med forslag (code completion), en knapperad med en del vanlige tegn helt i bunnen og et tekstfelt som nå er mye større enn i konsollen. Det som er litt forvirrende, er at listen med forslag kan vises på to ulike måter og på to ulike steder. Enten som en vertikal liste ved stedet du redigerer (som i konsollen) eller som en horisontal liste rett over skjermtastaturet. Det ser ut som dette avhenger av om du bruker et eksternt tastatur eller ikke. VoiceOver leser den horisontale lista med forslag, men ikke den vertikale. Det er problematisk siden det er den sistnevnte som brukes med eksternt tastatur.

Appen med leselist

Det anbefales å slå av Aktiver diktering under Innstillinger > Generelt > Tastatur.

Anbefalte innstillinger under Innstillinger > Generelt > Tilgjengelighet > VoiceOver:

  • Rotor: Vertikal navigering
  • Detaljnivå > Tegnsetting: Alle
  • Skrivetilbakemelding: Tegn og ord
  • Tale: Norsk og engelsk under rotorspråk

Grensesnittet i appen er på engelsk, mens VoiceOver er på norsk. Koden du skriver kan også bli en blanding, så det kan være lurt å ha både norsk og engelsk tilgjengelig under Rotorspråk.

Kommandoer

Leselistkommandoer med kombinasjon av punkttaster og mellomrom er standard i VoiceOver. En fullstendig oversikt finnes på nettsiden til Apple. Nedenfor finner du et utvalg. De to siste under gjelder spesielt for Focus Blue leselist. For andre leselister kan det finnes tilsvarende.

  • Vis/skjul skjermtastatur: punkt 146 + mellomrom
  • Topp av skjerm: punkt 123 + mellomrom
  • Bunn av skjerm: punkt 456 + mellomrom
  • Marker forrige rotorinnstilling: punkt 23 + mellomrom
  • Marker neste rotorinnstilling: punkt 56 + mellomrom
  • Gå til forrige objekt vha. rotorinnst.: punkt 3 + mellomrom
  • Gå til neste objekt vha. rotorinnst.: punkt 6 + mellomrom
  • Aktiver slettetast: punkt 145 + mellomrom eller: punkt 7 + mellomrom
  • Aktiver Enter: punkt 15 + mellomrom eller: punkt 8 + mellomrom
  • Bytt mellom konsoll og fil (Hide panel): høyre konkave rundknapp
  • Flytt innsettingspunkt: rund knapp til høyre for markørhenterne

Konsoll

Det er sannsynligvis en fordel om du beholder standardinnstillingen for Dock/undock console panel (knapp nummer to når du er i konsollvinduet). En situasjon der skjermbildet er delt mellom konsoll og fil vil være vanskeligere å jobbe med.

Console output er området der input og output vises, men det er ikke her du skriver. Console output viser resultatet av hva du gjør. I nedre del av skjermbildet ligger et tekstfelt som brukes til å taste inn kode og til å gi input hvis programkoden ber om det.

Naviger mellom tekstfeltet nederst og console output ved hjelp av Vertikal navigering i rotor. Skriving i tekstfeltet er hensiktsmessig med punkttastaturet. Det kommer fram en liste med forslag (code completion) på grunnlag av det du skriver. For å lese forslagene kan du navigere ved hjelp av de vanlige navigeringstastene. Først bakover, for å komme forbi en progress bar som noen ganger ligger rett over tekstfeltet, og så videre bakover eller framover for å gå henholdsvis opp eller ned i lista. Når du velger fra lista over forslagene, hender det at fokus flyttes til et annet sted på skjermen. Skrivemerket står fremdeles i tekstfeltet nederst, altså der du skriver koden. Du kan bruke vertikal navigering for å komme tilbake til tekstfeltet.

Når du har utført en kommando, kan du gå til console output for å lese resultatet av kommandoen. Talen leser da automatisk innholdet av console output. Leselista kan for eksempel flyttes ved hjelp av vertikal navigering. Deretter kan du lese console output på vanlig måte med kommandoen neste element. Legg merke til at både talen og leselista leser console output fra toppen, mens du må navigere deg til bunnen for å få lest den siste outputen. På grunn av dette kan det lønne seg tømme console output-vinduet slik at du unngår å få for mye tekst.

Når leselista skal vise forskjellig informasjon suksessivt, tar det gjerne litt tid. Før du kan gå videre med leselista, må du vente et par sekunder før innholdet oppdateres.

Biblioteket

Biblioteket åpnes med knappen Show files helt øverst i skjermbildet. (Dette forutsetter at du befinner deg i editoren.) Når du åpner biblioteket, blir det liggende som et vindu til venstre for editoren. Du får en vertikal deling av skjermbildet. Hvis du leser på vanlig måte med neste element, må du gå gjennom hele editoren før du kommer til biblioteket. Når du står på knappen Show files, kan du bruke kommandoen for å gå til toppen av skjermen. Da kommer du til toppen av biblioteket. Derfra kan du navigere ved å velge Vertikal navigering i rotoren. Da når du alle elementene bortsett fra knappen Add som ligger nederst til venstre. Denne kan nås ved å navigere til forrige element når du har nådd knappen Settings. Vær oppmerksom på at knappen Settings bare identifiseres av talen som "knapp".

En del av valgene i Biblioteket åpner dialogbokser. Disse ser ut til å være greit tilgjengelige.

Biblioteket lukkes på samme måte som det åpnes, dvs. med knappen Show files.

Filer (editor)

Editoren har noen av de samme elementene som konsollen: liste med forslag (code completion), en knapperad med en del vanlige tegn helt i bunnen og et tekstfelt som nå er mye større enn i konsollen. Det som er litt forvirrende, er at lista med forslag (code completion) kan vises på to ulike måter og på to ulike steder. Enten som en vertikal liste ved stedet du redigerer (på samme måte som i konsollen). Eller som en horisontal liste rett over skjermtastaturet (hvis det er framme). Når du bruker leselist, er skjermtastaturet normalt ikke framme og da er det den vertikale listen du forholder deg til. Det ser ikke ut til å være mulig å få tak i denne listen med VoiceOver. Løsningen kan være å slå på skjermtastaturet for å få fram den horisontale listen. Denne har VoiceOver (både tale og leselist) tilgang til. Lista ligger over skjermtastaturet, men under selve editorvinduet, derfor må man typisk bla ved hjelp av neste element for å finne den.

Annet

Klikk for å utvide.

Pythonista

  • Nettsted: omz-software.com/pythonista
  • Plattformer: iOS
  • Installasjon: Vanlig app
  • Bruksområde: IDE for å skrive Python-script
  • Spesielle forhold: Ikke norsk versjon

Testmiljø

  • Pythonista 3.2
  • iPad
  • iOS 12.0
  • Logitech Bluetooth-tastatur
  • Focus 40 Blue leselist