ทำ Ctrl + C ข้อความคัดลอกใน gnome-terminal?


70

เป็นไปได้ไหมที่ฉันจะทำให้Ctrl+ Cดำเนินการคำสั่งคัดลอกหากมีข้อความที่ไฮไลต์อยู่ในเทอร์มินัล
มิเช่นนั้นควรรักษาพฤติกรรมปกติ

(หากมีเทอร์มินัลที่สามารถทำสิ่งอื่นนอกเหนือจาก gnome-terminal นั่นก็อาจจะใช้ได้เช่นกัน)


1
คุณไม่ต้องใช้เมาส์ บนแป้นพิมพ์ Mac คุณสามารถใช้shift+ +enter fnและบนแป้นพิมพ์ 'ปกติ' ผมคิดว่ามันเป็นและshift insert
David Thomas

ผมยืนยัน. ฉันเพิ่งใช้การผสมผสานของ copy-fu อื่นบนแป้นพิมพ์ 'ปกติ': Ctrl + Insert เพื่อคัดลอก (และ Shift + Insert เพื่อวาง) ซึ่งไม่ขัดแย้งกับโปรแกรมขัดจังหวะ Ctrl + C
kza

คำตอบ:


74

คุณสามารถเปลี่ยนปุ่มลัดสำหรับการตัดและวางจากค่าเริ่มต้นCtrl+ Shift+ C, Ctrl+ Shift+ Vกับสิ่งที่คุณพูดคือCtrl+ C, Ctrl+ Vในแก้ไข→แป้นพิมพ์ลัดเมนู แม้ว่าคุณควรเปลี่ยนความหมายของเทอร์มินัลเริ่มต้นที่เกี่ยวข้องกับCtrl+ C(ขัดจังหวะ) ตัวอย่างเช่นด้วยวิธีนี้

stty intr ^J

(ฉันเลือกCtrl+ Jเพราะฉันจำไม่ได้ว่ามันเกี่ยวข้องกับการกระทำบางอย่าง แต่คุณสามารถเลือกได้เอง)

ฉันไม่คิดว่าเป็นไปได้ที่จะคงการดำเนินการขัดจังหวะเริ่มต้นไว้สำหรับCtrl+ Cเฉพาะเมื่อไม่มีการเน้นข้อความ


1
ตามที่ระบุไว้โดย @Pithikos ในคำตอบของ mangoDrunk หลังจากทำการแมปทางลัดการคัดลอกไปยัง Ctrl + C อีกครั้งคุณสามารถใช้ Ctrl + Shift + C เพื่อขัดจังหวะโดยไม่ต้องกำหนดค่าใด ๆ
dubrox

1
ฉันตั้งค่าเป็น ^ Q เพราะปกติ "เลิกทำ / เริ่ม" ซึ่งไม่ค่อยได้ใช้เป็นอันตรายและอยู่ใกล้กับ CTRL หากใครบางคนตัดสินใจที่จะทำเช่นนี้พวกเขาจะต้องไม่ลืมที่จะทำการแมป "เริ่มต้น" เป็นคนแรก: stty start ^ J
k3a

โปรดทราบว่ามันเป็นไปไม่ได้ที่จะตั้งค่าให้มีการรวมกันที่เกี่ยวข้องกับการกดปุ่ม Shift sttyใช้ (ฉันได้ตั้งไว้ที่ ^ X เนื่องจาก 'การตัด' ไม่เหมาะสมที่นี่)
Evgeni Sergeev

39

Ctrl+ Cได้รับการมอบหมายให้กับคำสั่งอื่นแล้วซึ่งเป็นคำสั่งที่ขัดจังหวะโปรแกรมที่ทำงานอยู่ในเครื่องเทอร์มินัลตัวอย่างเช่น ping www.google.com จะเริ่มส่ง Ping ไปยัง Google จนกว่าคุณจะบอกให้หยุด วิธีที่คุณทำคือกดCtrl+C

ดังนั้นพวกเขาไม่สามารถเปลี่ยนการมอบหมายของชุดค่าผสมนั้นได้

เน้นข้อความที่คุณต้องการคัดลอกกดCtrl+ Shift+ Cและคัดลอกไปยังคลิปบอร์ด Ctrl+ Shift+ Vและคุณวางไว้

แจ้งให้เราทราบหากใช้ไม่ได้ ...


