Я пытаюсь вставить из системного буфера обмена Windows в текстовый редактор терминала, такой как vim (или его буфер обмена и xterm-clipboard, допускающий варианты, такие как vim-gtx), nano или emacs, но безрезультатно.
Я в основном пытаюсь сделать это с помощью vim-gtx, так как vim - мой любимый редактор -> но какой бы метод я ни пробовал, будь то:
Как упоминалось выше, вставка из буфера обмена, похоже, работает только при нажатии Ctrl-v в режиме вставки (Shift-Ctrl-v вставляет '^', а "* p и" + p вставляет 'i 'character or' ^? '), и вставленный вывод всегда вставляется в одну строку.
Например, часть файла .bashrc по умолчанию, скопированного из VSCode:
# enable programmable completion features (you don't need to enable
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
# sources /etc/bash.bashrc).
if ! shopt -oq posix; then
if [ -f /usr/share/bash-completion/bash_completion ]; then
. /usr/share/bash-completion/bash_completion
elif [ -f /etc/bash_completion ]; then
. /etc/bash_completion
fi
fi
Вставит в текстовый редактор терминала следующее:
# enable programmable completion features (you don't need to enable # this, if it's already enabled in /etc/bash.bashrc and /etc/profile # sources /etc/bash.bashrc). if ! shopt -oq posix; then if [ -f /usr/share/bash-completion/bash_completion ]; then . /usr/share/bash-completion/bash_completion elif [ -f /etc/bash_completion ]; then . /etc/bash_completion fi fi
При создании EOL видимые символы, затем сразу после последнего символа появляется символ $. Эта проблема возникает независимо от того, какой редактор используется, откуда текст копируется, и независимо от того, какая система вставки используется (если вставка удалась вообще).
Подводя итог:
Ctrl-v в vim - единственный способ вставить что-либо, но вставка происходит только в одну строку
"* p /" + p в vim не вставляется должным образом (но работает в vim через git-for-windows, см. Примечание ниже)
Спасибо
Важное примечание: -При вставке с помощью * * p в vim через git-for-windows (вместо Ubuntu Bash), он вставляется правильно (с новыми строками). Но Vim ( vim-gtx, или версия ppa) через Ubuntu не может правильно вставить с помощью "* p - возможно, это проблема с портированием vim на
Попробуйте эту цепочку: Control
+ R
затем Shift
+ =
Этот вопрос был записан в июне 2017, и многие запросили копию WSL и вставляют поддержку. В ответ Microsoft выпустила обновление в апреле 2018: Копия и Вставка прибывают для Консолей Linux/WSL:
С № 17643 сборки Windows 10 Insider можно скопировать/вставить написать сообщение из/в Консоли Linux/WSL!!!
Мы знаем, что это - функция MANY Вас, ожидали - наше самое искреннее спасибо за Ваше терпение и постоянную поддержку, в то время как мы распутали внутренности Консоли, позволив нам реализовать эту опцию.
Чтобы гарантировать, чтобы мы не повреждали существующих поведений, необходимо будет включить опцию "Use Ctrl+Shift+C/V as Copy/Paste" на Консольной странице свойств "Options".
Примечание: Вам будет нужно обновление сентября 2018 Windows для использования новой функции.
Определите $EDITOR переменной Bash любому предпочтительному т.е.
export $EDITOR=/usr/bin/nano
Затем используйте Ctrl-e Ctrl-x тот нано запуска. Затем Вы могли вставить многострочный выбор после того, как сохраняют Вас, возвращаются для окружения с командой, заполненной от редактирования. Обновление # сразу после некоторое время, хотят добавить, что прием с нано основан на новой возможности WSL, полученного, как упомянуто с одним обновлением 2018 года.
Если Ваш пытаются вставить, несколько выравнивают от буфера обмена до Vim, я нашел рабочее решение в этом сообщении.
https://stackoverflow.com/posts/49933556/edit
Я полагаю, что этот вопрос заслуживает более объективного ответа.
Переход к режиму вставки
- ESC
- Вставка:set
- нажмите i
- SHIFT + Вставляет (с текстом, скопированным на Вашем буфере обмена)
Отъезд режима вставки
- ESC
- :set nopaste
- нажмите i
Вы вставили текст, и Вы можете ввести снова.
У меня была эта проблема при использовании cmder/ConEmu как эмулятор терминала.
Существует установка ConEmu для вставки, это принимает значение по умолчанию к вставке на одной строке с Ctrl + V, и мультилиния со Сдвигом + Вставляют.
Изменение настроек для режима Paste № 2 от Single line
кому: Multi lines
как в следующем снимке экрана зафиксировал это для меня.