vimrc

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | Submodules

commit ae57b0b875fd593b78c7dd62d9dc6b0094039fa4
parent 1351fd18fb71fab4df65020854ff531b6374f729
Author: Pablo Cárdenas <pablo.cardenas@imca.edu.pe>
Date:   Wed, 13 May 2026 15:17:25 -0300

tmux: added support for long texts

Diffstat:
Mpack/pablo/opt/tmux/plugin/tmux.vim | 42+++++++++++++++++++++++++++++++++++-------
1 file changed, 35 insertions(+), 7 deletions(-)

diff --git a/pack/pablo/opt/tmux/plugin/tmux.vim b/pack/pablo/opt/tmux/plugin/tmux.vim @@ -4,7 +4,8 @@ def TmuxSendKeysToMarkedVisual() var a_save = @a try silent execute 'normal! "ay' - call system('tmux send-keys -t {marked} -- ' .. "\e[200~" .. shellescape(@a) .. "\e[201~" ) + call system("tmux load-buffer -", @a) + call system("tmux paste-buffer -p -t {marked}") finally @a = a_save endtry @@ -20,29 +21,56 @@ def TmuxSendKeysToMarkedNormal(type: string) elseif type == "block" silent execute "normal! `[\<C-v>`]\"ay" endif - call system('tmux send-keys -t {marked} -- ' .. "\e[200~" .. shellescape(@a) .. "\e[201~" ) + call system("tmux load-buffer -", @a) + call system("tmux paste-buffer -p -t {marked}") finally @a = a_save set operatorfunc= endtry enddef -def TmuxSetBuffer() +def TmuxSetBufferVisual() var a_save = @a try silent execute 'normal! "ay' - call system('tmux set-buffer ' .. shellescape(@a)) + call system("tmux load-buffer -", "\e[200~" .. @a .. "\e[201~") + call system("tmux paste-buffer -t {marked}") finally @a = a_save endtry enddef -vmap <silent> <localleader>tb <ScriptCmd>TmuxSetBuffer()<CR> -vmap <silent> <localleader>ts <ScriptCmd>TmuxSendKeysToMarkedVisual()<CR> +def TmuxSetBufferNormal(type: string) + var a_save = @a + try + if type == 'line' + silent execute "normal! '[V']\"ay" + elseif type == "char" + silent execute "normal! `[v`]\"ay" + elseif type == "block" + silent execute "normal! `[\<C-v>`]\"ay" + endif + call system("tmux load-buffer -", @a) + finally + @a = a_save + set operatorfunc= + endtry +enddef + +nmap <silent> <localleader>tb <Cmd>set operatorfunc=<SID>TmuxSetBufferNormal<CR>g@ +vmap <silent> <localleader>tb <ScriptCmd>TmuxSetBufferVisual()<CR> nmap <silent> <localleader>ts <Cmd>set operatorfunc=<SID>TmuxSendKeysToMarkedNormal<CR>g@ +vmap <silent> <localleader>ts <ScriptCmd>TmuxSendKeysToMarkedVisual()<CR> + nmap <silent> <localleader>te <ScriptCmd>system('tmux send-keys -t {marked} Enter')<CR> nmap <silent> <localleader>tc <ScriptCmd>system('tmux send-keys -t {marked} <C-c>')<CR> nmap <silent> <localleader>td <ScriptCmd>system('tmux send-keys -t {marked} <C-d>')<CR> -nmap <silent> <localleader>tp <ScriptCmd>system('tmux send-keys -t {marked} python Enter')<CR> + +# Python +nmap <silent> <localleader>tpi <ScriptCmd>system('tmux send-keys -t {marked} python Enter')<CR> +nmap <silent> <localleader>tpa <ScriptCmd>system('tmux send-keys -t {marked} ". venv/bin/activate"')<CR> + +# R +nmap <silent> <localleader>tri <ScriptCmd>system('tmux send-keys -t {marked} R Enter')<CR> # vim: et sts=4 sw=4