IDEs With VIM Text Editing Capability?
An anonymous reader writes "I am currently looking to move from text editing with vim to a full fledged IDE with gdb integration, integrated command line, etc. Extending VIM with these capabilities is a mortal sin, so I am looking for a linux based GUI IDE. I do not want to give up the efficient text editing capabilities of VIM though. How do I have my cake and eat it too?"
Netbeans with the Vi Vim for netbeans plugin.
Netbeans is FOSS, runs on Windows, Linux and OS X. It handles Java, C/C++, PHP, Python, Ruby, Groovy and does a bunch of other stuff.
There is the viPlugin for Eclipse as well - I just happen to like Netbeans better.
The ActiveState folks list VI key bindings as a feature for their Komodo and Komodo Edit products. These are closed source though Komodo Edit is free as in beer. It is cross platform - covering the win/lin/mac world.
I'm sure there are other options but those are the largest projects I know of that do what you want.
It's hard to believe that's how Micronians are made. Why don't we see it right now by having you both kiss one another?
Is there anything Emacs can't do? :-)
Carousel is a lie!
I think there's an app for that on the Emacs operating system.
Qt Creator has Vim bindings. It's possible to create non Qt applications messing with settings on the .pro file.
English is not my first language. Corrections and suggestions are welcome.
Could anyone explain the reason why simply extending vim is being ruled out? Why is it considered a "mortal sin"?
"A witty saying proves nothing." - Voltaire
I know it's not out yet, but the katepart (the editor widget) already has a VI mode that supports most of the original commands and modal editing. Worth giving a try: the betas are getting better and better...
what about GVIM? (stupid answer)
Here are some VIM eclipse plugins:
http://vimplugin.org/
http://eclim.org/
Though I tend not to like these since the native plugins for whatever you might be developing inside eclipse tend to be more complete.
To blog is sublime
Sounds like you are ready for Emacs, son.
Umm vim supports plugins, and there is of course a GDB one.
Also there is an integrated command line called :! :%!whatever to replace it with output
or if you want to get more fancy you can open multiple buffers and
Vim easily integrates with the shell. You just have to know how to use both.
I'm not entirely sure of not extending vim but "not wanting to give up the efficient text editing capabilities of VIM" could mean.
Its, a IDE and will allow you to use vim as well.
Normally, I'm a vim+make guy, but I occasionally have to use Visual Studio. The ViEmu plugin was the best $99 I've ever spent on windows software. Doesn't embed vim, but it does support all of the vim extensions I use on a regular basis. It's actually pretty impressive how much of vi/vim they manage to implement - you quickly forget that you're not in the "real thing".
They also have plugins for Word,Outlook,etc but I don't use those programs so I haven't tried their plugins.
One minus: I don't think it works on the free version of VS (which I believe lacks plugin support in general) so this only applies if you have the full VS distro.
As a UNIX partisan, I can't recommend VS as your primary environment (so I guess I'm not answering the posters question, really) but if you're like me and just need a windows environment occasionally, I highly recommend checking it out.
I haven't tested it thoroughly, so I don't know how much of the VI command set it implements, but Komodo IDE has a 'vi' mode, and I believe it would fulfill your other requirements as well. (As a plus, it's fully cross platform, so you can use it everywhere)
Matthew Walker
http://www.tweeterdiet.com/ - My Diet Tracking Tool
Try Emacs.
Seriously. The integration with gdb, gcc, etc is where Emacs really shines. Yes, the Control-Meta-cokebottle commands are a bit annoying, but there's worthwhile tradeoffs there.
The first post was also quite useful. And to be fair, I like vim too.
I am officially gone from
How about using screen? You can have a command line, gdb, vim, $foo... and it's resource friendly as well!
Gvim is pretty good, it might still be too lean for what you are asking for, I would say it's more an intermediary step between vim and a big gui ide.
A lot of people use stuff like MiniBufExplorer or Taglist or Vim 7's built in OmniComplete. Everything an IDE can do, Vim itself can do a lot better.
Patrick "Diablo-D3" McFarland || http://AdTerrasPerAspera.com
Comment removed based on user account deletion
Use EMACS!
Buy a copy of Visual Slick Edit for Linux.
when i get tired of typing i'll do a command line like
vi +100 program.c ; make; ./program arg1 arg2 etc
and then use command history (up arrow+return) to repeat it
it ends up being as fast as an IDE and it's much more flexible.
most importantly to me it works inside an ssh or telnet session with any old unix box.
I'm currently working on switching away from my IDE to vim. There are plenty of plugins to put it on par with most IDEs, and honestly, a lot of the stuff in modern IDEs is just fluff. As for loading down Vim with all the extra stuff, I don't have the plugins autoload, but rather load after I run a script to transition it to my own "IDE Mode." This keeps Vim small and fast when I'm doing ordinary editing. I'm still in the transition phase, so I may not have seen all the disadvantages yet, but as far as I can see, the advantages outweigh them.
I'm also aware that Emacs does it quite well, but I'm more of a Vim user, so I'll stick with that unless I run into a wall and have to use Emacs in Viper Mode instead.
Mortal sin? First, get over your ridiculous predisposition against extending vim. Vim is built to be extended, and extending it can make it much more useful as a tool and not just an editor. If you're good enough in Vim to prefer it as a text editor, then make it comfortable as an environment. There are some amazing extensions for vim, that for me at least, make me much more productive than using an "IDE". Fuzzy file finder, exuberant ctags with taglist, minibufexplorer...
Extending VIM with these capabilities is a mortal sin
Then the worst sinners are the vim maintainers themselves. Even with just the default config, vim is full of IDE features.
Eclipse with VIM http://eclim.org/ . It can do what VIM is doing plus all what Eclipse can. Integrated debugger is just basics.
IMHO, vim is not ideal to use in any IDE.
Graphical IDEs like eclipse or netbeans are all about having nice clicki-like interfaces. That's the direct opposite of the vim interface, which is very flexible and heavily optimized for keyboard-only use.
At the moment, I have to use eclipse for work and for me as a vim user, I think it's a PITA. Even with all the nice features and key bindings it has, I tend to be a lot slower when using eclipse - it's kind of frustrating.
I tried the vim plugins for eclipse but then I realized that it was not what I expected it to be. If you use vim in an IDE, you loose many of the actual advantages of the IDE since its default editor is usually much better integrated. I'd be happy if there was a nice IDE which has vim as its default editor and integrates it well. But at the moment, I don't think there is one which could give you any benefit.
You're probably better off just using all the tools individually, each in an seperate xterm, along with a decent window manager (like i.e. fluxbox) which lets you define some useful key bindings.
Vim emulation for Microsoft Visual Studio:
http://www.viemu.com/
Real men (still) use ed:
http://www.gnu.org/fun/jokes/ed.msg.htm
There was a project to bring vim into anjuta. Though, I'm not sure if it was any successful.
From: patl@athena.mit.edu (Patrick J. LoPresti?)
Message-ID:
Sender: news@athena.mit.edu (News system)
Subject: The True Path (long)
Date: 11 Jul 91 03:17:31 GMT
Path: ai-lab!mintaka!olivea!samsung!zaphod.mps.ohio-state.edu!think.com!snorkelwacker.mit.edu!bloom-picayune.mit.edu!athena.mit.edu!patl
Newsgroups: alt.religion.emacs,alt.slack
Organization: Massachusetts Institute of Technology
Lines: 95
Xref: ai-lab alt.religion.emacs:244 alt.slack:1935
When I log into my Xenix system with my 110 baud teletype, both vi
*and* Emacs are just too damn slow. They print useless messages like,
'C-h for help' and '"foo" File is read only'. So I use the editor
that doesn't waste my VALUABLE time.
Ed, man! !man ed
ED(1) UNIX Programmer's Manual ED(1)
NAME
ed - text editor
SYNOPSIS
ed [ - ] [ -x ] [ name ]
DESCRIPTION
Ed is the standard text editor.
---
Computer Scientists love ed, not just because it comes first
alphabetically, but because it's the standard. Everyone else loves ed
because it's ED!
"Ed is the standard text editor."
And ed doesn't waste space on my Timex Sinclair. Just look:
-rwxr-xr-x 1 root 24 Oct 29 1929 /bin/ed /usr/ucb/vi /usr/bin/emacs
-rwxr-xr-t 4 root 1310720 Jan 1 1970
-rwxr-xr-x 1 root 5.89824e37 Oct 22 1990
Of course, on the system *I* administrate, vi is symlinked to ed.
Emacs has been replaced by a shell script which 1) Generates a syslog
message at level LOG_EMERG; 2) reduces the user's disk quota by 100K;
and 3) RUNS ED!!!!!!
"Ed is the standard text editor."
Let's look at a typical novice's session with the mighty ed:
golem> ed
?
help
?
?
?
quit
?
exit
?
bye
?
hello?
?
eat flaming death
?
^C
?
^C
?
^D
?
---
Note the consistent user interface and error reportage. Ed is
generous enough to flag errors, yet prudent enough not to overwhelm
the novice with verbosity.
"Ed is the standard text editor."
Ed, the greatest WYGIWYG editor of all.
ED IS THE TRUE PATH TO NIRVANA! ED HAS BEEN THE CHOICE OF EDUCATED
AND IGNORANT ALIKE FOR CENTURIES! ED WILL NOT CORRUPT YOUR PRECIOUS
BODILY FLUIDS!! ED IS THE STANDARD TEXT EDITOR! ED MAKES THE SUN
SHINE AND THE BIRDS SING AND THE GRASS GREEN!!
When I use an editor, I don't want eight extra KILOBYTES of worthless
help screens and cursor positioning code! I just want an EDitor!!
Not a "viitor". Not a "emacsitor". Those aren't even WORDS!!!! ED!
ED! ED IS THE STANDARD!!!
TEXT EDITOR.
When IBM, in its ever-present omnipotence, needed to base their
"edlin" on a UNIX standard, did they mimic vi? No. Emacs? Surely
you jest.
You don't have to extend VIM yourself. What's wrong with using plugins? There are many interfaces for debuggers and other things on the VIM website. Extending with plugins might just be easier.
"What lies behind us, and what lies before us are tiny matters compared to what lies within us." Ralph Waldo Emerson
intellij has a nice vim plugin that I have been using since 7.
Supports all of the modes, search / replace, etc.
The only thing I miss is the fancy window-editing, but that is more the fault of intellij than the plugin author.
give anjuta[1] a try, last i peeked it could embed and use both vim and emacs as editing components
[1] http://projects.gnome.org/anjuta/index.shtml
pico!
I use Vim with a large variety of small speciality IDEs and find that most IDEs properly detect changes made outside them and reload the file. While I am running a debugger, I am not modifying code and use the built-in debugger interface. When I need to make a change, I just hit Alt-Tab, modify the file and save, and hit Alt-Tab and the files reloaded in the IDE.
Vim is so 1995
I would be happy with just a project pane, like Textmate has, that doesn't look like ass. I love VIM, but that's pretty much the only thing holding me back from dropping Textmate.
The above is not worth reading.
If you're doing web work, primarily python, Wing IDE has great VIM support. It supports custom vim configurations and all of the good stuff. It has a free version, but I threw down some cash (d to get a sweet integrated debugger and test-running capabilities. I found it superior to both Netbeans and pydev on Eclipse, but both of those also support VIM text editing (with plugins). Basically, pretty much every decent python editor I've tried has supported vim either natively or via plugins.
KDevelop has a VIM mode for its text editor, I believe. Under Settings|Editor|Text Editor. Or at least it used to, a long time ago. You might need to install it as a separate package, or your distro might not package it (silly thing).
Tell the truth and you won't have so much to remember.
KILL THE HERETIC !!
"Ubuntu" -- an African word, meaning "Slackware is too hard for me". - stolen from Dan C alt.os.linux.slackware
Vim has so many IDE features (autocompletion, ctags, syntax), hundreds of plugins that let you customize your environment.. snippets, Doxygen, debugging, compiling.. I'll only suggest you one thing: better concentrate on improving your Vim environment than searching for any other tool that embeds it. Use Vim with GNU Screen after all, that'll give you true IDE experience.
Edit your files with VIM as per usual. Also keep them open in your GUI IDE of choice. Most IDEs detect file changes and will either ask you to reload the files or you can sometimes set options to automatically reload. Now you have the best of both worlds on top of the same source code files - you have all the features of each solution. Also set up your GUI IDE to launch VIM on a source file using a keystroke.
I'm pretty sure emacs can do this!
You could start by learning what your expression means. It does not mean 'to have something and then something extra' but 'to want two mutually incompatible things.' The correct form of the expression as used by non idiots is 'to eat one's cake and have it too.'
At least in 1.3, you can now use CMakefiles (which I use) or regular makefiles as well. The only downside is that it IS made for C/C++.
That said, it is by far my favorite IDE...made the switch from a simple text editor a year ago and haven't looked back...and that's after trying Eclipse....
-- Political fascism requires a Fuhrer.
... use butterflies ! http://xkcd.com/378/
... I was kind of wondering why the hell terrorists needed VIM on an *IED*
Open 4 xterms ...
1) vim - editor
2) make/build
3) gdb or xxgdb or whatever
Ok, I was wrong, you only need 3 xterms for this "fancy IDE" that many have used since the early '80s effectively.
Is this really that hard?
Friends don't let friends run java desktop applications. NOBODY has that kind of RAM to waste.
I use Code::Blocks but I've heard that Eclipse is also great for C++ and other languages, including Java.
if I want to change all of the X to - in an amino acid sequence line I type :s/X/\-/g
yea.. I'm sure that emacs can do it too.. But once all that brainpower is invested, theres no way I'd bother with emacs.. It's like a secretary changing to dvorak after she's hit 200wpm
vim is fast, powerful, user friendly, and quite picky about it's friends.
Storm
It seems to be little-known, but I discovered geany a few months ago and highly recommend it. (I do most of my programming with C and ncurses, and it's just absolutely ideal for what I want it to do.
If you're a zombie and you know it, bite your friend!
Komodo edit has a nice VIM emulation feature.. It is a little slow with huge text files but works great for editing source. Too bad there's no Solaris version I can use at work though :(
http://www.activestate.com/komodo_edit/
http://jedit.org/
I use Vim (mostly gvim built with gtk2) with the following plugins:
- bufexplorer: a quick way for changing buffers
- cscope_maps: full access to cscope, inside vim.
- taglist: by using (ex)ctags it gives you a window with all the tags in the opened files, with the possibility to quickly jump to any tag you want
I also set shortcuts for building and cleaning projects (for instance F8 and F9), for checking errors (F3 to open build log, F4 and F5 to go to prev. and next error), for folding and for many other things.
The only thing that I haven't tried yet is to integrate vim with gdb (I think I saw some plugins for this), and only because I already use cgdb, which is extremely useful. Basically you have a gdb with the extra benefit of having a special window for code listing.
Also, I can use this combination over ssh, which is a big plus for me.
Another option would be to go for xemacs, which is at least as powerful.
While you might have no problem hitting ctrl with your girly hands, us guys with big hands will have to move and twist our wrist in order to get down to ctrl, key, which is a fairly uncomfortable thing to do, and doing it lots of times every hour is going to kill my wrist - having big hands means escape is in a natural position for me while alt and ctrl are far away from my fingers.
It's probably yet another problem that can be traced back to Bill. I started seeing the mutant keyboards bundled with his "OS". The ctrl key, which gets used a lot, used to be where it could actually be reached, but that position defaults to the useless capslock key. Probably until 2003 or 2004, one of the first things for me to do on a new account with such a keyboard was to remap the position of the control keys.
I get too much pain in the wrists to try it your way, by contorting the wrists, to reach the out of the way locations. If I am sloppy I can crease my hand to get at the ctrl key but that quickly causes very sharp pains there too. I hadn't thought about it for a while, now that I have I see that I usually slide my fingers a row down from the home keys (typing home not 'HOME') and do it that way, transferring the pain to the elbows...
It's not so much a problem of what shapes the paint has on the damned keys but the problem that Linux distros now seem to follow the asinine, MBA-designed, One Microsoft Way of key mapping. Before all that stupidity there used to be a whole field called ergonomics and other fields and specialists streamlining tasks through time and motion studies. I bet I can get through a month, or longer, without hitting the capslock key on purpose.
Beta is broken and the link to classic doesn't work. Stop wasting our time or there won't be anybody left here.
Pida lets you embed vim as your editor. So you get all the goodness of an IDE with Vim as your editor. http://pida.co.uk/
If you just need debugging, try cgdb. It's very lightweight.
I am not a Linux guy, but I learned vi using Watcom C/C++ under Windows. Now that that tool has gone open source, it seems there is a Linux version. Will this work?
http://openwatcom.org/
If I'm off, my apologies...
KDevelop 4 hasn't yet been released, but the beta version has all you seem to need and looks pretty decent to me.
Why would you want to run a text editor on an IDE hard drive, they are designed for throughput, not processing power. You should try a hex editor on SAS or if you don't have the $, SATA.
Correction, Komodo Edit is open source - free as in speech - the full IDE contains proprietary extensions to it
VN is for Amish developers