ไม่สามารถคัดลอกไปยังคลิปบอร์ดจาก Vim


28

ฉันใช้ Vim 7.3 ภายใต้ Linux Mint 13 (โดยใช้ MATE) และฉันไม่สามารถบันทึกข้อความไปยังคลิปบอร์ดของระบบได้ CTRLINSERTผมทำงานเป็นกลุ่มในขั้วและคัดลอกข้อความจากขั้วกับ เมื่อฉันเลือกข้อความในเสียงเรียกเข้า (ไม่ว่าจะด้วยเมาส์หรือในโหมดภาพ) CTRLINSERTอย่าคัดลอกข้อความใด ๆ นอกจากนี้เมื่อฉันคลิกขวาการคัดลอกจะเป็นสีเทา นอกจากนี้ฉันไม่สามารถเขียนลงในบัฟเฟอร์ของระบบได้โดยการส่งไปยังการลงทะเบียนที่เกี่ยวข้องโดยใช้คำสั่ง vim อย่างไรก็ตามฉันสามารถวางในขณะที่อยู่ในโหมดแทรก (โดยใช้SHIFTINSERTหรือวางคลิกขวา) ฉันสามารถคัดลอกข้อความจากเทอร์มินัลโดยตรงด้วยเทคนิคเดียวกันไม่ใช่แค่ข้อความจาก Vim

นี่คือของฉันปัจจุบัน ~ set clipboard=autoselect,unnamed,exclude:cons\|linuxส่วนที่เกี่ยวข้องเป็นไปได้มากที่สุด ถ้าฉันใส่finishส่วนบนสุดของ ~ / .vimrc ฉันมีปัญหาเดียวกันดังนั้นฉันคิดว่าบรรทัดนั้นผิด แต่ฉันพยายามset clipboard=unnamedแล้วและมีพฤติกรรมแบบเดียวกัน

อาจมีไฟล์ปรับแต่งอื่นที่มีผลต่อพฤติกรรมของ Vim หรือไม่ ฉันจะเปลี่ยน ~ / .vimrc เป็นอนุญาตให้ฉันคัดลอกข้อความจาก Vim ได้อย่างไร

คำตอบ:


55

ฉันเชื่อว่าปัญหาสำเนาของคุณเกิดจาก:

mouse=a 

ใน. vimrc ของคุณนี่เป็นการกำหนดเสียงเรียกเข้าของคุณเป็นโหมดภาพเมื่อใดก็ตามที่คุณเลือกบางสิ่งด้วยเมาส์ และด้วยเหตุผลบางอย่างที่ทำให้ไม่สามารถคัดลอกเมื่ออยู่ในโหมดมองเห็น คุณสามารถเดินไปรอบ ๆ ได้โดยกดปุ่ม Shift ค้างไว้เมื่อเลือกข้อความที่จะไม่เข้าสู่โหมดภาพช่วยให้คุณใช้เมนูคัดลอก

หรือคุณสามารถเปลี่ยนเป็น:

:set mouse=v

และการคัดลอกจะทำงานอีกครั้ง เพิ่มลงในไฟล์ ~ / .vimrc ของคุณหากคุณต้องการให้ถาวร


2
ขณะนี้อาจแก้ปัญหาได้คำอธิบายว่าทำไมการทำงานจึงมีประโยชน์มากกว่า คำตอบของคุณก็แค่บอกใครสักคนให้กดปุ่มสีเขียวสองครั้ง - มันอาจใช้งานได้อาจจะไม่ แต่ก็ไม่ได้ให้ความกระจ่างแก่พวกเขา
voretaq7

ขอบคุณที่แก้ไขมัน คำอธิบายที่คุณเพิ่มหลังจากความคิดเห็นของ voretaq7 ก็ช่วยได้มากเช่นกัน!

สิ่งนี้ใช้ได้กับ Cygwin ด้วย
Dave Jarvis

1
โหมดนี้จะเน้นทุกอย่างดังนั้นหากฉันต้องการคัดลอกสองสามบรรทัดฉันก็จะคัดลอกหมายเลขบรรทัดและพื้นที่ว่างทั้งหมดหลังจากแต่ละบรรทัดจนถึงจุดสิ้นสุดของหน้าจอ มีวิธีให้เลือกเฉพาะเนื้อหาที่เกี่ยวข้องหรือไม่ (ซึ่งเป็นวิธีการทำงานของไฮไลท์เมื่อใดmouse=a)
Dennis

คำตอบที่ดี. เพียงแค่เป็นบวก: เพิ่มเติมโหมดเมาส์ที่นี่:help mouse
ดร Beco

10

sudo apt-get install vim-gtk มีแนวโน้มที่จะแก้ปัญหานี้สำหรับชาว Google คนอื่น ๆ

เสียงเรียกเข้าแบบเทอร์มินัลที่ดีไม่สามารถเข้าถึงคลิปบอร์ดซึ่งเป็นส่วนหนึ่งของระบบ X windows การติดตั้งvim-gtkให้การเข้าถึงที่จำเป็นสำหรับแก้ไขและดูคลิปบอร์ด


2
Works! บน Debian Buster (ขณะนี้อยู่ระหว่างการทดสอบ) ฉันติดตั้ง vim-gtk แล้วบรรทัดคำสั่งของฉันใน xterm อนุญาตให้ฉันใช้*และ+บัฟเฟอร์เพื่อเข้าถึงบัฟเฟอร์หน้าต่าง x การติดตั้งเป็นกลุ่ม-GTK ใช้ทางเลือก Debian vim -> /usr/bin/vim.gtkชุด
RobertL

0

เทอร์มินัลไม่รู้อะไรเกี่ยวกับการเลือกเสียงเรียกเข้าดังนั้นอย่าคาดหวังว่ามันจะเป็นความช่วยเหลือใด ๆ คุณจะต้องเป็นกลุ่มที่จะสร้างกับ X (เช่นgvim -v) แล้วดึงไปและนำจากการ+ลงทะเบียน


3
vim-gtkแพคเกจในอูบุนตูมีการสนับสนุนคลิปบอร์ด (แม้ในขณะที่ดำเนินการเป็นvimใน Terminal)
mgorven

เห็นด้วยและยืนยันใน Debian Buster (ขณะนี้อยู่ระหว่างการทดสอบ) ฉันติดตั้ง vim-gtk จากนั้นบรรทัดคำสั่งของฉันใน xterm อนุญาตให้ฉันใช้ * และ + บัฟเฟอร์เพื่อเข้าถึงบัฟเฟอร์หน้าต่าง x การติดตั้ง vim-gtk ใช้ทางเลือก Debian เพื่อตั้งค่า vim -> /usr/bin/vim.gtk
RobertL

0

เพียงแค่gvimบน linux arch ถ้าใครอยากรู้ นอกจากนี้ให้ดูที่neovim(และpython-neovim& & python2-neovimสำหรับการสนับสนุนที่สมบูรณ์แบบให้ฉันเป็นต้น)


ลองใช้ gvim ผ่าน ssh
hopeeekr
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.