16
แทนที่จะบอกว่าการโยงคีย์เหล่านั้นมีความหมายเฉพาะอื่น ๆ ในเทอร์มินัลมันอาจจะถูกต้องมากกว่าที่จะบอกว่าแอพพลิเคชั่นคอนโซลต่าง ๆ คาดว่าจะสามารถใช้งานได้ดังนั้นถ้าเทอร์มินัลอีมูเลเตอร์ไม่ผ่าน .
James Henstridge

6
OS X ค่อนข้างฉลาด: เมื่อมีการเลือกข้อความบางข้อความจะตีความCtrl+Cเป็นการคัดลอกและเมื่อไม่มีการเลือกข้อความใดข้อความนั้นตีความว่าเป็นการขัดจังหวะ
Behrang

5
ที่จริงแล้ว OS X นั้นไม่ฉลาดกว่า แป้นพิมพ์ลัดคือ Cmd-C ไม่ใช่ Ctrl-C
Andrei Maxim

28

นอกเหนือจากสิ่งที่ @Dan พูดแล้วยังมีอีกตัวเลือกหนึ่งสำหรับการคัดลอกข้อความใน Linux ซึ่งฉันกำลังค้นหาได้เร็วขึ้นและใช้งานง่ายกว่ามากเนื่องจากไม่จำเป็นต้องเปลี่ยนจากเมาส์ (ที่คุณใช้ในการเลือก) กับแป้นพิมพ์ :

  • การเลือกข้อความด้วยการคัดลอกเมาส์ไปที่คลิปบอร์ด
  • คลิกกลางวางไว้

คุณลักษณะนี้มีประโยชน์อย่างยิ่งในเทอร์มินัลตัวอย่างเช่นเมื่อประกอบคำสั่งจากบิตของข้อความที่มีอยู่แล้วบนหน้าจอ

ใช้ได้กับทุกแอปพลิเคชันดังนั้นจึงเป็นไปได้ที่จะคัดลอกข้อความจากหน้าเว็บไปยังเทอร์มินัล ฯลฯ

บัฟเฟอร์คลิปบอร์ดที่ใช้สำหรับการคลิกกลางคัดลอกวางแยกจากที่ใช้สำหรับ Ctrl-C / Ctrl-V ซึ่งทำให้สามารถคัดลอกข้อความสองบิตในเวลาเดียวกัน


25

ตามที่ระบุไว้แล้วCtrl+ Cโดยทั่วไปจะใช้สำหรับการขัดจังหวะโปรแกรม แต่แทนที่จะใช้Ctrl+ Shift+ Cเพื่อทำสำเนาซึ่งฉันทำบ่อยกว่าขัดจังหวะกระบวนการฉันเปลี่ยนการตั้งค่าเป็นCtrl+ Cเพื่อคัดลอกและCtrl+ Shift+ Cเพื่อขัดจังหวะ

คุณสามารถทำเช่นนี้ใน GNOME ร์มินัลโดยไปที่ "แก้ไข" -> "แป้นพิมพ์ลัด ..." และแผนที่ "คัดลอก" การกระทำที่จะCtrl+ Cและ "วาง" เพื่อ+Ctrl Vคำสั่งจะถูกขัดจังหวะ remapped โดยอัตโนมัติCtrl+ +ShiftC


1
แต่ฉันจะแมป Ctrl + Shift + C เพื่อขัดจังหวะกระบวนการได้อย่างไร
kramer65

11
มันเกิดขึ้นโดยอัตโนมัติสำหรับฉัน ทั้งหมดที่ฉันทำคือตั้งค่า Copy เป็น Ctrl + C และหลังจากบันทึกแล้ว Ctrl + Shift + C ก็ถูกขัดจังหวะ
mangoDrunk

1
@mangoDrunk เหตุผลคือการถือShift + Ctrl + <key>พิมพ์ตัวอักษรเป็นหลักเป็น Ctrl + <key>หลัก คุณสามารถทดสอบกับread
Pithikos

ฉันขอแนะนำให้ทำเช่นนี้เพราะฉันคัดลอกวางมากกว่าจำนวนมากขัดจังหวะกระบวนการและง่ายต่อการจดจำ ctrl + shift + C เป็นขัดจังหวะแทนที่จะเปลี่ยนนิสัยการทำสำเนาซึ่งเหมือนกันทุกที่
flyingdrifter

