给 MacVim 增加了些类似 TextMate 的功能,求帮忙测试

2011-05-29 17:19:27 +08:00
 ratazzi
rt,增加了类似 Project Drawer 和 Go to File 的功能

下载地址: http://linode.ratazzi.org/macvim.zip
md5sum: 265c1ca1712d914daddf9e2059a27780
sha1sum: ddb51db7eb0345a878c4bbd55101a78bca599f09

测试前请阅读文档: http://github.com/ratazzi/macvim/wiki

Screenshot:
http://www.yupoo.com/photos/ratazzi/81211497/
http://www.cl.ly/3L271X3V0y2p2X2D2x1m

非常感谢。
6824 次点击
所在节点    Vim
18 条回复
miles
2011-05-29 17:40:02 +08:00
不错,支持
yugushen
2011-05-29 18:14:28 +08:00
在我机子上,无法打开窗口。Log 如下:

Dyld Error Message:
Library not loaded: /gentoo/lib/libiconv.2.dylib
Referenced from: /Users/username/Downloads/macvim/MacVim.app/Contents/MacOS/Vim
Reason: Incompatible library version: Vim requires version 8.0.0 or later, but libiconv.2.dylib provides version 7.0.0
ratazzi
2011-05-29 19:02:46 +08:00
@yugushen 非常感谢提供的错误信息,原来是我编译时受环境变量影响用到了非标准的系统库所致,已经重新编译,下载地址不变,如果有时间的话再帮忙测下,不胜感激。

md5sum: 5cb1bb1a3754aac2a84255bc34783d4b
sha1sum: 70de165e6acdbf9df9b3acc3160048a1143c22f2
fanzeyi
2011-05-29 19:05:55 +08:00
做成插件多好.......
ratazzi
2011-05-29 19:12:29 +08:00
@fanzeyi 这两个功能都是用 objc 写的,是脚本无法完成的功能,如果可能的话后面会改成插件
fanzeyi
2011-05-29 20:16:14 +08:00
@ratazzi 额 主要是插件一般情况下可以跨平台..... =v=
daqing
2011-05-29 21:34:09 +08:00
我在用vim-cocoa,楼主要是能把这些功能移植到vim-cocoa就好了!
ratazzi
2011-05-29 21:40:46 +08:00
@daqing 暂时没有这个想法,抱歉。
yugushen
2011-05-29 22:46:49 +08:00
@ratazzi 新版本运行正常。简单测试了 Go to File 和 Project Drawer,都没什么问题,功能和限制基本跟 Wiki 上说的一样。

有个想法,是否有可能做成 SIMBL 插件的形式?因为 Vim 对于添加这种非跨平台的功能非常谨慎,所以你的代码估计很难合并到 MacVim 主支里。做成插件的好处,一个是用户不必重新安装“另一个版本”的 MacVim,还有是每当主版本有更新,插件不需要重新编译。
ratazzi
2011-05-30 14:23:38 +08:00
@yugushen 非常感谢,如果有可能做成插件话那最好不过了,不过现在对 Cocoa 还不熟,目前的两个功能基本也是拼出来的,还不完善,做成插件是下个阶段的任务
Livid
2011-05-30 14:44:07 +08:00
非常好。

如何能够设置忽略的文件扩展名呢?

比如我不想在 Project Drawer 里显示 *.pyc 和 *.pyo 结尾的文件。
Livid
2011-05-30 14:48:00 +08:00
当我打开了 4 个文件时,在 File 菜单下面出现了四个 Go to File。
ratazzi
2011-05-30 15:00:47 +08:00
@Livid 暂时还不可以,后面会加入,感谢报告 bug
walleve
2011-06-14 00:11:40 +08:00
@ratazzi @yugushen
其实插件是最好的选择,实在不行,做并行的发布包也不是没可能,呵呵,只是维护成本相对比较高
noahasm
2011-06-15 09:39:12 +08:00
楼主这个 project drawer 很赞, 国外也有人做了类似的修改,但是他的 drawer 是内嵌在 vim window 里的,没有楼主的赞. 可以借鉴参考一下:

https://github.com/alloy/macvim/
ratazzi
2011-06-15 11:00:03 +08:00
@noahasm alloy 已经发邮件给我,希望我跟它们合并,协作开发,我还没想好
noahasm
2011-06-15 12:31:19 +08:00
原来 alloy 的 fork 里面有个 file-drawer 的分支, 这个分支最新的版本已经把 drawer 移除改成内嵌的侧边栏了, 但是它以前的版本里面还有, 所以只要:

git clone git://github.com/alloy/macvim.git
cd macvim

git checkout -b file-drawer origin/file-drawer
git reset --hard d0babab6fd1c48c1cb5f

修改 src/MacVim/MMFileDrawerController.m
在第 547 行: [drawer open]; 下加上一行

[drawer openOnEdge:NSMinXEdge];

保存, 然后

./configure --with-features=huge --enable-rubyinterp --enable-pythoninterp --enable-perlinterp --enable-cscope

make

然后 open src/MacVim/build/Release/, 把里面的 MacVim.app 拖到你的 Application 文件夹就可以运行它了, 调出 file drawer 可以从 MacVim 的菜单 Window -> Open File Brwoser, 也可按快捷键(菜单里有提示)

效果如: http://min.us/lEse6
alloy
2011-06-17 05:53:42 +08:00
@noahasm I hope the translation I have is correct :)

* I understand that you dislike the browser in a sidebar instead of in an actual window drawer. I think a drawer is nicer as well, however, it becomes a problem when using MacVim in fullscreen mode. This will be especially noticeable when Lion comes out, which encourages fullscreen usage.

* To get the drawer on the left edge of the window you don't need to change the source, but instead set the preference like so: $ defaults write org.vim.MacVim MMDrawerPreferredEdge 1

Hope this helps :)

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/13698

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX