X:n leikepöydät

Linux.fista
Siirry navigaatioon Siirry hakuun
Tulostettavaa versiota ei enää tueta ja siinä voi olla renderöintivirheitä. Päivitä selaimesi kirjanmerkit ja käytä selaimen tavallista tulostustoimintoa sen sijaan.

X:n leikepöydät eroavat esimerkiksi Windowsin vastaavista. Leikepöytiä on useampia ja niiden sisältöä ei säilötä palvelimella vaan alkuperäisessä sovelluksessa.

Kun hiirellä maalaa tekstiä, sovellus yleensä ilmoittaa X-palvelimelle, että se ottaa haltuunsa olion ("selection") nimeltä "Primary selection". Kun toisessa sovelluksessa painetaan hiiren keskinappia, tämä saa X-palvelimen kautta olion haltijalta maalatun tekstin. Tämä on perinteisesti eniten käytetty tapa siirtää tekstiä sovelluksesta toiselle.

Kun käyttää toimintoa "leikkaa" tai "kopioi" jossakin sovelluksessa, sovellus ottaa hallintaansa "Clipboard"-nimisen olion. Kun toisessa sovelluksessa käyttää "liimaa"-toimintoa, olion haltija vastaavasti välittää leikatun kappaleen tälle toiselle sovellukselle. Tämä tapa toimii Windows- ja MAC- käyttäjille tuttuun tapaan, tietyin poikkeuksin.

Koska leikepöydästä huolehtii aina jokin sovellus, ei itse X-palvelin, sovelluksen sulkeminen hävittää leikepöydän sisällön. On olemassa ohjelmia (esim. xclipboard, xselection, glipper ja klipper), jotka kopioivat leikepöydän sisällöt ja ottavat leikepöydät haltuunsa. Tämä lisää verkkoliikennettä (jos X:ää käyttää verkon välityksellä), mutta mahdollistaa leikepöydän historiatoiminnot.

Koska leikepöydän sisältö kopioidaan vasta eri pyynnöstä, sovellukset voivat neuvotella sopivasta muodosta: sisällön voi siirtää eri merkistöissä, eri rivinvaihtokäytännöillä, png-kuvana, postskriptinä, alkuperäisessä muodossaan, pikselöitynä, URL-osoitteena jne. Ominaisuutta ei ole vielä täysin standardoitu ja hyödynnetty, mutta varsinkin sovelluskehittäjien kannattaa huomioida nämä mahdollisuudet.

Leikepöytiä voi olla useita. Kahden mainitun lisäksi on "Secondary selection", jota harvoin käytetään, ja mahdollisesti muitakin.

"Drag'n Drop" (kuvakkeiden raahaus hiirellä ohjelmasta toiseen) käyttää myös leikepöytiä, mutta osoittimen muodon muuttamiseksi siirron aikana tarvitaan lisäviestintää.

X:ssä on lisäksi "cut buffer" -toiminto, mutta tätä on pitkään pidetty vanhentuneena, eikä sitä suositella käytettäväksi. Ikivanhojen sovellusten kanssa voi käyttää ohjelmaa xcutsel, joka osaa kopioida tekstiä näiden järjestelmien välillä.

Käytettäessä ohjelmia muilla koneilla tekstin tai muun datan kopiointi sovelluksesta toiseen voi olla tietoturvaongelma: peukaloitu ohjelma voi halutun tekstin sijaan lähettää esimerkiksi komentotulkin komentoja. Siksi nykyiset X-palvelimet eivät joissakin tilanteissa suostu antamaan leikepöytää toisen koneen sovelluksille. Luotettavat koneet voi määritellä esimerkiksi SSH:n asetustiedostoissa.

Katso myös