3

ในการทำให้ตัดและวาง ( Ctrl+ V, Ctrl+ C) ทำงานในคอนโซลหรือเทอร์มินัลให้ใส่รหัสต่อไปนี้ลงในเทอร์มินัลเพื่อเปลี่ยนการเชื่อมโยงคีย์โดยอัตโนมัติ:

gconftool-2 -t str -s /apps/gnome-terminal/keybindings/copy "<Control>c"

gconftool-2 -t str -s /apps/gnome-terminal/keybindings/paste "<Control>v"

1

ขออภัยในการเขียนคำตอบเกี่ยวกับเรื่องนี้ดูเหมือนว่าฉันใช้ชื่อเสียงมากเกินไปในเรื่องเงินรางวัลสำหรับการโพสต์ความคิดเห็น

ไม่มีวิธีที่จะเปลี่ยนพฤติกรรมของแป้นพิมพ์ลัดขึ้นอยู่กับว่ามีการเลือกข้อความหรือไม่และฉันจะหลีกเลี่ยงการกำหนด Ctrl-C ของเทอร์มินัลอีกครั้ง

แต่คุณสามารถคุ้นเคยกับ

  • Ctrl+ Insสำหรับการคัดลอก
  • Shift+ Insสำหรับการวาง

มันใช้งานได้จริงทุกที่ (ยกเว้นในNautilusถอนหายใจ) และแทบจะไม่เคยยุ่งกับอะไรเลย!


1

มีคนต้องการให้คุณใช้ไหม:

> stty intr ^K         # free Ctrl+C for copy use Ctrl+K instead
> stty lnext ^-        # free Ctrl+V for paste use ^- instead
> stty -g
> stty -g > ~/.stty    # store the settings in home directory

เพิ่มรายการต่อไปนี้เพื่อ ~/.bashrc

case $- in
 *i*)
   stty `cat ~/.stty`     #  reload the stored stty settings
   bind -u quoted-insert  #  unbind the quoted-insert function of bash - free Ctrl+V for paste
esac

จากนั้นแก้ไข gconf หรือ somesuch เพื่อเปลี่ยนเทอร์มินัลการโยงคีย์เป็นCTRL+ CสำหรับคัดลอกและCTRL+ Vสำหรับวาง


Argh ... การจัดรูปแบบเกิดขึ้นอย่างรวดเร็ว ดู: sandipchitale.blogspot.com/2008/10/…
Sandip Chitale

1

ในLxterminal (เทอร์มินัลเริ่มต้นใน Lxde) คุณสามารถปรับแต่งทางลัดได้อย่างเต็มที่:

ป้อนคำอธิบายรูปภาพที่นี่


0

ฉันคิดว่าคุณไม่สามารถทำได้เพราะใน gnome terminal Ctrl+ C, Ctrl+ X, Ctrl+ Vไม่ทำงาน สำหรับการตัดคัดลอกและวางคุณต้องเน้นข้อความคลิกขวาแล้วเลือกการกระทำที่คุณต้องการ


คุณยังสามารถใช้ทางลัดเพื่อตัดในเทอร์มินัลเหล่านี้คือ ctrl + shift + c (copy) และ ctrl + shift + v (วาง) และ ctrl + shift + x
Rens

0

ตามที่ระบุไว้แล้ว Ctrl-C จะไม่ทำงานเนื่องจากการใช้งานขัดจังหวะ แต่ฉันเพิ่งหาวิธีที่เหมาะกับฉัน เป้าหมายของฉันคือมีเพียงสองปุ่มไม่ใช่สามและดีกว่าสิ่งที่ฉันคุ้นเคยและไม่สะดวกในสถานที่บนแป้นพิมพ์ แป้นพิมพ์ที่ฉันมีในกล่อง Linux มีปุ่ม "Windows" ในตำแหน่งเดียวกับแป้น Command บน Mac ดังนั้นฉันเพิ่งไปที่แก้ไข> แป้นพิมพ์ลัดเมื่อฉันเปลี่ยนทางลัดเพื่อใช้แป้นนี้มันบอกว่า Super + C และ Super + V บางครั้งฉันก็ใช้ Mac ด้วยดังนั้นนี่จึงเป็นเรื่องง่ายที่จะทำความคุ้นเคย

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