Project drawer like in TextMate

147 views
Skip to first unread message

Vladimir Penkin

unread,
Aug 17, 2009, 3:17:11 PM8/17/09
to vim_mac
Hello all.
I just wondering is it possible to implement such cool feature of
textmate like Project Drawer in Vim? I think this will be a great
feature. But I don't know is it possible.
Thanks Björn for a great job. I really love MacVim.

Joseph Kocherhans

unread,
Aug 17, 2009, 7:14:44 PM8/17/09
to vim...@googlegroups.com
There is a Cocoa plugin architecture in MacVim, though I'm not sure what the status is. I couldn't find much by googling or reading the changelogs. Maybe someone else can shed some light on where this ended up, or if it is likely to stay? As far as I can tell, those patches, or something similar made it into the code.


Joseph

dacresni

unread,
Aug 18, 2009, 10:20:16 AM8/18/09
to vim_mac
so your not depending on a gui, there is NERDtree.
http://www.vim.org/scripts/script.php?script_id=1658

not that I have anything against the GUI but I always thought of this
program as the Camino of the Firefox Community

Воффка Пенкин

unread,
Aug 18, 2009, 2:21:11 PM8/18/09
to vim...@googlegroups.com
Yes I use NERDtree right now, but I thought that have a shiny cocoa project drawer with a vim functional will be great. This will be much greate if we could use vim bindings in it.
--
I'm only noise in the wires

björn

unread,
Aug 20, 2009, 4:59:15 PM8/20/09
to vim...@googlegroups.com
2009/8/18 Joseph Kocherhans:

I don't know the status either. This was Matt's project and I was
hoping some would catch on to it but it seems to have been forgotten.

This idea of a project drawer seems to come up quite often. The only
problem here is that I have never used TextMate so I cannot even begin
to guess what's so great about this feature (which NERDTree etc. can't
handle [for the record: I don't use this plugin either, but as far as
I can tell it does pretty much the same thing]). For this reason I
don't think I am the right person to be working on such a feature.

What I am saying is this: if anybody wants this feature then

a) try to use the plugin architecture to implement it as a plugin;
this would probably require that you work on the plugin architecture
as well since it is _not_ mature. I'll merge improvements to the
plugin arch. though so your work will be appreciated (by me at the
very least).

b) fork MacVim.git and hack away without using the plugin stuff;
probably easier than (a) but I do not think I'd want to merge such
code into mainline...I'd like to relegate this type of non-essential
feature to a plugin. Remember that MacVim is still Vim (not
TextMate/Xcode/.. or an IDE) and I want to keep it that way.

I'll spell it out: I do not like option (b) but option (a) I think
would be great.

Finally, this is not a trivial task due to the difficulty in
communicating with Vim (via Distributed Objects). There may be a
quite a few pitfalls.

Good luck,
Björn

Воффка Пенкин

unread,
Aug 21, 2009, 1:32:56 AM8/21/09
to vim...@googlegroups.com
I will try to implement this, this is very interesting for me. I will report if there will be any progress

Tobia Conforto

unread,
Oct 8, 2009, 11:07:54 AM10/8/09
to vim_mac
Hello Björn and others

Would it be simpler to just have a Cocoa drawer of open buffers?
Much like the Buffers menu, except it wouldn't be a menu but a drawer.

Tobia

Wayne Seguin

unread,
Oct 8, 2009, 11:45:40 AM10/8/09
to vim...@googlegroups.com, Wayne Seguin
Why not just use NERDTree for this ?

~Wayne

Rui Carlos Gonçalves

unread,
Oct 8, 2009, 12:16:10 PM10/8/09
to vim...@googlegroups.com, Wayne Seguin
We could also ask "Why not just use Vim on Terminal?".

The reason why I think a project drawer would be useful is more or
less the reason why sometimes I use MacVim instead of Vim.

Rui Gonçalves

Marcus Ferreira

unread,
Oct 8, 2009, 3:23:31 PM10/8/09
to vim...@googlegroups.com

NERDTree is great, but a cocoa drawer is more info in less space. It would a very nice option.

Marcus
--
________________________________________
Marcus Vinicius Ferreira

caruso_g

unread,
Oct 9, 2009, 9:19:15 AM10/9/09
to vim_mac
On Oct 8, 9:23 pm, Marcus Ferreira <ferreira...@gmail.com> wrote:
> NERDTree is great, but a cocoa drawer is more info

