So schreiben Sie eine Emacs-Funktion, um die markierte Region mit dem angegebenen Text zu umbrechen

8

Ich bin mit elisp nicht sehr vertraut und versuche zu lernen. In Emacs möchte ich Folgendes tun können:

  1. Markiere über C-Raum
  2. Gehe zu der Stelle, an der die Markierung enden soll, also habe ich eine Region, die hervorgehoben ist, nehme an, es ist "markierter Text"
  3. Triff eine Tastenfolge
  4. Lassen Sie mich von Emacs bitten, etwas Text einzugeben, sagen Sie "plot" und
  5. Lassen Sie den hervorgehobenen Text als "Plot (markierter Text)" ändern. Das heißt, ich möchte den Highlite-Text in Klammern einschließen und ihm den von mir eingegebenen Text voranstellen.

    %Vor%

Ich nehme an, die Eingabe der Funktion wäre der markierte Text, aber ich weiß nicht, wo ich anfangen soll. Der andere schwierige Teil wäre der Eingabetextteil. Könnte mich jemand führen? Danke.

    
Vinh Nguyen 19.11.2009, 04:47
quelle

4 Antworten

8

Für Ihren Fall sollte das funktionieren:

%Vor%     
Trey Jackson 19.11.2009 06:38
quelle
3

Etwas näher an Ihrer Version, aber mit einigen Änderungen:

  • Sie können 'let' verwenden, um eine lokale Variable
  • zu erstellen
  • Region-Anfang und Region-Ende gibt Ihnen das Äquivalent von dem, was Trey mit
  • gemacht hat

Hier ist ein Beispiel:

%Vor%

Ein weiterer Unterschied zwischen den beiden Versionen ist die Position des Punktes, nachdem Sie die Funktion aufgerufen haben. Trey-Version könnte besser sein (Geschmackssache).

BEARBEITEN: editiert nach Vinh Bemerkungen.

    
phtrivier 20.11.2009 11:40
quelle
2

Das erfordert 'cl, ist aber ansonsten ziemlich winzig. benutze es seit ein paar Jahren.

%Vor%     
rgiar 19.12.2009 15:41
quelle
1

Danke, Trey Jackson. Ich wusste nicht, dass du eine Lösung gepostet hast, also ging ich zu #emacs auf der Freenode um Hilfe. Nach einigen Recherchen habe ich folgendes gefunden:

%Vor%

Ich dachte, Stackoverflow würde mich benachrichtigen, wenn eine Lösung veröffentlicht wird. noch einmal Danke. etwas mehr von elisp daraus lernen.

    
Vinh Nguyen 20.11.2009 08:23
quelle

Tags und Links