เลื่อนเข้าไปใน Vim ใน Terminal ของ Mac


89

ฉันพยายามที่จะลองคิดดูว่าเป็นไปได้หรือไม่ที่จะใช้ล้อเลื่อนของเมาส์เพื่อเลื่อนในขณะที่อยู่ในVimใน Terminal ของ Mac โดยไม่มีโชค ดูเหมือนว่ามีเพียงX11หรือ iTerm เท่านั้นที่รองรับสิ่งนี้

ก่อนที่ฉันจะยอมแพ้ฉันคิดว่าฉันจะลองใช้อัจฉริยะที่นี่เพื่อดูว่ามีใครรู้วิธีทำสิ่งนี้บ้าง มีใครรู้บ้างว่าฉันตั้งค่าได้ไหม

หรือฉันควรพิจารณาใช้แอปพลิเคชันเทอร์มินัลอื่นอย่างจริงจัง


นี่คือสิ่งที่คุณสามารถทำได้ในแพลตฟอร์มอื่น ๆ หรือตัวแก้ไขเทอร์มินัล? หากมีการใช้งาน X-based VI ฉันเดาว่ามันสามารถรองรับได้ แต่คุณจะไม่สนับสนุนเมาส์เลื่อนเพื่อควบคุมบัฟเฟอร์เลื่อนกลับหรือไม่?
benc

ในเทอร์มินัลของ Ubuntu คุณสามารถเลื่อนได้นั่นคือเหตุผลที่ฉันถามฉันต้องการดูว่าฉันสามารถใช้งานได้เหมือนกันบน Mac ของฉันหรือไม่
hora

1
@hora - คุณทำได้เพียงแค่ใช้ iterm คุณยังได้รับ 256 สีคัดลอกและวางที่เหมาะสมเป็นต้น
ปล้นตั้งแต่

คำตอบ:


68

http://bitheap.org/mouseterm/

ใช้ MouseTerm (และอย่าลืมติดตั้ง SIMBL ก่อน!) และการเลื่อนจะทำงานได้อย่างมีเสน่ห์แม้กระทั่งจากระยะไกลโดยใช้ Mac Terminal

คุณต้องออกจากแอปพลิเคชัน Terminal (Command + Q) โดยสมบูรณ์จากนั้นเปิดใช้งานอีกครั้งหลังจากติดตั้ง MouseTerm


2
ว้าวนั่นคือสิ่งที่ฉันกำลังมองหา ในขณะเดียวกันฉันเคยชินกับการไม่ใช้เมาส์ แต่ก็ยังมีประโยชน์
hora

8
สำหรับ vim nuts การเพิ่ม a set mouse=aใน. vimrc ของคุณทำงานได้อย่างมีเสน่ห์ด้วย MouseTerm
Panagiotis Moustafellos

5
หากคุณกำลังมองหา SIMBL และพยายามทำให้มันใช้งานได้กับ Lion ลองใช้ EasySIMBL: github.com/norio-nomura/EasySIMBL/downloads
Zachary Murray

2
สามารถยืนยันได้ว่า EasySIMBL + MouseTerm ใช้งานได้กับ Mavericks ด้วย
jcr

2
EasySIMBL รุ่นล่าสุดอยู่ที่นี่แล้ว (ปัจจุบันคือ 1.6): github.com/norio-nomura/EasySIMBL/releases
Nathaniel Heinrichs

100

และหากคุณใช้ iTerm ให้เพิ่มสิ่งนี้ลงใน vimrc ของคุณ

:set mouse=a

7
ใช้งานได้กับแอพเทอร์มินัล OSX เริ่มต้นด้วย
เอียน

25

นี่เป็นคำถามเก่า แต่เป็นคำถามยอดนิยมใน Google ดังนั้นฉันจึงรู้สึกว่าจำเป็นต้องให้คำตอบที่อัปเดต

