โปรแกรม terminal ที่ดีขึ้นสำหรับ Snow Leopard (OS X)


2

ไม่มีใครรู้ว่าโปรแกรมเทอร์มินัลที่ดีกว่าสำหรับเสือดาวหิมะซึ่งช่วยในการแก้ไขข้อความ? (เช่นการกระโดดไปที่ตัวละครเฉพาะโดยไม่ต้องใช้ลูกศรเพื่อไปทีละตัว) ฯลฯ .. ? ขอบคุณ!

UPDATE: ขออภัยฉันหมายถึงการอัปเดตคำสั่งที่เขียนไปแล้ว สมมติว่าฉันต้องการทำบางสิ่งเช่นscript/generate migration add_field_to_somethingนี้ ฉันเขียนสิ่งนั้นและ Rails สร้างการย้ายข้อมูล ตอนนี้ฉันตัดสินใจแล้วว่าฉันต้องการกำจัดการโยกย้ายนั้นเพราะฉันทำผิดพลาดไปบ้าง script/destroy migration add_field_to_somethingต้องการทำเช่นนั้นผมจะต้องเขียน ตอนนี้ฉันมีสามตัวเลือก: 1) เขียนคำสั่งทั้งหมดตั้งแต่ต้นจนจบ 2) กดปุ่ม 'up' เพื่อทำซ้ำคำสั่งสุดท้ายจากนั้นลูกศรซ้ายจนกว่าฉันจะได้คำgenerateแล้วลบและเขียนdestroyหรือ 3) คัดลอกคำสั่งสุดท้ายลงใน TextEdit เลือกด้วยเมาส์ (หรือข้ามคำด้วยคำสั่ง + ลูกศรซ้ายเพื่อเลือกเร็วขึ้น - ไม่สามารถทำได้ในเทอร์มินัล) จากนั้นแทนที่ด้วยคำว่าdestroyจากนั้นคัดลอกกลับไปที่เทอร์มินัล คำถามของฉันคือ - มีโปรแกรมเทอร์มินัลที่ช่วยให้การแก้ไขด้วยเมาส์ / ข้ามคำเหมือนที่ฉันทำใน TextEdit (เช่นด้วยคำสั่ง + ลูกศรซ้าย) เพื่อประหยัดเวลาหรือไม่

ขอบคุณ!

คำตอบ:


3

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

แก้ไข

ขอบคุณสำหรับการชี้แจง คุณอาจสนใจเปลือก zsh ซึ่งมีแป้นพิมพ์ลัดจำนวนมากสำหรับเลื่อนเคอร์เซอร์:

  • Alt-A - เลื่อนไปยังจุดเริ่มต้นของบรรทัด
  • Alt-E - เลื่อนไปที่ท้ายบรรทัด
  • Alt-F - เลื่อนไปข้างหน้าหนึ่งคำ
  • Alt-B - เลื่อนไปข้างหลังหนึ่งคำ

นอกจากนี้ bash ซึ่งเป็นเชลล์เริ่มต้นยังมีแป้นพิมพ์ลัดเพื่อเลื่อนไปยังจุดเริ่มต้นและจุดสิ้นสุดของบรรทัด:

  • Ctrl-A - เลื่อนไปยังจุดเริ่มต้นของบรรทัด
  • Ctrl-E - เลื่อนไปที่ท้ายบรรทัด

1
โปรดทราบว่าเปลือกเริ่มต้นทุบตียังสนับสนุน emacs และการเคลื่อนไหวเคอร์เซอร์สไตล์ vi เช่น control-A สำหรับการเริ่มต้นของบรรทัดควบคุม -E สำหรับจุดสิ้นสุดของบรรทัด
พอลอาร์

@Paul R ขอบคุณฉันแก้ไขคำตอบเพื่อรวมทางลัด bash ที่คุณกล่าวถึง
pkaeding

@ Paul: มันเป็นทุบตีสงสารไม่อนุญาตให้ MF และ Mb ...
ไบรอัน Postow

3
มันทำ สำหรับเครื่อง Mac เป็นตัวเลือก F และตัวเลือก B - แต่ตรวจสอบให้แน่ใจว่าในการตั้งค่าของเทอร์มินัลคุณได้เลือก "ใช้ตัวเลือกเป็นเมตาคีย์"
Doug Harris

@doug! โอ้ขอบคุณมาก! ฉันต้องการมานานแล้ว!
Brian Postow

4

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

อัปเดตตามความคิดเห็นของฉันเกี่ยวกับคำตอบอื่นคุณสามารถใช้ Mf (ตัวเลือก + F) และ Mb (ตัวเลือก + B) เพื่อไปข้างหน้าและข้างหลังโดยใช้คำ หน้าจอที่ฉันเชื่อมโยงเพื่อแสดงวิธีการทำ นอกจากนี้ยังกล่าวถึงการค้นหาประวัติคำสั่งโดยใช้ Cr (สิ่งที่ฉันไม่เคยลอง)


