Monday, May 24, 2010

Re: Terminal into vim, best options???

There are quite a few options out there, all with their strengths and
weaknesses. Shell integration is at the top of the Vim wish list. I'm
sure Bram would be more interested in including it if someone
developed and maintained a kick-ass patch :-)

Here is a (quite biased) overview of what's currently available:

-------------------------------------------

Conque Shell
URL: http://code.google.com/p/conque/
Author: Nico Raffo (me!)
Requirements: *nix, python-enabled vim
Type: Plugin

Conque is a Vim plugin, written with Vim script and python. It turns
your Vim buffer into a terminal emulator. In INSERT mode your buffer
behaves like a standard unix terminal. In NORMAL mode you can navigate/
search/page through the terminal output.

Pros:
* Relatively easy to install
* Near complete VT100 support (you can run emacs in a vim buffer)
* Use of Vim features in terminal, including syntax highlighting,
copy/paste, etc
* Active development

Cons:
* No Windows support (coming with Vim 7.3)
* Can be slow, especially with programs which use a lot of terminal
colors

-------------------------------------------

Vimshell
URL: http://github.com/Shougo/vimshell + http://github.com/Shougo/vimproc
Author: Shougo M
Requirements: Works on both *nix and Windows. One small, independent
component may need to be compiled from C source.
Type: Plugin

Vimshell is a shell, written in the Vim scripting language, that runs
in a Vim buffer. The shell was written to take full advantage of all
of Vim's features, for example you can use Vim's omnicomplete
features, or any other normal mode Vim commands, to edit your command
line. Great potential, but missing a few features, particularly
regarding interactive programs.

Pros:
* Relatively easy to install
* Edit the command line with Vim, full use of Vim features in both
normal and insert mode
* Very fast, since there is no background process required
* Windows support
* Active development

Cons:
* Very limited support of interactive programs such as bash, mysql or
python.
* Shell has incomplete functionality compared to bash, etc.
* Documentation only available in Japanese.

-------------------------------------------

screen.vim (Vim + screen/tmux)
URL: http://www.vim.org/scripts/script.php?script_id=2711
Author: Eric Van Dewoestine
Requirements: *nix
Type: Plugin

screen.vim is a Vim plugin which streamlines and enhances the
experience of running split screen terminal with Vim running in one of
the windows and a terminal running in the other. It uses the programs
screen or tmux to manage the split windows and to run the terminal
emulation. Both of these programs are very mature, and will give a
better terminal experience than any other option. However since the
terminal is running independently of Vim, you won't be able to use Vim
commands to interact with the terminal output.

Pros:
* Easy to install
* Great shell support
* Active development

Cons:
* No use of Vim commands to manage the shell window
* Relatively little integration between Vim and the shell

-------------------------------------------

Vim-Shell
URL: http://www.wana.at/vimshell/
Author: Thomas Wanda
Requirements: *nix, patch and recompile Vim from source
Type: Extension

Vim-Shell is a Vim extension which converts a buffer into a terminal
emulator. The shell window itself is very fast and functionality is
very strong. It is works great for running complex interactive
programs. However the Vim buffer where it runs is no longer editable
(you can't scroll up, or even move the cursor). The last official
release was for Vim 7.0, although time spent searching on Google will
turn up patches for Vim 7.1 and 7.2.

Pros:
* Near complete VT100 support (you can run emacs in a vim buffer, and
just about anything else)
* Very fast. Compiled into the C source

Cons:
* Relatively difficult to install
* No use of Vim features to navigate terminal output
* No Windows or Mac support.
* No development activity since 2006

-------------------------------------------

Vimsh
URL: http://www.vim.org/scripts/script.php?script_id=165
Author: Brian Sturk
Requirements: python-enabled vim
Type: Plugin

Vimsh is a Vim plugin which allows you to run interactive programs in
a vim buffer. It provides a nice option for Windows use, but
functionality is overall less mature than the other options.

Pros:
* Relatively easy to install
* Use Vim commands to edit commands and navigate terminal output
* Support in both *nix and Windows (no interactive programs in
Windows)

Cons:
* Limited functionality
* Inactive development

-------------------------------------------

:!

Just use :!emacs -nw and call it good.

--
You received this message from the "vim_use" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

No comments:

Post a Comment