ด้วย tmux บน OSX ฉันจะทำให้คำสั่ง + k ชัดเจนยิ่งขึ้นได้อย่างไร?


20

เมื่อฉันใช้เทอร์มินัลใน OSX ฉันมักใช้⌘+ Kเพื่อล้างหน้าจอและบัฟเฟอร์การเลื่อนกลับ มันลึกลงไปในความทรงจำของกล้ามเนื้อ

ฉันได้เริ่มซ่อมด้วย tmux แล้ว, และอีกสิ่งหนึ่งที่จับคือ⌘+ Kเช็ดทั้งหน้าจอ, บานหน้าต่างและทั้งหมด สิ่งที่ฉันต้องการคือการให้เฉพาะบานหน้าต่างที่โฟกัส

ฉันสามารถกำหนดค่าพฤติกรรมนี้ได้หรือไม่

คำตอบ:


21

กำหนดค่า iTerm2 เพื่อส่งคำสั่งที่ชัดเจน

การตั้งค่า -> Keys -> + (เพิ่มทางลัดใหม่ทั่วโลก)

  • แป้นพิมพ์ลัด: ⌘ + k
  • การดำเนินการ: ส่งข้อความ
  • ราคา:

ชัดเจน \ n

หรือกำหนดค่า iTerm2 เพื่อแมป map + k กับ ctrl + l ได้อย่างมีประสิทธิภาพ

  • แป้นพิมพ์ลัด: ⌘ + k
  • การดำเนินการ: ส่ง Hex Code
  • ราคา:

0x0c

วิธีนี้คุณจะไม่เห็นข้อความแฟลชและคำสั่งที่ชัดเจนจะไม่ทำให้ประวัติของคุณสกปรก


2
ทางออกที่ง่ายและสง่างาม ขอบคุณเพื่อนของฉัน
— Rafael

ทางออกที่สวยงาม! คุณทำให้ประสบการณ์ tmux ของฉันสนุกยิ่งขึ้น ขอบคุณ :)
— Matt Darby

เพียงเตือนนี่จะกระพริบข้อความไปยังสถานี
— Jay

1
เป็นสิ่งที่ดี แต่ขึ้นอยู่กับclearคำสั่งดังนั้นจึงไม่ทำงานในขณะที่อยู่ในคอนโซล irb หรือราง
— Robert

17

คุณสามารถใช้prefix+ r, หลัง⌘+ K, เพื่อวาดหน้าต่าง tmux อีกครั้ง

หากคุณสามารถทำลายนิสัยctrl+ ปกติlทำงานตามปกติต่อบานหน้าต่าง


3
ctrl + l ไม่เหมือนกับ cmd + k เพราะคุณยังสามารถเลื่อนขึ้นและดูประวัติเก่าด้วย ctrl + l หากคุณกำลังปรับแต่งบันทึกตัวอย่างเช่นการเติมการเลื่อนกลับอย่างรวดเร็ว cmd + k นั้นมีค่ามากเพราะคุณรู้ว่าเมื่อคุณออกจากระบบครั้งล่าสุด ctrl + l จะไม่ทำเพื่อคุณ
— Bjorn

@BjornTipling ⌘ + K เป็นคุณสมบัติของเทอร์มินัลอีมูเลเตอร์และจะไม่ทำงานภายใน tmux ... การเชื่อมโยงนี้ออกแบบมาเพื่อล้าง stdout คงที่ซึ่งไม่ใช่วิธี tmux และโปรแกรมอื่น ๆ เช่น vim / emacs / weechat / mutt กำลังถูกแสดง
— เอียงอาย

1
+1 สำหรับทำลายนิสัยฉันไม่สามารถหยุดมันได้จนถึงวันนี้ สิ่งที่ดีที่สุดคือพิมพ์clearแทนฉันเดา
— zanona

3

คุณสามารถเพิ่มบรรทัดต่อไปนี้ใน.tmux.conf:

# clear the current pane
bind -n C-k send-keys C-l \; clear-history

จากนั้นรีโหลดการกำหนดค่า tmux ของคุณ ตอนนี้คุณสามารถใช้คีย์ผูกของคุณ+k(เช่น: Ctrl+ b, k) เพื่อล้างบานหน้าต่างปัจจุบัน

ฉันไม่รู้จักไวยากรณ์สำหรับ OSX แต่ฉันคิดว่าคุณสามารถปรับสายได้อย่างง่ายดาย


ฉันเห็นว่าC-lล้างหน้าจอและclear-historyล้างบัฟเฟอร์เลื่อน สิ่งที่ไม่\;เป็นส่วนหนึ่งทำอย่างไร
— นาธานลอง

มันรันทั้ง @NathanLong
— Jay

3

bind -n C-k send-keys -R \; send-keys C-l \; clear-history

รับสิ่งนี้จากที่นี่

อุปกรณ์ประกอบฉากกับเขา มันใช้งานได้สำหรับฉันเหมือนกับCmd+kทำงานบนเทอร์มินัลอีมูเลเตอร์และใช้ได้กับฉันใน macOS 10.12.5 กับ iTerm2


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