ฉันสามารถ cat ไฟล์คัดลอกและวางข้อความด้วยปุ่มกลางหรือ shift-insert
ฉันจะคัดลอกข้อความเป็นกลุ่มและวางจากคลิปบอร์ดของระบบได้อย่างไร
:!sed -n 5,10p %
:!cat %
ฉันสามารถ cat ไฟล์คัดลอกและวางข้อความด้วยปุ่มกลางหรือ shift-insert
ฉันจะคัดลอกข้อความเป็นกลุ่มและวางจากคลิปบอร์ดของระบบได้อย่างไร
:!sed -n 5,10p %
:!cat %
คำตอบ:
คุณจำเป็นต้องมีเป็นกลุ่มที่มีclipboardและxtermclipboardคุณสมบัติในการรวบรวม. ใน Ubuntu เหล่านี้จะใช้ได้เฉพาะกับแพคเกจที่เป็นกลุ่ม GUI ( vim-gnome, vim-gtk, vim-athenaฯลฯ )
เมื่อคุณติดตั้งหนึ่งในสิ่งเหล่านี้คุณสามารถคัดลอกไปยัง (และวาง) คลิปบอร์ดลงทะเบียน ( *และ+) จากโพสต์ข้อมูลนี้มากในVi และ Vim :
สำหรับระบบที่ใช้X11 (เช่นLinuxและระบบอื่น ๆ ที่คล้ายกับUNIX ) มี 2 บอร์ดคลิปบอร์ดซึ่งเป็นอิสระจากกัน:
- หลัก - นี่คือการคัดลอกเลือกและสามารถวางด้วยปุ่มกลางของเมาส์
- คลิปบอร์ด - สิ่งนี้ถูกคัดลอกด้วย (โดยปกติ)
^Cและวางด้วย^V(เหมือน MS Windows)
Vim มีการลงทะเบียนพิเศษ 2 รายการที่สอดคล้องกับคลิปบอร์ดเหล่านี้:
*ใช้หลัก ช่วยในการจำ: s tar คือs elect (สำหรับ copy-on- s elect)+ใช้ CLIPBOARD; ตัวช่วยจำ: CTRL + C (สำหรับการโยงคีย์ทั่วไป)
ในการคัดลอกไปยังรีจิสเตอร์คุณจะต้องใช้คำสั่ง copy ( y) พร้อมกับ"ชื่อของรีจิสเตอร์ ( *ตัวอย่างเช่น) "*yจากนั้นคลิกกลางเพื่อวางหรือ"+yและShiftInsertเพื่อวาง
วิธีการแก้ปัญหาที่น่าสนใจมากมาจากนี้คำถาม ติดตั้ง xclip จากนั้นส่งออกไพพ์ของคำสั่งไปยัง xclip ( cat file | xclip -selection clipboardเช่น) แล้ววางที่ใดก็ได้ (ถ้าอยู่ในเทอร์มินัล - ใช้Ctrl ShiftV
) ทีนี้กลับกลายเป็นว่าคุณสามารถย่อคำสั่งนั้นให้สั้นลงxclip -sel clipซึ่งไม่ชัดเจนจากการอ่าน man man หรือตัวอย่างที่นั่น
/devแต่ข้อความยังคงอยู่ที่ใดที่หนึ่งใช่ไหม
ฉันมีปัญหาเพราะกลุ่มของฉันไม่สนับสนุนคลิปบอร์ด :
vim --version | grep clip
-clipboard +insert_expand +path_extra +user_commands
+emacs_tags -mouseshape +startuptime -xterm_clipboard
ฉันติดตั้ง vim-gnome (ซึ่งรองรับคลิปบอร์ด) จากนั้นตรวจสอบอีกครั้ง:
vim --version | grep clipboard
+clipboard +insert_expand +path_extra +user_commands
+emacs_tags +mouseshape +startuptime +xterm_clipboard
ตอนนี้ฉันสามารถคัดลอกและวางโดยใช้ "+ y และ" + p ตามลำดับ
sed -n5,10pในการพิมพ์บรรทัดที่ 5-10 เพื่อให้ฉันสามารถคัดลอกและวางได้ง่ายขึ้นโดยไม่มีการโต้ตอบกับเมาส์