1103 Stimmen

Wie kann man Vim dazu bringen, aus der Zwischenablage des Systems einzufügen (und dorthin zu kopieren)?

Im Gegensatz zu anderen Editoren speichert vim kopierten Text in seiner eigenen Zwischenablage. Es ist also sehr schwierig für mich, einen Text von einer Webseite zu kopieren und ihn in die aktuelle Arbeitsdatei einzufügen. So kommt es, dass ich entweder gedit öffnen oder den Text manuell eintippen muss.

Kann ich vim dazu bringen, von und in die Zwischenablage des Systems einzufügen?

46voto

Todd A. Jacobs Punkte 75903

Linux

Auf meinem Linux-System wird die + y * Die Register entsprechen einer X11-Auswahl, die mit der mittleren Maustaste eingefügt werden kann. Wenn :set clipboard=unnamed y :set clipboard=unnamedplus verwendet werden, werden die Register der Zwischenablage zugeordnet und können mit CTRL-V eingefügt werden.

Die Einzelheiten scheinen etwas konfigurations- und systemabhängig zu sein, so dass Sie mit Sicherheit unterschiedliche Erfahrungen machen werden. Es sollte Sie aber auf jeden Fall in die richtige Richtung führen.

Siehe auch

http://vim.wikia.com/wiki/Accessing_the_system_clipboard

34voto

java-addict301 Punkte 2211

Shift + Rechtsklick -> Einfügen

hat bei mir geklappt

28voto

The Demz Punkte 6736

Zwischenablage

Für die Speicherung dieser Auswahl gibt es ein spezielles Register, das "* Register". Hier wird nichts eingetragen, es sei denn, die Information, welcher Text (z.B. durch einen linken Mausklick), oder wenn eine andere Anwendung den markierten Text eine andere Anwendung den markierten Text einfügen will. Dann wird der Text in das "*-Register. Zum Beispiel, um eine Zeile auszuschneiden und sie zur aktuellen Auswahl zu machen/auf das CLIPBOARD zu legen:

    "*dd

Ähnlich verhält es sich, wenn Sie eine Auswahl aus einer anderen Anwendung einfügen möchten, z. B., durch Klicken der mittleren Maustaste, wird die Auswahl zunächst in das "*-Register" eingefügt abgelegt und dann wie jedes andere Register "eingefügt". Um zum Beispiel die Auswahl (Inhalt des CLIPBOARD) einzufügen:

    "*p

Register E354

> There are nine types of registers:                      
> 1. The unnamed register ""
> 2. 10 numbered registers "0 to "9
> 3. The small delete register "-
> 4. 26 named registers "a to "z or "A to "Z
> 5. four read-only registers ":, "., "% and "#
> 6. the expression register "=
> 7. The selection and drop registers "*, "+ and "~ 
> 8. The black hole register "_
> 9. Last search pattern register "/

Einfügen aus der Zwischenablage

1. Clipboard: Copy
2. Vim insertmode, middle mouse key

Prüfen Sie, ob die X11-Zwischenablage im Terminal unterstützt wird

Wenn Sie Vim in einem Terminal laufen lassen wollen, müssen Sie nach einer Version von Vim suchen, die mit Zwischenablage-Unterstützung kompiliert wurde. Prüfen Sie auf X11-Zwischenablage-Unterstützung, geben Sie auf der Konsole ein:

% vim --version

Wenn Sie "+xterm_clipboard" sehen, sind Sie startklar.

http://vim.wikia.com/wiki/Accessing_the_system_clipboard

Der X-Server verwaltet drei Auswahlmöglichkeiten, genannt:

PRIMÄR, SEKUNDÄR und CLIPBOARD

Die PRIMARY-Auswahl wird üblicherweise verwendet, um das Kopieren und Einfügen mit der mittleren Maustaste. Die Auswahl SECONDARY und CLIPBOARD werden von Anwendungsprogrammen weniger häufig verwendet.

http://linux.die.net/man/1/xsel

18voto

Muhammed Ozdogan Punkte 4393

In die OS-Zwischenablage kopieren

Markieren Sie Text im visuellen Modus, drücken Sie "*y

Einfügen aus der OS-Zwischenablage

Presse "*p

14voto

rotestein Punkte 141

Da ich kein +Clipboard hatte, habe ich diese alternative Lösung mit xsel gefunden:

Zu ~/.vimrc hinzufügen:

vnoremap <C-C> :w !xsel -b<CR><CR>

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X