You might look at Python code every day, but what is the lens through which you view code? It's your text editor. This article was written for Python Magazine and was first in a series on Python development environments. Here, we look at how Vim users can boost their productivity by having Vim tell you as much as possible about your program, while you're writing it.
It has come to my attention that somebody ‘round these parts has been preaching the gospel of Sublime Text 3. Well, as the resident senior developer (err, old fogey), I feel it’s my duty to provide a counterexample by way of the only TRUE Python development environment you will ever need – and that environment is of course VIM. That’s right. VIM is ubiquitous, fast, and never crashes. And it can do just about anything!
Several modern GUI editors list your open buffers as tabs along the top or bottom of your screen (VisualStudio, DreamWeaver, EditPlus and UltraEdit come to mind), now we have this feature in VIM!
You can quickly switch buffers by double-clicking the appropriate "tab" (if you don't want to use the mouse just put the cursor on the "tab" and press enter). As you open and close buffers the tabs get updated. Buffers that are modified get visually marked and buffers that are open in a window get visually marked. The -MiniBufferExplorer- opens automatically when you open more than one eligible buffer (no need to open the explorer if you’re only editing one file.) -MiniBufExplorer- doesn't bother showing non-modifiable or hidden buffers. You can delete buffers by selecting them and pressing d on the keyboard.
When you are in the -MiniBufExplorer- window, Tab and Shift-Tab move forward and backward respectively through the buffer list.
There are a growing number of optional features in this script that are enabled by letting variables in your .vimrc:
control + the vim direction keys [hjkl] can be made to move you between windows.
control + arrow keys can be made to do the same thing
control + tab & shift + control + tab can be setup to switch through your open windows (like in MS Windows)
control + tab & shift + control + tab can alternatively be setup to cycle forwards and backwards through your modifiable buffers in the current window
Finding the perfect IDE for Python isn’t an easy feat. There are a great many to chose from, but even though some of them offer really nifty features, I can’t help myself but feel attracted to VIM anyway. I feel that no IDE accomplishes the task of giving the comfort of complete power over the code – something is always missing out. This is why I always come back to using IDLE and VIM. Those two seem to be best companions when doing some quick and agile hacking – but when it comes to managing bigger and longer term projects, this combo needs some tweaking. But when it’s done, VIM will be a powerful IDE for Python – including code completion(with pydoc display), graphical debugging, task-management and a project view.
Sous le coude !
This post will be looking at the most important structures Vim provides you for file management, with a quick peek at some of the more advanced features you can get through plugins.
vim's netrw file browser is good enough. With a few tweaks there is no need for plugin like NERDtree. For many tasks you may not even need netrw.
This post is rather a quick tip than a real article. I think I don't have to give a specific context here, since the use case is clear: You've got some JSON from any resource and you want to inspect it for any reason. And since you're a Vim user, of course you want to do that inside your Vim.
L’éditeur doit être configurable, extensible et programmable. Et voilà pourquoi je veux vous présenter VIM comme étant l’éditeur du Développeur.
I’m a programmer. I work with text files for 6-12 hours every weekday so I care about the text editor I use. If switching to a different editor can increase my efficiency by even 10% it would save a good chunk of my time and let me get back to making cool things.
I don’t buy the “you’re thinking 90% of the time and only typing 10% of the time, so your editor doesn’t really matter” argument. Even if the premise is true, the conclusion is wrong.
If I think for 10 minutes and then start typing, I want the typing to take the shortest time possible so I can get back to thinking. Any time I spend typing is an interruption that I want to minimize so I can keep my train of thought.
I recently started using Vim as my primary editor. As I’m adjusting I’m finding a lot of the blog posts people have written about Vim very helpful, so I’m hoping this post will help people too.
Vimcasts contains 68 free screencasts and 47 articles. Browse all content by category, or view all screencasts by publication date.
I think a good way to understand the differences in concept and usage between Vim’s three levels of view abstraction — buffers, windows, and tabs — is to learn how to use each from the ground up. So let’s start with buffers.
Très bonne explication
Lean & mean status/tabline for vim that's light as air.
First I have to admit, I was a heavy user of tabs in Vim.
I was using tabs in Vim as you’d use tabs in most other programs (Chrome, Terminal, Adium, etc.). I was used to the idea of a tab being the place where a document lives.
When you want to edit a document, you open a new tab and edit away! That’s how tabs work so that must be how they work in Vim right?
Nope.
fugitive.vim: a Git wrapper so awesome, it should be illegal http://www.vim.org/scripts/script.php?script_id=2975
Vim plugin for intensely orgasmic commenting.
Rien que ça...
Gundo.vim is Vim plugin to visualize your Vim undo tree.
WebVim is a vim based distribution targeting JavaScript and Web development.