Created
June 23, 2010 23:07
-
-
Save h1mesuke/450696 to your computer and use it in GitHub Desktop.
Vim - My current settings for ConqueTerm
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
" 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