Wie kann ich Zeichen kopieren und einfügen, die mit compose-region angezeigt werden?


9

Ich verwende mehrere Modi, in denen Unicode-Zeichen in meinem Code angezeigt werden, ohne die zugrunde liegende Datei zu ändern. Im Haskell-Modus beispielsweise der folgende Code:

foo :: forall a. Eq a => a -> a -> a

wird angezeigt als

foo ∷ ∀ a. Eq a ⇒ a → a → a

Dies wird mit implementiert compose-region, wodurch eine Region durch ein Zeichen ersetzt werden kann, ohne den tatsächlichen Puffertext zu ändern.

Wenn ich den Code kopiere, kopiert er jedoch den zugrunde liegenden Text ohne den Unicode. Meistens ist dies das gewünschte Verhalten, aber manchmal möchte ich stattdessen die angezeigten Zeichen kopieren - ich musste die zweite Version meines Beispiels selbst eingeben!

Wie kann ich das Ergebnis solcher Zeichensubstitutionen anstelle des zugrunde liegenden Textes kopieren? (Tatsächlich bin ich mir nicht sicher, ob dies überhaupt möglich ist!)


2
Wenn jemand vorbeikommen und eine generische copy-visibleFunktion bereitstellen könnte , wäre das großartig.
Nispio

Antworten:


3

Ich habe es selbst versucht und keine gute Lösung gefunden. Es scheint, als ob dies durch manuelles Zusammenstellen des Puffertextes basierend auf der Kompositionseigenschaft und der Kompositionsfunktionstabelle möglich ist.

In der Vergangenheit habe ich dies gelöst, indem ich Emacs in einem Terminal ausgeführt und mit der Maus den angezeigten Text ausgewählt und kopiert habe.

Natürlich keine gute Lösung, aber es funktioniert in Zeiten der Not. Sie können dann "sichtbaren" Text wieder einfügen, indem Sie ein Betriebssystem in das Terminal einfügen.


Nicht ideal, aber das ist ein kluger Trick, an den ich nicht gedacht hätte.
Tikhon Jelvis
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.