在Mac终端中在Vim中滚动


89

我一直在努力寻找在Mac终端中的Vim内是否有可能使用鼠标滚轮来滚动,但是没有运气。似乎只有X11或iTerm支持此功能。

在我放弃之前,我想我会尝试这里的天才,看看是否有人知道这样做的方法。那么,有人知道我是否可以进行设置吗?

还是我应该认真考虑使用其他终端应用程序?


您可以在其他平台或终端编辑器中执行此操作吗?如果有一个基于X的VI实现,我想它可以支持它,但是您不希望支持滚动鼠标来控制回滚缓冲区吗?
benc

在Ubuntu终端中,您可以滚动,这就是我要问的原因,我想看看我的Mac是否可以具有相同的功能。
hora

1
@hora-可以,只需使用iterm。您还可以得到256种颜色,明智的复制和粘贴等
robince

Answers:


68

http://bitheap.org/mouseterm/

使用MouseTerm(并确保确保先安装SIMBL!),然后使用Mac Terminal滚动就可以像超级按钮一样魅力十足,甚至可以远程操作。

您需要完全退出终端应用程序(Command + Q),然后在安装MouseTerm之后再次启动它。


2
哇,那正是我想要的。同时,我已经习惯于不使用鼠标,但这仍然很有用。
霍拉

8
对于VIM坚果加入set mouse=a在.vimrc作品就像MouseTerm魅力
帕纳约蒂斯Moustafellos

5
如果您正在寻找SIMBL,并且试图使其在Lion上运行,请尝试EasySIMBL:github.com/norio-nomura/EasySIMBL/downloads
Zachary Murray

2
可以确认EasySIMBL + MouseTerm也可以在Mavericks上使用
jcr 2014年

2
EasySIMBL最新版本现已发布(当前为1.6):github.com/norio-nomura/EasySIMBL/releases
Nathaniel Heinrichs

99

如果您使用的是iTerm,请将其添加到vimrc

:set mouse=a

6
也适用于默认的OSX终端应用程序。
伊恩

22

这是一个老问题,但在Google上排名很高,因此我不得不提供最新答案。

运行OSX El Capitan 10.11,vim鼠标和触控板滚动默认在Terminal.app中对我有效。但是,有时鼠标/触控板输入停止操纵vim缓冲区,并开始滚动终端缓冲区。答案是Command+R或菜单视图->允许鼠标报告。打开它允许鼠标/触控板滚动操作在vim中移动光标。


嘿,我意识到我错误地尝试按Command + R一次而不是Control + R来获取最新命令!那可能就是吸引我的原因。谢谢!
泰迪

6
  • 菜单>视图>允许鼠标报告
  • 终端菜单>首选项>键盘>滚动备用屏幕

4

您可以阅读本文,但是我很确定,由于Mac OS X中的默认终端具有内置的滚动条,因此鼠标滚轮命令会自动转到该滚动条。您一定可以按照上一个答案中的建议使用gVim。我发现我通常不希望在Vim中使用鼠标,因为它使我的手脱离了键盘。

我只是50j用来下降和50k上升。滚动不完全,但是效果很好。


谢谢,这不是完全滚动,但是我认为这样会更好,因为我的手一直在键盘上。
hora

@hora-是的,滚动肯定会很好,但是不幸的是,我认为这不是可行的。
Topher Fangio

13
或者使用CTRL + f和CTRL + b一次向前和向后移动一个屏幕。或按CTRL + d和CTRL + u上下移动半个屏幕。
丹·代尔

这不只是滚动-您还可以使用鼠标标记视觉选择,移动窗口边界等。它基本上使图形程序变得多余,并且非常适合在远程计算机上工作时使用。
罗宾斯

@thrope-非常正确,我实际上经常使用它。v为可视模式,然后选择所需的文本。但是,我通常需要整行或一组行,因此,为避免换行粘贴问题,我通常只计算行数并单击dd以删除它们。有时会慢一些,但这是我已经习惯的。
Topher Fangio


2

确保终端xterm不在&ansiTerminal Menu > Preferences > Profiles > Advanced。我无意间通过更改术语类型打破了滚动,只是天真地尝试通过ssh着色。


1

使用gVim,可以在可以滚动的窗口中为您提供文本编辑环境。使用gVim时不涉及终端。


2
不太相关-他可能正在另一台计算机上通过ssh访问vim-无论如何,在mac上,macvim是首选图形版本code.google.com/p/macvim
robince

1

我在X11(XQuartz 2.3.4)中使用xterm,vim在鼠标上工作得很好,并且支持256种颜色。

这是〜/ .Xresources,用于在X11中使xterm更好:

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

小提示,要删除X11的xterm中的铃声,请输入以下命令:

xset b 0

我已经尝试过xterm,虽然我不知道为什么,但它不是超级粉丝,关于它的某些事情使我失望。也许我再给它一个镜头。
hora

唯一更改的是复制和粘贴。通过鼠标的中键(或alt +单击)完成粘贴,只需选择一些文本即可完成复制。当然,在vim中,您必须禁用鼠标才能复制X11之外的内容,或者在覆盖X11的鼠标行为的同时从X11或vim外部粘贴内容。
XPac27

1

我建议使用iTerm-与终端相比,它具有许多优势,例如鼠标支持,256色,明智的复制和粘贴(自动复制,双击选择单词/网址,单击中键)...


iTerm中是否有内置的配色方案?如何更改颜色,似乎无法弄清楚...“显示会话信息”对话框似乎无法让我保存其他配置文件。
hora

是的,配置设置有点有趣...转到书签->管理配置文件->显示配置文件,即可设置颜色。然后,转到“书签”->“管理书签”并设置默认值,或使用任何想要使用的显示配置文件。
robince

在iTerm中,我什至无法使用Option +向左键一次返回一个单词。你现在在开玩笑吗?
IIllIIll

-1

使用iTerm时,请在主文件夹中创建一个.vimrc文件(如果尚未存在)并添加以下行:

:set mouse=a

之后,在vim中向下滚动以查看文件。


此答案与一年多前发布的答案直接重复。
moopet
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.