*ConqueTerm* Plugin to run a shell in a buffer

The ConqueTerm plugin will convert a buffer into a terminal emulator, allowing
you to run a shell or shell application in the buffer.

                                                           *conque_term-usage*

Type :ConqueTerm <command> to launch an application in the current buffer. E.g.

  :ConqueTerm bash
  :ConqueTerm mysql -h localhost -u joe_lunchbox Menu
  :ConqueTerm man top

Use :ConqueTermSplit or :ConqueTermVSplit to open Conque in a new horizontal
or vertical buffer.

Keys pressed in insert mode will be sent to the shell, along with output from
the 'p' command in normal mode.

Press the <Esc> key twice to send a single <Esc> to the shell. Pressing this 
key once will leave insert mode like normal.

Press <F9> in any buffer to send a visual selection to the shell.


                                                         *conque_term-settings*

Set the following in your .vimrc (default values shown)

" Enable colors. Setting this to 0 will make your terminal faster.
let g:ConqueTerm_Color = 1

" Set your terminal type. I strong recommend leaving this as vt100, 
" however more features may be enabled with xterm.
let g:ConqueTerm_TERM = 'vt100'

" Set buffer syntax. Conque has highlighting for MySQL, but not much else.
let g:ConqueTerm_Syntax = 'conque'

" Continue updating shell when it's not the current, focused buffer
let g:ConqueTerm_ReadUnfocused = 1


                                                     *conque_term-requirements*

The following minimum requirements are needed to run Conque. Conque will not 
run on Windows without a Cygwin-like environment.

 - Vim 7.1
 - Python 2.3
 - Supported operating systems: *nix, Mac, or Cygwin

Tested on:
 - Vim 7.2 / Python 2.6 / Ubuntu 9.10 (Gnome & GTK)
 - Vim 7.2 / Python 2.6 / FreeBSD 8.0 (GTK)
 - Vim 7.1 / Python 2.6 / FreeBSD 8.0 (GTK)
 x Vim 7.0 / Python 2.6 / FreeBSD 8.0 (GTK)
    * feedkeys() doesn't restart updatetime
 - Vim 7.2 / Python 2.4 / OpenSolaris 2009.06 (Gnome)
 - Vim 7.2 / Python 2.4 / CentOS 5.3 (no GUI)
 - Vim 7.1 / Python 2.3 / RHEL 4 (no GUI)
 - Vim 7.2 / Python 2.5 / Cygwin (Windows Vista 64b)
 - MacVim 7.2 / Python 2.3 / OS X 10.6.2

                                                             *conque_term-bugs*

The following are known limitations:

 - Font/color highlighting is imperfect and slow. If you don't care about
   color in your shell, set g:ConqueTerm_Color = 0 in your .vimrc
 - Conque only supports the extended ASCII character set for input, not utf-8.
 - VT100 escape sequence support is not complete.
 - Alt/Meta key support in Vim isn't great in general, and conque is no 
   exception. Pressing <Esc><Esc>x or <Esc><M-x> instead of <M-x> works in 
   most cases.

                                                             *conque_term-todo*

 - Fix pasting from named registers
 - Polling unfucused conque buffers (Top explodes when window resizes)
 - Enable graphics character set
 - Consider supporting xterm escapes
 - Improve color logic
 - Find a solution to UTF-8 input (See InsertCharPre in Vim todo.txt)
 - Find an alternative to updatetime polling (See Vim todo.txt)
 - Find a graceful solution to Meta key input
 - Windows support 
   (See PyConsole http://www.vim.org/scripts/script.php?script_id=1974)
 - Always: look for performance improvements


                                                       *conque_term-contribute*

The two contributions most in need are improvements to Vim itself. I currently 
use hacks to simulate a key press event and repeating CursorHold event. The 
Vim todo.txt document lists proposed improvements to give users this behavior 
without hacks. Having a key press event should allow Conque to work with multi-
byte input. If you are a Vim developer, please consider prioritizing these two 
items: 

 - todo.txt (Autocommands, line ~3137)
     8   Add an event like CursorHold that is triggered repeatedly, not just 
         once after typing something.

 - todo.txt (Autocommands, proposed event list, line ~3189)
     InsertCharPre   - user typed character Insert mode, before inserting the
     char.  Pattern is matched with text before the cursor. Set v:char to the 
     character, can be changed. (not triggered when 'paste' is set).

Bugs, suggestions and patches are all welcome.

For more information visit http://conque.googlecode.com

Check out the latest from svn at http://conque.googlecode.com/svn/trunk/

                                                       *conque_term-changelog*

 - 1.0 / 2010-02-
    * Complete python rewrite
    * Add support for ncurses based applications
    * Add continuous polling, instead of using <Tab>
    * Improve speed
    * Improve syntax highlighting

 - 0.6 / 2009-12-18
    * Fix GVim errors with non-english locale
    * No functional changes

 - 0.5 / 2009-12-02
    * Various performance enhancements and bugfixes. 
    * Rewritten escape sequence processing

 - 0.4 / 2009-10-30
    * Improved history and tab completion
    * Fix escape sequence formatting and improve highlighting
    * Send selected text to shell from any buffer
    * Add special handling of "vi" and "man" commands
    * Improve error handling
    * Add key mappings for <C-p> <C-n> <C-l> <C-j>
    * Various bugfixes

 - 0.3 / 2009-10-13
    * Apply escape sequence coloring to output, e.g. ls --color
    * Clean up syntax files for portability
    * Fix several Vim 7.1 bugs
    * Bugfixes for multiple shell buffers
    * Add experimental shell folding option

 - 0.2 / 2009-10-01
    * Rewritten subprocess management module in python instead of c
    * Added support for OS X, partial support for Windows
    * Improved tab completion

 - 0.1 / 2009-09-03
    * Initial release