Näppäimet

Voit mukauttaa näppäimistötoimintoja Eclipse-ympäristössä laajasti oletusasetussivulla Yleiset > Näppäimet. Eclipse-ohjelmiston sisällä näppäinpainallukset ja näppäilysarjat määritetään toteuttamaan tietyt komennot.

Näppäinten painallukset, näppäilysarjat ja näppäinten sidonnat

"Näppäimen painallus" tarkoittaa näppäimistön näppäimen painamista, kun mahdollisesti jokin (tai jotkin) seuraavista muokkausnäppäimistä on samanaikaisesti painettuna: Ctrl, Alt (Macintosh-käyttöjärjestelmässä optionäppäin, vaihtonäppäin tai komentonäppäin (vain Macintosh-käyttöjärjestelmässä.) Ctrl-näppäimen pitäminen painettuna ja A-näppäimen painaminen esimerkiksi tuottaa näppäimen painalluksen Ctrl+A. Pelkkien muokkausnäppäinten painamista ei pidetä näppäimen painalluksena.

"Näppäilysarja" muodostuu vähintään yhdestä näppäimen painalluksesta. Emacs-ympäristössä komennot on perinteisesti liitetty kahden tai kolmen näppäinpainalluksen sarjaan. Emacs-ympäristössä esimerkiksi Sulje kaikki -komennon normaali näppäilysarja on Ctrl+X Ctrl+C. Voit syöttää tämän näppäilysarjan painamalla ensin näppäimen painalluksen Ctrl+X ja sitten Ctrl+C. Eclipse-ohjelmiston tukemien näppäinsarjojen pituutta ei ole rajoitettu, mutta on suositeltavaa tehdä pikanäppäinpainalluksista enintään neljän näppäinpainalluksen pituisia (tai lyhyempiä).

"Näppäinsidonta" tarkoittaa näppäilysarjan sitomista komentoon.

Skeemat

Skeema on joukko sidontoja. Eclipse-ohjelmistossa on kaksi skeemaa:

Oletusarvo-skeema on joukko yleisiä sidontoja, jotka ovat monessa tapauksessa yleisesti käytettyjen komentojen perinteisiä näppäilysarjoja. Esimerkiksi näppäilysarja Ctrl+A on liitetty komentoon Valitse kaikki ja näppäilysarja Ctrl+S on liitetty komentoon Tallenna.

Emacs-skeema sisältää joukon näppäinsidontoja, jotka ovat tuttuja Emacs-käyttäjille. Esimerkiksi näppäilysarja Ctrl+X H on liitetty komentoon Valitse kaikki ja näppäilysarja Ctrl+X S on liitetty komentoon Tallenna.

On tärkeää ymmärtää, miksi Emacs-skeemaa kutsutaan Oletusarvo-skeeman laajennukseksi. Emacs-skeema ei sisällä kaikkia sidontoja, toisin kuin Oletusarvo-skeema. Se pikemminkin lainaa Oletusarvo-skeeman tietoja, kun mahdollista, ja määrittää erilliset Emacs-tyyliset sidonnat vain, jos ne poikkeavat Oletusarvo-skeemasta. Yleensä Emacs-näppäilysarjoja on liitetty vain tunnetuimpiin komentoihin, kuten Valitse kaikki, Tallenna ja niin edelleen.

Voit valita itsellesi sopivimman skeeman muuttamalla näppäinten oletusasetussivun Skeema-asetusta. Jos valitset Oletusarvo-skeeman, järjestelmä ohittaa kaikki Emacs-sidonnat. Jos valitset Emacs-skeeman, järjestelmä käyttää ristiriitatapauksissa Emacs-näppäilysarjoja Oletusarvo-skeeman näppäilysarjan sijasta.

Kontekstit

Näppäinsidonnat voivat vaihdella Eclipse-ohjelmiston kontekstin mukaan.

Joskus aktiivinen osa saattaa olla esimerkiksi Java-tiedostojen muokkausohjelma, jolloin tarvitaan erilaisia näppäilysarjojen määrityksiä kuin jos aktiivinen osa olisi HTML-tiedostojen muokkausohjelma. Englanninkielisessä ympäristössä esimerkiksi Ctrl+B on määritetty Java-tiedostojen muokkauksessa Kokoa-komennolle, kun taas HTML-tiedostojen muokkauksessa Ctrl+B on määritetty komennolle Lihavoi teksti. Konteksti määrittyy yleensä aktiivisen osan mukaan, mutta myös aktiivinen ikkuna tai valintaikkuna saattaa vaikuttaa. Jos aktiivinen osa ei valitse kontekstia, työympäristö määrittää aktiiviseksi kontekstiksi Ikkunat.

Eclipse-ohjelmistossa on yhdeksän erilaista kontekstia:

Kokoonpanotiedostojen tapaan myös kontekstit voivat laajentaa toisia konteksteja. Esimerkiksi Java-lähteen muokkaus -konteksti lainaa näppäinsidontoja Tekstin muokkaus -kontekstista, joka puolestaan lainaa näppäinsidontoja Ikkunat-kontekstista.

Huomautus: Näppäinsidontaa ei ole suositeltavaa nostaa sellaiseen kontekstiin, jota näppäinsidonta laajentaa. Tekstin muokkaus -näppäinsidontaa ei esimerkiksi tule siirtää Valintaikkunat ja ikkunat -kontekstiin. Siirrolla saattaa olla odottamattomia seurauksia.

Jotkin näppäinsidonnat saattavat toimia valintaikkunoissa. Tällaiset näppäinsidonnat on määritetty Valintaikkunat ja ikkunat -kontekstiin. Eräs esimerkki tällaisesta näppäinsidonnasta on Leikkaa-komennon näppäinsidonta. Näitä näppäinsidontoja voi muuttaa. Voit esimerkiksi määrittää Ctrl+X-näppäinyhdistelmän leikkaamaan valintaikkunoissa ja näppäinyhdistelmän Ctrl+W leikkaamaan ikkunoissa.

Käyttöjärjestelmä ja paikallistunnus

Näppäinsidonnat saattavat vaihdella käyttöjärjestelmän ja paikallistunnuksen mukaan. Macintosh-käyttöjärjestelmässä Tallenna-komennon näppäinyhdistelmä on Komento+S, ei tavallinen Ctrl+S. Kiinalaista paikallistunnusta (zh) käytettäessä Sisällönhallinnan aputoiminnolle on määritetty näppäinyhdistelmä Alt+/ tavallisen yhdistelmän Ctrl+välilyönti sijasta.

Järjestelmä määrittää nykyisen käyttöjärjestelmän ja paikallistunnuksen Eclipse-ohjelmiston käynnistyksen yhteydessä, eivätkä tiedot muutu Eclipse-ilmentymän aikana.

Näppäinsidontojen mukautus

Näppäinsidontoja mukautettaessa tulee ottaa huomioon monen näppäimen näppäilysarjat, skeemat ja kontekstit. Mukauttamisen helpottamiseksi kaikki näppäinten mukautukset tehdään oletusasetussivulla Yleiset > Näppäimet.

Näppäimet-oletusasetussivu, jossa Emacs on käytössä oleva kokoonpano ja Sulje-komento on valittuna.

Tässä esimerkissä skeemaksi on valittu Emacs-vaihtoehto ja komentoluettelosta on valittu komento Sulje. Näytössä on komentoon liittyviä tietoja, kuten nykyiset näppäinsidonnat.

Huomaa, että Sulje-komentoon liittyy kolme näppäilysarjaa: Ctrl+F4 ja Ctrl+W ovat käytössä Oletusarvo-skeemassa ja Ctrl+X K puolestaan Emacs-skeemassa. Molemmat kuuluvat Ikkunat-kontekstiin. Jos siis käyttäjä määrittää käyttöön Oletusarvo-skeeman, Sulje-komennolle määritetään näppäilysarjat Ctrl+F4 ja Ctrl+W, mutta ei näppäilysarjaa Ctrl+X K. Jos kuitenkin määrität skeeman Emacs, järjestelmä määrittää Sulje-komennolle näppäilysarjan Ctrl+X K. Emacs-skeema sisältää näppäinsidontoja Oletusarvo-skeemasta, joten järjestelmä määrittää Sulje-komennolle myös näppäilysarjat Ctrl+F4 ja Ctrl+W, ellei näille näppäilysarjoille ole määritetty toista komentoa Emacs-skeemassa. Tämän esimerkin Ctrl+W-näppäilysarja on sidottu Emacs-skeemassa Leikkaa-komentoon.

Sulje-komennolle määritettyjen näppäilysarjojen luettelon alapuolella on kohta, jossa käyttäjä voi lisätä tai poistaa näppäinsidontoja. Oletusarvon mukaan kontekstina on Ikkunat.

Kun lisäyskohtaan kirjoitetaan näppäilysarja Ctrl+W, Lisää-painike tulee käyttöön. Lisäksi Lisää-painikkeen alapuolelle tulee luettelo kaikista komennoista, joille näppäilysarja Ctrl+W on jo määritetty. Kuten on nähtävissä, näppäilysarja Ctrl+W on parhaillaan määritetty komennolle Leikkaa kontekstissa Ikkunat ja valintaikkunat. Lisää-painiketta napsauttamalla näppäilysarja Ctrl+W liitetään Sulje-komentoon.

Näppäinsidontojen dynaaminen luonne

Näppäinsidonnat ovat peräisin lisäosista, ja Eclipse-ohjelmistossa lisäosia voi lisätä ja poistaa. Tällöin myös näiden lisäosien esittelemät näppäinsidonnat lisätään tai poistetaan. Eclipse-ympäristö tallentaa mukautetut näppäinsidonnat tämän välttämiseksi. Edellä esitetyssä esimerkissä näppäilysarja Ctrl+Alt+W määritettiin Leikkaa-komennolle Emacs-skeemassa. Oletetaan, että asennat uuden lisäosan, jossa jollekin komennolle on määritetty näppäilysarja Ctrl+Alt+W. Eclipse-ympäristö säilyttää Leikkaa-toiminnon liitoksen.

Ristiriitatilanteiden ratkaisu

Käytettävissä on vain rajoitettu määrä näppäimen painalluksia, mutta komentoja on valtavan paljon. Skeema, konteksti, käyttöjärjestelmä ja paikallistunnus jakavat näppäilysarjojen määritykset sellaisiin kohdealueisiin, joissa ne eivät aiheuta ristiriitoja keskenään. Edellä käsitelty näppäilysarjan Ctrl+B tilanne olisi hankala ilman konteksteja. Yksi lisäosa määrittää näppäilysarjan Ctrl+B Kokoa-komennolle, toinen taas määrittää näppäilysarjan Ctrl+B komennolle Lihavoi teksti. Kuinka Eclipse voisi ratkaista ristiriitatilanteen oikein?

Edellä mainitut mekanismit vähentävät ristiriitoja huomattavasti, mutta eivät poista niitä kokonaan. Kaksi erillistä lisäosaa saattaa määrittää saman näppäilysarjan eri komennoille samassa kontekstissa, skeemassa ja käyttöjärjestelmässä samaa paikallistunnusta käytettäessä. Oletetaan esimerkiksi, että lisäosa määrittää eräälle komennolleen näppäilysarjan Ctrl+F4 kontekstissa Ikkunat ja skeemassa Oletusarvo. Tämä on ristiriidassa sen kanssa, että Eclipse on varannut näppäilysarjan Ctrl+F4 Sulje-komennolle samassa kontekstissa ja skeemassa.

Kyseessä on ristiriita. Ei ole järkevää toteuttaa molempia komentoja, eikä järjestelmän kannata myöskään valita jompaakumpaa komentoa tälle näppäinsarjalle. Ainoa oikea vaihtoehto on ohittaa molemmat näppäinsidonnat, jolloin näppäilysarja Ctrl+F4 on hyödytön tässä kontekstissa ja skeemassa.

Voit ratkaista tällaiset ristiriitatilanteet määrittämällä näppäilysarjan vain toisen komennon näppäilysarjaksi.

Toinen ristiriitatyyppi saattaa aiheutua monen näppäimen näppäilysarjasta. Emacs-skeemassa on esimerkiksi useita monen näppäimen näppäilysarjoja, jotka alkavat näppäimen painalluksella Ctrl+X. Näppäilysarja Ctrl+X K on määritetty Sulje-komennolle. Ctrl+X H on liitetty komentoon Valitse kaikki.

Kuten edellä mainittiin, Emacs-skeema lainaa näppäinsidontoja Oletusarvo-skeemasta. Oletusarvo-skeemassa Ctrl+X on määritetty komennolle Leikkaa. Emacs-skeema ei erikseen määritä näppäilysarjaa Ctrl+X, mutta näppäimen painallusta Ctrl+X käytetään useiden näppäinsidontojen osana. Kun Emacs-skeemassa painetaan Ctrl+X, näppäilysarja voi jatkua monella eri tavalla ja johtaa useisiin eri komentoihin. Tällöin käyttäjä tuskin odottaa järjestelmän kutsuvan Leikkaa-toimintoa.

Tällaisessa ristiriitatyypissä sääntönä on se, että järjestelmä ohittaa Leikkaa-komennolle määritetyn Ctrl+X-näppäilysarjan. Muussa tapauksessa useiden Emacs-kokoonpanomäärityksen näppäinsidontojen käyttö olisi mahdotonta.

Aiheeseen liittyviä käsitteitä
Eclipsen helppokäyttötoiminnot
Näppäinsidontojen muuttaminen
Ohje

Aiheeseen liittyviä ohjeita
Eclipsen fontti- ja väriasetukset