More info? I used (I use, actually) both TextMate then MacVim. Which
kind of more infos does provide the project drawer more then NERDTree?
To me it seems the opposite since NERDTree it is also a file browser
and provide you so much more infos at a glance thanks to the color
scheme that differentiate folder from files, from images, it shows
hidden files, it lets you even create bookmarks to retrieve projects
immediately.

> in less space.

What do you mean? You can resize NERDTree just like the drawer. You
can put it to the left, to the right, you can set its width, you can
put side by side with tags finder, and so on.

Please, don't consider my opinion as polemic in any way, it is just
that I can't understand your assertions due to my experience with
NERDTree.

I am using MacVim from to less time to be considered an expert, and
initially I found it a bit… hmm… different. The lack of a project
drawer left me a little bit disoriented. Later, thanks to the great
community behind Vim and MacVim I discovered NERDTree (and a lot of
other plugins, colorschemes, settings etc.) and now I can get and
accomplish so much more in MacVim/NERDTree then in the "obsolete"
project drawer in TextMate.
Really, give it a try, NERDTree is all you just need to navigate/
create files, navigate/create projects, browse your Mac, etc.

Wayne Seguin

unread,
Oct 9, 2009, 10:00:17 AM10/9/09
to vim...@googlegroups.com, Wayne Seguin

I honestly could not sum up my thoughts on this issue better than
this. Excellent points.

~Wayne


Matt Tolton

unread,
Oct 9, 2009, 1:47:07 PM10/9/09
to vim...@googlegroups.com, Wayne Seguin
Personally, I think that NERDTree is kind of inefficient. I'd
recommend something like lusty explorer for efficient file browsing
and buffer switching:

http://www.vim.org/scripts/script.php?script_id=1890

björn

unread,
Oct 9, 2009, 2:08:11 PM10/9/09
to vim...@googlegroups.com, Wayne Seguin
2009/10/9 Matt Tolton:

>
> Personally, I think that NERDTree is kind of inefficient.  I'd
> recommend something like lusty explorer for efficient file browsing
> and buffer switching:
>
> http://www.vim.org/scripts/script.php?script_id=1890

That is really neat! I never got into using NERDTree for some reason
or other but this script is immediately obvious how to use and it
feels snappy.

Thanks for the tip Matt!

Björn

Johannes

unread,
Oct 9, 2009, 9:59:43 AM10/9/09
to vim...@googlegroups.com
The advantage of a project drawer would -- in my opinion -- be that
this drawer will be
open all the time, regardless in which tab I currently work in. With
NERDTree you need
to reopen NERDTree for every tab you use. This is basically the same
thing with taglist,
it works great, it would just be perfect if it stayed open for all
tabs, not just in one.

my 5eurocents ;)

2009/10/9 caruso_g <peppe...@gmail.com>:

Marcus Ferreira

unread,
Oct 9, 2009, 6:11:41 PM10/9/09
to vim...@googlegroups.com
Caruso,

Being more specific, "more info" and "less space" was meant as a font size issue. When editing files I use Monaco 12 on both MacVim and TextMate. When browsing my directory tree TextMate can display more files and dirs because of its smaller font on the drawer.

When I am working with my MacBook, using a second 22" monitor, developing with MacVim is great. When I am on the move, using only one display, I lost a lot of display area because it is not possible to set NERDTree font to be a different one from the rest of my MacVim buffers. In this regard, TextMate serves me better because I can see more files of my current project in "less space".

Steven Michalske

unread,
Oct 11, 2009, 8:39:30 PM10/11/09
to vim...@googlegroups.com

On Oct 9, 2009, at 3:11 PM, Marcus Ferreira wrote:

> Caruso,
>
> Being more specific, "more info" and "less space" was meant as a
> font size issue. When editing files I use Monaco 12 on both MacVim
> and TextMate. When browsing my directory tree TextMate can display
> more files and dirs because of its smaller font on the drawer.
>


I have the best idea.......

Make a cocoa drawer that can hold a vim buffer...

Then we can add things like NERDTree and similar plugins to display in
the drawer.

NERDTree then can be configured to be a strict list of files that are
your project, giving you a project drawer.

Hardkrash

Johannes

unread,
Oct 12, 2009, 4:31:08 AM10/12/09
to vim...@googlegroups.com
2009/10/12 Steven Michalske <smich...@gmail.com>:
+1
That is exactly what I would like to have