1
"โปรดสังเกตว่าสิ่งนี้ไม่ขึ้นอยู่กับโปรแกรม Terminal ที่ใช้ เทคนิคผิด: ถ้าเทอร์มินัลโง่พอมันจะป้องกันคุณจากการทำสิ่งต่าง ๆ นี่ไม่ใช่สถานการณ์ที่หายากอย่างที่คิด
o0 '

@ lo'oris: จริง แต่ Terminal.app ของ mac ไม่ใช่คนโง่ ...
Brian Postow

ฉันเห็นด้วยกับ Lo'oris และ Brian Postow ติดกับ Terminal.app และคุณไม่ควรมีปัญหาใด ๆ (และอย่าลืมดู screencast นั้น - ฉันไม่รู้ว่าใครเป็นคนทำมัน แต่มันก็ทำได้ดีมาก)
Doug Harris

3

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

ตัวอย่างเช่นการใช้เปลือก zsh และสถานการณ์ตัวอย่างของคุณคุณมีตัวเลือกที่ 4:

zsh% script/generate migration add_field_to_something

อ๊ะ! ฉันไม่ได้ตั้งใจทำอย่างนั้น ให้ฉันพิมพ์สิ่งนี้ ...

zsh% script/destroy !*

แก้ไขแล้ว! !*วิธีการ: ใช้พารามิเตอร์ทั้งหมดจากคำสั่งก่อนหน้า

หรือคุณอาจพิมพ์เพียง:

zsh% r generate=destroy

rคำสั่งวิธีการแทนที่ในคำสั่งก่อนหน้า ดังนั้นคำสั่งก่อนหน้าจะทำงานกับสร้างการแทนที่ด้วยทำลาย

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

PS

จำนวนมากของนักพัฒนารางยังตั้งไฟล์นามแฝงในที่เรียกจากพวกเขา~/.zsh.zshrc

alias sg='script/generate'

ดังนั้นจะช่วยประหยัดการกดแป้นได้มากกว่าเดิม script/destroyคุณอาจไม่ต้องการใช้นามแฝงเพียงเพื่อหลีกเลี่ยงการเรียกใช้โดยไม่ตั้งใจ ;-)


2

ฉันชอบ iTerm สำหรับการใช้งานเทอร์มินัลใน OSX http://iterm.sourceforge.net/

เทอร์มินัลอนุญาตให้มีการโต้ตอบกับเมาส์ (ผ่าน xmouse มาตรฐาน) และมีเทอร์มินัลระฆังและนกหวีดจำนวนมากที่ไม่มี


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

1

อีกทางเลือกหนึ่งคือการใช้ emacs shell-mode หากคุณคุ้นเคยกับ emacs คุณสามารถพิมพ์ Mx shell-mode มันจะให้พรอมต์ปกติแก่คุณ คุณสามารถใช้คำสั่งการแก้ไข emacs ปกติทั้งหมดได้

คำเตือนเดียวเนื่องจากลูกศรขึ้น (หรือ Cp) เลื่อนเคอร์เซอร์ขึ้นบรรทัดจริง ๆ คุณต้องใช้ Mp และ Mn เพื่อรับคำสั่งก่อนหน้าและถัดไป ...

สำหรับทั้งหมดที่ฉันรู้ว่ากลุ่มอาจมีโหมดที่คล้ายกัน แต่ฉันเป็นผู้ศรัทธาที่แท้จริงในลัทธิของ Emacs ดังนั้น ...


เพิ่มขึ้นเพราะมันเป็นทางออกที่ดีสำหรับสมาชิกลัทธิเพื่อน (เช่นฉัน) หรือสำหรับผู้ที่พิจารณาปีนเส้นโค้งการเรียนรู้ของ Emacs นี่คืออีกหนึ่งเหตุผลที่จะเข้าร่วมกับเรา ฉันไม่คิดว่าสิ่งนี้เพียงอย่างเดียวจะแสดงให้เห็นถึงการเปลี่ยนเป็น Emacs
Doug Harris

@ Doug โอ้ไม่ชัดเจน ฉันหมายความว่ามันเป็นหลักฐานที่แสดงว่า emacs เป็นระบบปฏิบัติการไม่ใช่ตัวแก้ไข แต่ใช่ ... B-)
Brian Postow

1

ใช้ vi เป็นตัวแก้ไขของคุณ (ส่งออก EDITOR = vi) จากนั้นตั้งค่าเชลล์ของคุณเพื่อใช้โหมด vi (set -o vi) และหลังจากนั้นคุณก็เป็นสีทอง ต้องการที่จะจำบรรทัดที่มีขนาดใหญ่กดปุ่ม esc และสแลชเพื่อเริ่มการค้นหาผ่านประวัติคำสั่งของคุณ พิมพ์อักขระสองสามตัวแรกที่คุณป้อน วนรอบพวกเขาโดยกดปุ่มไปข้างหน้าพื้นที่แล้วป้อน สนุก.

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