Wenn ich Emacs in einem Textterminal anstelle des normalen GUI-Modus ausführe, kann ich in Emacs kopieren, indem ich den Start einer Region mit aktiviere C-SPC
und dann auswähle, was ich will, und dann mache M-w
.
Gibt es eine Möglichkeit, eine Region auf diese Weise kopieren zu lassen, die in der OSX-Zwischenablage verfügbar ist, um sie beispielsweise in eine Webseite einzufügen (außer natürlich, indem Emacs im GUI-Modus ausgeführt wird)?
Ich bin nicht daran interessiert, eine andere Verknüpfung zu erstellen, und im Idealfall sollten keine Module installiert werden.
Ich habe diesen Beitrag gesehen und die akzeptierte Antwort ausprobiert, aber es scheint nicht so zu funktionieren, wie ich es oben erwarte.
Irgendwelche anderen Ideen?
osx
copy-paste
Galder Zamarreño
quelle
quelle
Antworten:
Kopieren von Emacs in die OS X-Zwischenablage:
Wählen Sie dann die Region aus
M-| pbcopy RET
Einfügen aus der OS X-Zwischenablage in Emacs:
C-u M-| pbpaste RET
(ersetzt die aktuelle Region, falls vorhanden)Erläuterung:
M-|
Läuftshell-command-on-region
, was, wie der Name schon sagt, bedeutet, dass die aktuelle Region an einen Shell-Befehl weitergeleitet wird.C-u M-|
tut dasselbe, ersetzt jedoch die aktuelle Region durch diestdout
des ausgeführten Befehls.pbcopy
undpbpaste
sind OS X-Dienstprogramme für den Zugriff auf die Systemzwischenablage.quelle
Das Folgende funktioniert einfach, kopiert von hier
quelle
xclip-mode
leidet das gleiche Problem?Wenn Sie Emacs "auf die normale Weise" (dh als GUI-Anwendung) verwenden, sollte dies standardmäßig bereits geschehen. Wenn Sie Emacs in einem Terminal-Emulator verwenden, weiß es zwar nicht, wie das standardmäßig gemacht wird, aber Sie können das
xclip
Paket von GNU ELPA installieren und dann das aktivieren,xclip-mode
das Emacs beibringt, wie das sowohl für GNU / Linux als auch für Linux gemacht wird OSX.quelle
xclip
mit OSX? Nach dem,xclip.el
Paket wurde erweitert, um zu verwendenpbpaste
.M-x report-emacs-bug
?Wie Stefan sagte, sollten die grafischen Emacs-Anwendungen dies standardmäßig tun.
In einem Textterminal können Sie auch Funktionen wie die folgenden verwenden:
quelle
Hier ist eine einfache Elisp-Funktion, die Sie in Ihre .emacs-Datei einfügen können, um den Inhalt des Puffers, in dem Sie sich befinden, in die Zwischenablage zu kopieren. Sie müssen nichts auswählen, es kopiert alles. Der Code ist kurz und ziemlich selbsterklärend.
quelle
Check out
clipboard-kill-region
undclipboard-yank
. Diese kommen ausmenu-bar.el
.Sobald eine Region markiert ist, können Sie mit Clipboard-Kill-Region die Region sowohl in Ihrem Einfügepuffer als auch in der System-Zwischenablage löschen. clipboard-yank "fügt" ein, was sich gerade in der Zwischenablage des Systems befindet.
quelle
Die Antwort von Galder Zamarreño ist großartig, sie bricht jedoch das böse
put
Verhalten im bösen Modus. Ich habe es daher weiter unten etwas angepasst - ich bin sicher, es könnte besser sein, aber es macht den Job für mich. Fühlen Sie sich frei, Verbesserungen vorzuschlagen:----> Neuer Code
quelle