Settings

Theme

Vim plugins and config walkthrough

boddy.im

37 points by notinventedhear 8 years ago · 23 comments

Reader

PuffinBlue 8 years ago

I really want to use/like Vim. Sounds like I'm going to say it not great, but actually this might be a call for help...

I have used Vim for a couple years I think, maybe more now and learned enough to write my own vimrc file from scratch, understanding all the parts I'm adding, what they do and why and sync it via version control etc etc.

I use it on every server I administer/whenever I use the terminal.

I've added many of the plugins mentioned here, they're great.

But I just can't get around the visual layout and moving throughout a project/codebase. Maybe it's my brain, but I highly value visual representation of the open files I'm working on.

Something like Sublime Text with the open tabs visible is just key for me. I can replicate the sidebar with NERDTree which is OK (still a bit annoying navigating it but whatever) but how can I do the same regarding tabs. Alright buffers, you know what I mean. I want to see a visual representation of the files I've got open, not through CtrlP or a key combo, but on screen like in Sublime Text.

Can it be done?

  • no_protocol 8 years ago

    There are many ways, depending on what you specifically need.

    For the most basic command that will probably work immediately, just start up vim with multiple files like so:

        vim -p file1 file2
    
    This will open file1 and file2 in separate vim tabs.

    But vim tabs may not behave the way you would expect them to coming from other programs. You might prefer to just list all the buffers within one window instead. There are many plugins dealing with buffer management on the vim wiki and elsewhere. Here are two I found with a Google search that look at a glance like they might work [0], [1] (haven't tried, just looked at the page briefly)

    [0]: https://github.com/ap/vim-buftabline

    [1]: https://github.com/bling/vim-bufferline

    • PuffinBlue 8 years ago

      I've steered away from using actual tabs as Vim uses them becauses I wanted to follow the buffer/window/tab mentality Vim follows. It's a logical setup.

      I will take a look at these. I think that because I've got lightline installed I'll have to either integrate one of these or just go for one on it's own or something.

  • earenndil 8 years ago

    Generally I use screen (tmux can also work), and make each screen be titled to the file it has vim opened to. It's not a tree, but representing my files as a tree seems counter-productive to me -- I don't care where my files are, just what they are.

  • craftyguy 8 years ago

    You can show open buffers in your status line. I use the 'buftab' plugin for it, but I'm sure there are others as well.

  • ultramann 8 years ago

    I used to use bufftabline, https://github.com/ap/vim-buftabline. I think something like it is what you're looking for? If it's not quite right for you the readme in the github repo mentions some other plugins that have similar capabilities.

    I really liked bufftabline when I used it. It was lightweight and did exactly what I wanted it to do, give me an immediate visual representation of the buffers I had open in a familiar tab-like format.

    Eventually I moved towards an even lighter weight setup. Take at look at this video is you're interested in anything like that. https://www.youtube.com/watch?v=XA2WjJbmmoM

    • PuffinBlue 8 years ago

      Actually, buftabline looks perfect. I'm not sure how I have overlooked this.

      I really only need this as a crutch to get over the way I previously used graphical text editors. I know some people say go cold turkey and I have for a loooooong time but I need this representation.

      I'm not sure it's even a 'bad' thing to do, seems quite handy to see what buffers are open without having to write a command. Plus I have a huge amount of screen real estate so I think this might work well.

      Thanks.

      Pl

  • erichdongubler 8 years ago

    I've done some research, as I have the same interest. I know that `neovim` allows clicks on non-tab elements -- I think something akin to `vim-wintabs` and `neovim` might get what you want.

  • bengillies 8 years ago

    If you like tabs, you can just use tabs inside vim instead of buffers

    • PuffinBlue 8 years ago

      It kind of feels like sacrilege though :-)

      • bengillies 8 years ago

        I don't see why? You can of course create as many horizontal/vertical splits inside each tab as you like.

        • PuffinBlue 8 years ago

          Because buffers are files, and what I really want is a list of files indicated, so it seems overkill to set up completely seperate tabs.

polote 8 years ago

The problem of these kind of articles is that it shows to people who are unfamiliar with vim how hard is it to use it, and how many plugins you need to make it usable.

But I think that most people who use vim everyday just started with the most basic vim during several months and then they added one plugin, then two, then three.

But plugins are not mandatory in vim, and you don't need to remember all the shorcuts either,

I use vim a lot and I use my mouse for a lot of things in vim, and I don't know how to go 15th line below at the third word of the line because I use the mouse.

  • sp4rki 8 years ago

    But vim is really not that hard to use. The initial learning curve might be steep, but as a whole vim is in general easy to use once you 'grok' it.

    Anyways I do agree with you on one thing, this articles convey the idea that vim requires plugins and magic to be usable, which in my opinion is a disservice. People get on the bandwagon and install 50 plugins and then complain that vim is unusable when sshing into a server because it doesn't have the plugins they use.

  • craftyguy 8 years ago

    I don't think that's a problem with these kinds of articles. Consider for a moment that new users and users who are not even users yet are NOT the target audience.

    I see this article as a 'more advanced knowledged required', aka the folks who are past the point of slowly building up a workflow (your example).

    I've been hunting for a good way to visualize git stuff within vim, and this article introduced me to a neat plugin that I will try out right now!

tbrock 8 years ago

I hate to be that guy but most people have moved on from Vundle and use VimPlug now.

iLemming 8 years ago

Well, in every blogpost about a editor or IDE there's gotta be someone who starts a flamewar. It's my turn I guess. I am a diehard Vimmer. I use Vi bindings system-wide. I've been using Vim for many years. Yet one day I woke up and I realized - Emacs is better Vim than Vim. Vimmers, if you think I'm trolling, try Spacemacs for yourselves. I guarantee - you'd be amazed.

  • earenndil 8 years ago

    I'm sorry, but that's not objective. Some people may prefer emacs, others may prefer vim, others may prefer notepad++ or intellij. And by saying things like this or responding them, you're just feeding the fire. Just let people use what they want.

    • iLemming 8 years ago

      I'm not trying to persuade people to stay in Spacemacs. I'm asking to try it. It has some nice ideas that I would've definitely tried to re-implement in Vim myself, if I would've chosen not to stay.

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection