[viesti Survo-keskustelupalstalla (2001-2013)]
Kirjoittaja: | Seppo Mustonen |
---|---|
Sähköposti: | - |
Päiväys: | 9.12.2003 9:29 |
Survossa on monenlaisia keinoja keskeisen työtilan, toimituskentän siivoamiseen. Tähän käytetään mm. komentoja SCRATCH, CLEAR, ERASE ja DELETE sekä nappeja DEL (F10), alt-F10 ja alt-F4 (tekstilohkojen siirto ja poisto). Ainoa valikoituun rivien poistoon tarkoitettu väline (ellen nyt muista väärin) on ollut sukrokomento /DELLIN <merkki> jolla poistetaan komentorivin alapuolelta kaikki ne rivit, joissa on <merkki> kontrollisarakkeessa. Varsinkin uuden FILE MEDIT:in yhteydessä (tietojen poiminta FILE MEDIT -sivuilta EDT-tiedostoon) huomasin, että on tarvetta yleiseen, valikoivaan rivien poistokomentoon, jonka nimeksi otin LINEDEL. Päävaihtoehdot ovat seuraavat: LINEDEL L1,L2 poistaa rivit L1-L2, jolloin rivi L2+1 siirtyy rivin L1 paikalle, L2+2 rivin L1+1 paikalle jne. LINEDEL L1,L2,EMPTY poistaa kaikki tyhjät rivit välillä L1-L2. LINEDEL L1,L2,<merkkijono> / Esim. LINEDEL CUR+1,END,ABC poistaa väliltä L1-L2 kaikki sellaiset rivit, joiden kontrolli- sarakkeessa on jokin merkkijonoon kuuluvista merkeistä (esimerkissä A,B tai C). Tämä on suora yleistys /DELLIN-sukrosta ja sitä olennaisesti nopeampi. LINEDEL L1,L2,"<merkkijono>" / Huom. lainausmerkit! poistaa väliltä L1-L2 ne rivit joilla esiintyy <merkkijono> täsmälleen komennossa esitetyssä muodossa. <merkkijono>lla voi olla myös varjo- merkkejä, jolloin poisto kohdistuu vain niihin riveihin, joissa myös varjomerkit täsmäävät. LINEDEL L1,L2,STEP,k / missä k on positiivinen kokonaisluku poistaa rivit L1,L1+k,L1+2k,L1+3k,... riviin L2 asti. Lisäksi kaikissa vaihtoehdoissa (EMPTY-muotoa lukuunottamatta, jossa se on aiheetonta) on lupa antaa täsmennys DEL_SAVE=<uuden_EDT-tiedoston_nimi> jolloin poistetut rivit tallentuvat suoraan tuon tiedoston alkuun. Näin FILEDEL sopii myös toimituskentän rivien valikoituun tallennukseen, mikä vielä lisännee sen käyttöarvoa. Seuraava kontrollimerkkien perusteella tapahtuva poisto antaa käsityksen LINEDEL:in toiminnasta: 1 *SAVE DELKOE 2 * 3 *LINEDEL 5,12,A B / DEL_SAVE=DEL1 4 * 5 * Rivi 5 6 A Rivi 6 7 * Rivi 7 8 B Rivi 8 9 B Rivi 9 10 C Rivi 10 11 Rivi 11 (Myös tämä poistuu, koska merkkijono sisälsi "tyhjän".) 12 * Rivi 12 13 A Rivi 13 14 B Rivi 14 Kun rivillä 3 oleva LINEDEL aktivoidaan, toimituskentän alku muuntuu seuraavaksi: 1 *SAVE DELKOE 2 * 3 *LINEDEL 5,12,A B / DEL_SAVE=DEL1 4 * 5 * Rivi 5 6 * Rivi 7 7 C Rivi 10 8 * Rivi 12 9 A Rivi 13 10 B Rivi 14 ja poistetut rivit löytyvät tiedostosta DEL1.EDT muodossa 1 *SAVE DEL1 / Deleted lines from DELKOE 2 A Rivi 6 3 B Rivi 8 4 B Rivi 9 5 Rivi 11 (Myös tämä poistuu, koska merkkijono sisälsi "tyhjän".) Koska alkuperäisen toimituskentän ensimmäisellä rivillä oli talletus- komento SAVE DELKOE, kentän nimi näkyy DEL1-kentän ensirivin kommentissa. Vaikka rivejä poistuikin toimituskentästä DELKOE, vastaava talletettu muoto on vielä ennallaan eikä siis FILEDEL ole kajonnut itse tiedostoon. Jos käyttäjä haluaa tallettaa syntyneen supistuneen kentän, hänen tulee luonnollisesti aktivoida komento SAVE DELKOE. LINEDEL tulee olemaan mukana SURVO MM:ssä versiosta 2.06 eteenpäin. Kertokaa ja perustelkaa, jos haluatte vielä muitakin ominaisuuksia LINEDEL-komennolle. Seppo Mustonen
Vastaukset: |
---|
Survo-keskustelupalstan (2001-2013) viestit arkistoitiin aika ajoin sukrolla, joka automaattisesti rakensi viesteistä (yli 1600 kpl) HTML-muotoisen sivukokonaisuuden. Vuoden 2013 alusta Survo-keskustelua on jatkettu entistäkin aktiivisemmin osoitteessa forum.survo.fi. Tervetuloa mukaan!