Ok, estou tentando resolver o problema de obter o conteúdo de um registro de uma sessão do SSH no Vim, para ir para a área de transferência do Windows.
Este é o cenário:
- SSH no ambiente de desenvolvimento
- Use o Vim para editar arquivos no servidor (não com o Cygwin Vim local)
- texto ianque
O que eu quero fazer é usar o /dev/clipboard
embutido no Cygwin para obter o conteúdo do yanked para que eu possa começar a compartilhar entre os dois.
Há um VimScript para fazer isso localmente (ou seja, você tem acesso direto a /dev/clipboard
):
function! Putclip(type, ...) range
let sel_save = &selection
let &selection = "inclusive"
let reg_save = @@
if a:type == 'n'
silent exe a:firstline . "," . a:lastline . "y"
elseif a:type == 'c'
silent exe a:1 . "," . a:2 . "y"
else
silent exe "normal! '<" . a:type . "'>y"
endif
"call system('putclip', @@)
"As of Cygwin 1.7.13, the /dev/clipboard device was added to provide
"access to the native Windows clipboard. It provides the added benefit
"of supporting utf-8 characters which putclip currently does not. Based
"on a tip from John Beckett, use the following:
call writefile(split(@@,"\n"), '/dev/clipboard')
let &selection = sel_save
let @@ = reg_save
endfunction
vnoremap <silent> <leader>y :call Putclip(visualmode(), 1)<CR>
nnoremap <silent> <leader>y :call Putclip('n', 1)<CR>
link
O que eu gostaria de fazer é ver se há uma maneira de falar com o Cygwin a partir daqui, ou se posso scp
do conteúdo (ou algo assim). Não consigo / não posso armazenar senhas / senhas e, idealmente, quero que isso seja o mais "transparente" possível.
Além disso, estou executando isso através do tmux, se isso abrir o acesso em qualquer lugar. Não tenho certeza se isso é relevante, pois acabei de começar a jogar com o tmux ontem (pode haver algo que eu desconheço).
Pensamentos?