การรัน OSX El Capitan 10.11 การเลื่อนเมาส์และแทร็กแพดใช้งานได้ (TM) สำหรับฉันใน Terminal.app ตามค่าเริ่มต้น อย่างไรก็ตามในบางครั้งอินพุตของเมาส์ / แทร็กแพดก็หยุดการจัดการบัฟเฟอร์กลุ่มและเริ่มเลื่อนบัฟเฟอร์เทอร์มินัล คำตอบคือCommand+Rหรือมุมมองเมนู -> อนุญาตการรายงานเมาส์ การเปิดใช้งานทำให้การเลื่อนเมาส์ / แทร็กแพดสามารถเลื่อนเคอร์เซอร์เป็นกลุ่มได้


เฮ้ฉันรู้ตัวว่าพยายามกด Command + R ผิดครั้งแทนที่จะเป็น Control + R เพื่อรับคำสั่งล่าสุด! นั่นอาจเป็นสิ่งที่ทำให้ฉัน ขอบคุณ!
Teddy

6
  • เมนู Termanal> View> Allow Mouse Reporting
  • เมนูเทอร์มินัล> การตั้งค่า> แป้นพิมพ์> เลื่อนหน้าจอสำรอง

4

คุณสามารถอ่านบทความนี้ได้ แต่ฉันค่อนข้างแน่ใจเนื่องจากเทอร์มินัลเริ่มต้นใน Mac OS X มีแถบเลื่อนในตัวคำสั่งเมาส์วีลจะไปที่มันโดยอัตโนมัติ คุณสามารถใช้ gVim ตามที่แนะนำในคำตอบก่อนหน้านี้ได้ ฉันพบว่าโดยทั่วไปฉันไม่ต้องการใช้เมาส์ใน Vim แม้ว่าจะต้องเอามือออกจากแป้นพิมพ์

ฉันแค่ใช้50jเพื่อลงและ50kขึ้นไป ไม่ใช่การเลื่อนอย่างแน่นอน แต่ทำงานได้ดี


ขอบคุณนั่นไม่ใช่การเลื่อนอย่างแน่นอน แต่ฉันคิดว่าดีกว่าเพราะมือของฉันอยู่บนแป้นพิมพ์ตลอดเวลา
hora

@hora - ใช่การเลื่อนคงจะดี แต่น่าเสียดายที่ฉันไม่คิดว่ามันทำได้
Topher Fangio

13
หรือใช้ CTRL + f และ CTRL + b เพื่อเลื่อนไปข้างหน้าและถอยหลังทีละหน้าจอ หรือ CTRL + d และ CTRL + u เพื่อเลื่อนขึ้นและลงครึ่งหน้าจอ
Dan Dyer

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

@thrope - จริงมากฉันใช้บ่อยมากจริงๆ vสำหรับโหมดภาพจากนั้นเลือกข้อความที่ฉันต้องการ อย่างไรก็ตามฉันมักต้องการทั้งบรรทัดหรือชุดของบรรทัดดังนั้นเพื่อหลีกเลี่ยงปัญหาการวางบรรทัดใหม่โดยทั่วไปฉันจะนับบรรทัดและกดddเพื่อลบ ช้าลงบ้างในบางครั้ง แต่ก็เป็นสิ่งที่ฉันเคยชิน
Topher Fangio


2

ตรวจสอบให้แน่ใจขั้วเป็นxtermและไม่ได้อยู่ในansi Terminal Menu > Preferences > Profiles > Advancedฉันบังเอิญเลื่อนไม่ได้โดยการเปลี่ยนประเภทคำด้วยความพยายามที่ไร้เดียงสาเพื่อให้สีทำงานผ่าน ssh


1

ใช้ gVim ซึ่งให้สภาพแวดล้อมการแก้ไขข้อความในหน้าต่างที่คุณเลื่อนได้ Terminal ไม่เกี่ยวข้องเมื่อใช้ gVim


