Como posso ver mensagens de status antigas no Vim?

6

Tenho a sensação de que, se eu soubesse a terminologia correta aqui, não precisaria fazer essa pergunta e o Google seria suficiente. Infelizmente.

Usando o link , quando eu executo o comando ': Gist', o plugin imprime link para a essência na parte inferior da janela do terminal, onde um normalmente entraria comandos. Não tenho certeza do que isso é chamado. Não consigo selecionar o texto e, portanto, não consigo copiá-lo, e no momento em que faço outra coisa, o texto desaparece e é substituído pelo texto do modo normal.

Eu sei que existe q: para visualizar comandos antigos, mas existe alguma maneira que eu possa ver mensagens antigas como aquela que o gist.vim cospe? Ou há pelo menos alguma forma mágica de copiar esse belo texto antes de fazer outra coisa e desaparecer?

Se for relevante, estou no OS X Lion e executando o Vim no iTerm. Nada de especial.

    
por Rayne 28.09.2011 / 19:12

3 respostas

4

Em :help Gist , há uma configuração que copia automaticamente o link gist para sua área de transferência com :Gist -c

If you set g:gist_clip_command, gist.vim will copy the gist code with option '-c'.

Mac:

let g:gist_clip_command = 'pbcopy'

Linux:

let g:gist_clip_command = 'xclip -selection clipboard'

Others (cygwin?):

let g:gist_clip_command = 'putclip'

Adicione isso ao seu ~/.vimrc e pronto.

Editar:

Encontrou uma solução hackeada.

Vá para gist.vim e encontre essa função.

function! s:GistPost(user, token, content, private)

  " find GistID: in content, then we should just update

  ...  

  let location = substitute(location, '^[^:]\+: ', '', '')
  if len(location) > 0 && location =~ '^\(http\|https\):\/\/gist\.github\.com\/'
    redraw
    echo 'Done: '.location
  else

  ...

  return location
endfunction

Altere echo para echomsg .

  if len(location) > 0 && location =~ '^\(http\|https\):\/\/gist\.github\.com\/'
    redraw
    echomsg 'Done: '.location

Agora reinicie o vim e, depois de inserir :Gist , digite :message para obter o link do histórico de mensagens. O histórico de mensagens registra tudo de echomsg e echoerr para essa sessão.

    
por 28.09.2011 / 19:27
7

Eu estava procurando por qualquer resposta para sua pergunta devido a um plug-in diferente. Eu tropecei no nome da saída da mensagem em :h message .

Se sua janela vim ainda estiver aberta, parece que você pode acessar g< para ver a última mensagem.

Acho que :messages também funciona.

    
por 06.02.2013 / 02:37
0

Enviou uma correção para o autor do plug-in sobre isso. link

    
por 21.11.2011 / 12:05

Tags