even if I am technically to able to implement it :(

>
> >
>

Marcus Ferreira

unread,
Oct 12, 2009, 12:15:34 PM10/12/09
to vim...@googlegroups.com

Amazing idea.....

 

dacresni

unread,
Oct 12, 2009, 1:24:08 PM10/12/09
to vim_mac
I like the idea even though it begs to question the necessity of a
drawer UI. gvim particularly respects the portability of the UI by
keeping things like this to a minimum. I think this project should
replace the Cocoa_Vim and features like this should be in a special
branch. The problem is that one of the design goals is to keep vim as
an editor only which is why such features as an in editor Browser have
never been implemented.

On Oct 12, 11:15 am, Marcus Ferreira <ferreira...@gmail.com> wrote:

Greg Furmanek

unread,
Oct 12, 2009, 1:14:07 PM10/12/09
to vim...@googlegroups.com
+1

I wanted one of those for quite some time.

- Greg
--
Gregory Furmanek
Website: http://www.furmanek.net

Brendan

unread,
Oct 12, 2009, 12:27:21 PM10/12/09
to vim_mac
Like Rui says 'Why not just use Vim on Terminal?'

Having the project drawer as a Cocoa widget allows for NERDTree-like
functionality without having to learn/remember any NERDTree commands.
The mouse may not be the fastest way, but there is no/very little
learning curve. Renaming files is (or should be) done the same way as
in the Finder, moving files is done with drag and drop etc.

Moreover, I may not want to navigate my entire filesystem in my text
editor, the TextMate drawer allows you to drag your project folder
from your desktop, say, drop in the drawer and just work within that.

Brendan

Matt Tolton

unread,
Oct 12, 2009, 7:40:46 PM10/12/09
to vim...@googlegroups.com
There is a plugin architecture in MacVim that anyone can use to
implement a project drawer. There's even a sample plugin which
implements a very basic file browser drawer. Should be easily
findable with a search over the archives.

jason

unread,
Nov 16, 2009, 1:30:42 PM11/16/09
to vim_mac
The reason that I would like a drawer is because I want to have a
project navigator always open. When looking at the tree, I can think
faster about what files I need to be editing. I also forget the name
of some files. I use nerdtree now, but I dont want to open a tree in
my editor, I want it on the side always open. I just want to click on
a file in the drawer and have it open. I think this would be a great
plugin or option in macvim.

Keyan

unread,
Nov 17, 2009, 5:34:43 AM11/17/09
to vim...@googlegroups.com
hi,

i am not sure if this was already discussed in this thread, but i use project.vim for several years now very successfully. it has its deficits, but one feature that makes it even better than project-drawers in IDEs such as eclipse, is that you can freely edit the project file. that means, you can rearrange the files in the way you like most, which obviously does not have to be alphabetical. i have project-files for all my projects, and i also have the drawer constantly open.

cheers,
keyan

jason

unread,
Nov 18, 2009, 3:40:18 PM11/18/09
to vim_mac
I'd like to see a video if possible showing how it works.

Kamen Nedev

unread,
Nov 30, 2009, 11:01:05 PM11/30/09
to vim_mac
Nothing wrong with the aesthetics of a nice, TextMate-like Cocoa
project drawer.

But isn't the idea of going back to having to use the mouse to
navigate a project tree a huge step back for an advanced text editing
environment such as (Mac)Vi(m)? It is obvious that the strictly text-
based interface of Vim sacrifices a lot of the visual appeal of a GUI,
but it does that precisely in order to boost productivity and
efficiency.

For me, the major benefit of using MacVim over Vim in a terminal is
its integration with the Cocoa text system (fonts!), and other native
OS X apps. (Oh, and let us not forget the full screen mode. WriteRoom,
SchwriteRoom...) Otherwise, I tend to hide the toolbar and scroll-
bars, and keep all other distractions at a minimum.

OTOH, the debate about power-user, advanced text editors such as Vi(m)
and *Emacs vs. the latest GUI improvements (whether we're talking '95
or '05 or '09) has been running for quite a few years, both in the
Open and proprietary source code communities. And I think there is a
good reason why these programs tend to eschew the latest GUI features
in favour of their own productivity boosters.

Finally, and despite its cool project drawer, bear in mind that
TextMate itself was also designed rather differently from most common
OS X apps (no toolbar, for instance, and keyboard accelerators for
everything (snippets, etc.) except, *sigh*, the project drawer). Also,
the TextMate interface is meant to be radically re-designed in the
expected 2.x version, although only time will tell how it will
develop.

Just my view on the matter.

Best,

Kamen
Reply all
Reply to author
Forward
0 new messages