2
ไม่เกี่ยวข้องจริงๆ - เขาอาจจะเข้าถึงกลุ่มบนเครื่องอื่น (ผ่าน SSH) - ในกรณีใด ๆ บน mac ที่ MacVim เป็นที่ต้องการ graphcial รุ่นcode.google.com/p/macvim
robince

1

ฉันใช้ xterm ใน X11 (XQuartz 2.3.4) และ vim ทำงานได้ดีมากกับเมาส์และรองรับ 256 สี

นี่คือ ~ / .Xresources ที่ฉันใช้เพื่อทำให้ xterm ดีขึ้นใน X11:

XTerm*faceName: Lucida Sans Typewriter Regular
XTerm*faceSize: 9
XTerm*utf8: 1

xterm*saveLines: 1000
xterm*jumpScroll: true
!xterm*awaitInput: true
!xterm*multiScroll: true

XTerm*scrollBar: false
xterm*scrollbar*thickness: 16
xterm*rightScrollBar: true

XTerm*foreground: white
XTerm*background: grey10
!XTerm*background: black
XTerm*cursorColor: yellow

xterm*visualBell: false

xterm*loginShell: true

เคล็ดลับเล็ก ๆ น้อย ๆ ในการลบเสียงกระดิ่งใน xterm ของ X11 ให้พิมพ์คำสั่งนี้:

xset b 0

ฉันได้ลอง xterm ไม่ใช่แฟนตัวยงแม้ว่าฉันจะไม่รู้ว่าทำไมมีบางอย่างเกี่ยวกับเรื่องนี้ที่ทำให้ฉันผิดหวัง บางทีฉันจะยิงอีกครั้ง
hora

สิ่งเดียวที่เปลี่ยนแปลงคือการคัดลอกและวาง วางโดยคลิกกลางของเมาส์ (หรือ alt + คลิก) และคัดลอกเพียงแค่เลือกข้อความบางส่วน แน่นอนในกลุ่มคุณจะต้องปิดการใช้งานเมาส์เพื่อให้สามารถคัดลอกบางสิ่งบางอย่างภายนอก X11 หรือวางบางสิ่งจากภายนอก X11 หรือเป็นกลุ่มในขณะที่แทนที่พฤติกรรมเมาส์ของ X11
XPac27

1

ฉันอยากจะแนะนำให้ใช้ iTerm - มันมีข้อดีมากมายเหนือเทอร์มินัลเช่นการรองรับเมาส์ 256 สีการคัดลอกและวางที่เหมาะสม (คัดลอกอัตโนมัติการเลือกคำ / URL ด้วยการดับเบิลคลิกการวางคลิกกลาง) ...


มีโทนสีในตัวใน iTerm หรือไม่? ฉันจะเปลี่ยนสีได้อย่างไรดูเหมือนจะคิดไม่ออก ... บทสนทนา 'แสดงข้อมูลเซสชัน' ดูเหมือนจะไม่ให้ฉันบันทึกโปรไฟล์อื่น
hora

ใช่การตั้งค่าเป็นเรื่องตลกเล็กน้อย ... ไปที่บุ๊กมาร์ก -> จัดการโปรไฟล์ -> แสดงโปรไฟล์และคุณสามารถตั้งค่าสีได้ จากนั้นคุณไปที่บุ๊กมาร์ก -> จัดการบุ๊กมาร์กและตั้งค่าเริ่มต้นหรือตามที่คุณต้องการใช้โปรไฟล์การแสดงผลที่คุณต้องการ
ปล้น

ฉันไม่สามารถแม้แต่ Option + ลูกศรซ้ายเพื่อย้อนกลับทีละคำใน iTerm คุณล้อเล่นฉันตอนนี้?
IIllIIll

-1

เมื่อใช้ iTerm ให้สร้างไฟล์. vimrc (หากยังไม่มี) ในโฮมโฟลเดอร์ของคุณและเพิ่มบรรทัด:

:set mouse=a

การเลื่อนลงในกลุ่มเพื่อดูไฟล์จะใช้งานได้หลังจากนี้


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