Tekstieditori

1. Mikä on tekstieditori

Ohjelmakoodi on muotoilematonta tekstiä (engl. plain text), jota muokataan käyttäen tekstieditoria (engl. plain text editor).

Ohjelmointi 1 -kurssilla tekstieditorin käyttämisellä havainnollisestaan sitä, että ohjelman tekeminen ja käynnistäminen on prosessi: lähdekoodin kirjoittaminen (.cs-päätteinen tiedosto), lähdekoodin kääntäminen, mahdollisten virheiden tulkinta ja korjaaminen sekä uudelleen kääntäminen, ja lopulta ajettavan ohjelman (.exe) käynnistäminen.

Tällä kurssilla siirrymme pelkän tekstieditorin käyttämisestä melko nopeasti integroituun kehitysympäristöön (ks. kehitystyökalut). Integroitu kehitysmpäristö sisältää niin tekstieditorin, kuin muita ohjelmointiin tarvittavia työkaluja. Kuitenkin tekstieditorin käytön osaaminen on kuitenkin ohjelmoijalle hyvin oleellinen taito.

Huomaa, että Microsoft Word ei ole tekstieditori, emmekä käytä Ohjelmointi 1 -kurssilla sitä mihinkään – ellei erityisesti jostain syystä pyydetä.

2. Tekstieditorin valinta

Tällä kurssilla tekstieditoriksi kelpaa periaatteessa mikä tahansa millä voi tuottaa ja muokata tekstitiedostoja. Editoreissa on eroja, jotka ovat toisille merkityksellisiä.

Kirjoitushetkellä (01/2023) eräitä suosittuja tekstieditoreja ovat Visual Studio Code, Sublime Text, Notepad++, Emacs ja Vim. Jokaisesta edellä mainituista löytyy versiot kullekin käyttöjärjestelmälle.

Alla muutamia esimerkkejä tekstieditoreista, joista voit valita itsellesi mielekkään. Ohjelmointi 1 -kurssin kannalta voit oikeastaan valita näistä mikä vaan itsestä tuntuu parhaalta.

# vscode

3. Visual Studio Code

Huomaa, että tämä ei ole sama asia kuin Visual Studio.

4. Notepad++

Notepad++
Notepad++
# nppvideo

5. Sublime Text

Sublime
Sublime
  • Windows, Linux ja macOS
  • Maksullinen, mutta rajaton ilmainen kokeiluaika ilman toiminnallisia rajoitteita

6. Emacs

(gnu.org/software/emacs)

EmacsWin EmacsMac

  • tukee kaikkia yleisiä ja harvinaisempiakin ohjelmointi- ja kuvauskieliä, jos ei valmiina, niin lisäosien (määrä MELPAssa >4000) avulla

asentaminen

7. Vim

(http://www.vim.org)

VimWin VimMac

  • Modaalinen, toisin kuin useimmat muut tekstieditorit.
    • Normaalitila/komentomoodi: liikkuminen, kopioiminen, poistaminen jne.
    • Tekstinsyöttötila: kirjoittaminen kuten yleensä muissa editoreissa vakiona.
    • Visuaalinen tila: valitaan tekstiä maalaamalla näppäinkomennoilla.
  • Lataa Windowsille
  • macOS: Valmiina. GUI-versio.
  • iOS: AppStoressa.
  • Esc-näppäimestä.
    • ei valitettavasti toimi iOS vimissä (31.12.2012)

8. Notepad

  • Käytä tätä vain hätätilassa, mutta ei ikinä ohjelmointiin
  • Huomaa, että notepad vaihtaa tiedoston tarkentimeksi aina .txt, jos ei tallennusvaiheessa huomaa vaihtaa *.txt tilalle *.*.
  • Voit vaihtaa Windowsin oletuseditorin pois Notepadista: Klikkaa jonkin txt-tiedoston päällä hiiren oikeaa -> Open With (Avaa sovelluksessa) -> Choose default program (Valitse oletusohjelma) -> Valitse haluamasi ohjelma ja laita täppä "Always use the selected program..." -kohtaan ("Käytä aina avatessa...")

9. TextEdit / TeXturi

  • macOS
  • Vakio-tekstieditori, vastaa Windowsin Notepadia.
  • Vain kevyeen kirjoitteluun. Ohjelmointikäyttöön on parempi valita siihen sopiva editori, esim. yllä vaihtoehdot 5–9.
  • Voit avata editorin myös komentoriviltä
  • Linkki Applen omiin TeXturi-ohjeisiin
  • ota pois isolla kirjaimella aloittaminen:
    • Omppu-menu
    • Järjestelmäasetukset
    • Näppäimistö
    • poista ruksikohdasta Automaattisesti isot alkukirjaimet
# npp

11. Käynnistäminen komentoriviltä

Kannattanee tehdä itselle komentojono (engl. batch, jonka tiedostotunniste on .bat), jolla voit käynnistää editorin komentoriviltä, esimerkiksi kirjoittamalla npp Lumiukko.cs (tämä komento avaisi Notepad++:n), tai st HelloWorld.cs (avaisi Sublime Textin).

Miten tehdään komentojono itse? Windows komentokehote työkalu on, mutta mitä siihen kirjoitetaan?

13 Jan 21

Täällä on siihen hyvät ohjeet. -AJL

13 Jan 21

These are the current permissions for this document; please modify if needed. You can always modify these permissions from the manage page.