Skip to content

Instantly share code, notes, and snippets.

@h1mesuke
Created June 23, 2010 23:07
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 3 You must be signed in to fork a gist
  • Save h1mesuke/450696 to your computer and use it in GitHub Desktop.
Save h1mesuke/450696 to your computer and use it in GitHub Desktop.
Vim - My current settings for ConqueTerm
" Conque
" http://www.vim.org/scripts/script.php?script_id=2771
" ~/.vim/after/ftplugin/conque_term.vim
augroup MyConqueTerm
autocmd!
" start Insert mode on BufEnter
autocmd BufEnter *
\ if &l:filetype ==# 'conque_term' |
\ startinsert! |
\ endif
augroup END
let g:ConqueTerm_Color = 1
let g:ConqueTerm_TERM = 'vt100'
let g:ConqueTerm_Syntax = 'conque'
let g:ConqueTerm_ReadUnfocused = 1
let g:ConqueTerm_CWInsert = 1
let g:ConqueTerm_MyTermCommand = 'zsh -7'
let g:ConqueTerm_MyTermPosition = 'J'
" Creates a new term buffer.
function! s:new_term()
execute "ConqueTermSplit" g:ConqueTerm_MyTermCommand
execute 'wincmd' g:ConqueTerm_MyTermPosition
setlocal bufhidden=hide
setlocal nobuflisted
setlocal buftype=nofile
setlocal noswapfile
endfunction
function! s:term_bufname(termnr)
return printf("%s - %d", g:ConqueTerm_MyTermCommand, a:termnr)
endfunction
" Shows the term buffer with the given term number.
function! s:show_term(termnr)
let bufname = s:term_bufname(a:termnr)
if bufexists(bufname)
let bufnr = bufnr(bufname)
let winnr = bufwinnr(bufnr)
if winnr == -1
execute 'sbuffer' bufnr
execute 'wincmd' g:ConqueTerm_MyTermPosition
else
execute winnr 'wincmd w'
endif
elseif a:termnr == 1
call s:new_term()
else
echo "Term buffer not created yet"
endif
endfunction
" Shows the term buffer with the given term number. (exclusive)
function! s:swtich_term(termnr)
let bufname = s:term_bufname(a:termnr)
if bufexists(bufname)
for nr in range(1,9)
let bufname = s:term_bufname(nr)
if bufexists(bufname)
let bufnr = bufnr(bufname)
let winnr = bufwinnr(bufnr)
if winnr != -1
execute winnr 'wincmd w'
wincmd c
endif
endif
endfor
call s:show_term(a:termnr)
elseif a:termnr == 1
call s:new_term()
else
echo "Term buffer not created yet"
endif
endfunction
" show the main shell
nnoremap <silent> H :<C-u>call <SID>show_term(1)<CR>
" show the shell of the given term number
for nr in range(1,9)
execute 'nnoremap <silent> <Space>'.nr.' :<C-u>call <SID>swtich_term('.nr.')<CR>'
execute 'nnoremap <silent> <Space><Space>'.nr.' :<C-u>call <SID>show_term('.nr.')<CR>'
endfor
" create a new shell
nnoremap <silent> <Space>sh :<C-u>call <SID>new_term()<CR>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment