Zoek en Vervang een tekstblok met PE

Op google zie ik regelmatig de vraag voorbij komen ‘ zoek en vervang een tekstblok ‘. Het komt in allerlei varianten voor en in het Engels is het helemaal een veelvoorkomende vraag ‘search and replace a textblock ‘. Vaak komt er nog achteraan dat de opdracht herhaaldelijk moet worden uitgevoerd (in een batch).

Ik heb ook regelmatig gekeken naar programma’s die dat kunnen. Ik zocht dan naar een Windows programma. Want het ideale programma heb ik al lange tijd in mij bezit. En er blijkt geen makkelijker en beter programma dan de oude vertrouwde Program Editor, oftewel PE, van voorheen WordPerfect. Het heeft voor velen waarschijnlijk maar één nadeel, het is een DOS-programma

Program Editor

De Program Editor wordt ten onrechte ook wel Wordperfect Editor genoemd. Ze zijn weliswaar grotendeels hetzelfde, in ieder geval voor de hier besproken functies. De program editor was echter onderdeel van het WP SHELL-pakket en WP editor kwam later uit als zelfstandig programma.

Je kunt allerlei handige dingen doen met de Program Editor (en met WP Editor). Waaronder dus zoek en vervang een tekstblok met herhaling, oftewel search and replace a textblock in batch.

Elke keer als ik het weer eens gebruik denk ik terug aan andere handige programmaatjes uit mijn computerbegintijd. Kleine programmaatjes waarmee je veel kon. Waarbij ik me dan bovendien afvraag waarom het tegenwoordig allemaal zo uitgebreid en groot moet. Terwijl zo’n recent programma de functionaliteit heeft die een gemiddeld mens nodig heeft en/of vol zit met functies die de meesten nauwelijks of niet gebruiken.

De Program Editor is slechts 57 kb groot. (dat is minder dan één volgeschreven bladzijde in Word. Moet je eens zien wat je daar allemaal mee kunt doen.

Zoek en vervang een tekstblok

Ok, één nadeel. De PE werkt alleen met ascii, platte tekst dus. Geschikt dus voor html- en txt-bestanden, niet voor Word en andere formaten. Met een tussenstap kun je dat probleem natuurlijk oplossen (exporteer onopgemaakte Word-bestand naar Dos-tekst).

De makkelijkste manier om zoek en vervang een tekstblok te doen is met een Makro. Daarmee kun je direct meerdere acties uitvoeren in een bestand.

Een opdracht

program-editor-01 bij uitleg zoek en vervangStel ik wil in meerdere bestanden diverse tekstblokken vervangen die wel allemaal dezelfde codes rondom het tekstblok hebben (bijvoorbeeld in een uitgepakt epub-bestand).

Dan start ik de Program Editor en ga (F5 – Enter) naar de directory (map) met de bestanden. Om altijd naar die directory te gaan type ik F5 en het daarna het = teken (gevolgd 2x Enter) en zoek dan de betreffende directory.

Ik open een html-bestand in de Editor en met Ctrl-F10 start ik de makrofunctie. Je kunt de Makro een naam geven bij ‘define makro’, maar een toetscombinatie is handiger, bijv Alt-K. Daarna kun je de Makro omschrijven, alleen handig als je de Makro vaker gaat gebruiken, dus druk op Enter. Alles wat je daarna doet wordt opgenomen tot je weer op Ctrl-F10 drukt.

Druk op F2 (zoeken) en type een unieke omschrijving om de tekst of codering te vinden waarmee je het begin van het tekstblok aangeeft. Stel bijv. ‘<a href=”www.mijn’. Wanneer je weer op F2 drukt zoekt de editor die tekst en zet de cursor achter de punt na ‘mijn’. Als je ook de unieke tekst wilt vervangen ga je eenvoudig met de cursor een aantal plaatsen terug (de makro neemt dat dus ook op).

Druk nu op Alt-F4 (blok) om selectieblok aan te zetten.

Daarna druk je opnieuw op F2 en typet een unieke omschrijving om de tekst of codering te vinden waarmee je het eind van het tekstblok aangeeft. Door weer op F2 te drukken gaat de editor naar de opgegeven tekst en zet de cursor erachter. Ga weer een paar plaatsen terug of vooruit tot je precies het tekstblok aangeeft dat je wilt vervangen.

Druk op Del om het tekstblok te verwijderen.

Type daarna de tekst die in de plaats wilt hebben van de verwijderde tekst en sluit af met Ctrl-F10 om de Makro-opname te stoppen.

Je kunt de nieuwe tekst opslaan met F7.

De volgorde nog even

  • Ctrl-F10 (makro definiëren) + toetscombinatie (bijv. Alt-K)
  • F2 (zoekfunctie aan)
  • Unieke omschrijving begin van tekstblok
  • F2 (zoeken)
  • Herpositionering cursor
  • Alt-F4 (blokselectie aanzetten)
  • F2 (zoekfunctie aan)
  • Unieke omschrijving eind van tekstblok
  • F2 (zoeken)
  • Herpositionering cursor
  • Del (verwijder blok)
  • Type de nieuwe tekst (of zet die er later in, zie hieronder Makro aanpassen)
  • Ctrl-F10 (beëindig opname makro)

ESC

Stel dat je het zoek en vervang in een lange tekst een aantal keren dezelfde Makro wilt uitvoeren (kan natuurlijk ook om een andere verandering uit te voeren), dan druk je op ESC en geeft het aantal keren dat de Makro moet worden herhaald. Type bijv. 25 en geef daarna de opgegeven toetscombinatie van de Makro.

Makro

program-editor-02 bij uitleg zoek en vervangHeb je fouten gemaakt bij het invoeren van de nieuwe test. Geen probleem, je kunt de Makro ook zelf aanpassen. Druk op F5 en zie daar je Makro staan (AltK.edm in het voorbeeld). Open je dat dan wijst de codering zich vanzelf. Je kunt hier codes en tekst veranderen.

Hiernaast een voorbeeld van bovenstaande code in AltP.edm. Je kunt de Makro aanpassen door Ctrl-PgUp. Dan verschijnt een scherm met de Makro-functies. Vaak is het handiger een andere Makro te maken en de gewenste codes te kopiëren. Je kunt bestanden in elkaar openen.

Je kunt als je de makro (of een andere tekst) bewerken terwijl je de andere tekst gewoon laat staan. Druk daartoe eerst op Shft-F3 ,waarmee een nieuw venster opent (je kunt 9 bestanden tegelijk open hebben, met Home+getal).

Etc.

Je kunt eindeloos gebruik maken van zoek en vervang en de talrijke andere mogelijkheden van de Program Editor. Soms is daarbij wat denkwerk nodig, zeker bij uitgebreidere klussen, maar uiteindelijk doet het alles waar je bij veel moderne Windows-programma niet uitkomt. En soms moet je tussenstappen inbouwen buiten het programma.

Downloaden

Download hier een Nederlandse versie 4.2 van de Program Editor en hier een Engelse versie van WP Editor.

Zie ook een eerder bericht over de Program Editor met een vergelijkbaar voorbeeld.

Bovenstaand bericht is geschreven op 13 september 2014 door in de categorie 2014, Algemeen

Vorige en volgende berichten

« Ouder: Nieuwer: »

Een willekeurig bericht

Ik schrijf op deze site over allerlei onderwerpen. Soms is het heel persoonlijk, soms vooral informatief of beschouwend. Hieronder een willekeurig bericht uit ruim 2000 berichten.

Geef een reactie

Je e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *