Fasd: viminfo com neovim

Criado em 10 mai. 2016  ·  6Comentários  ·  Fonte: clvv/fasd

Eu estava tentando fazer fasd trabalhar com o equivalente de viminfo do neovim, que é shada .

_FASD_VIMINFO="$XDG_DATA_HOME/nvim/shada/main.shada"

Alguém já teve sorte com isso? Suponho que o arquivo shada não esteja no mesmo formato do viminfo e, portanto, a solução é que preciso criar um novo back-end. Só queria perguntar aqui caso alguém já tenha acertado isso.

Comentários muito úteis

isso é tudo que eu faço https://github.com/nhooyr/dotfiles/blob/4605ab8a76dead31f09b2592838485e1a6445794/.config/nvim/init.vim#L70 -L80

Posso até acessá-lo com fzf no neovim!

Todos 6 comentários

Eu fiz algo semelhante com a interface python do neovim.

Você pode conferir
https://github.com/haifengkao/nfasd

isso é tudo que eu faço https://github.com/nhooyr/dotfiles/blob/4605ab8a76dead31f09b2592838485e1a6445794/.config/nvim/init.vim#L70 -L80

Posso até acessá-lo com fzf no neovim!

brilhante!!
O nfasd foi além do objetivo original. Agora tem preenchimento de pastas e melhor ordenação de arquivos.
na verdade estou usando para substituir o fasd gradualmente.
além disso, está escrito em Python (~_^)

EDIT : Nevermind, a solução do @nhooyr funciona perfeitamente .


Acredito que essa discussão foi desviada. O que eu preciso (e @rosshadden também acredito) é que fasd indexe – e inclua como opção em seus resultados – arquivos que eu abri apenas de dentro do NeoVim.

Como reproduzir:

  1. Abra o NeoVim.
  2. Abra um arquivo (por exemplo :e file.sh ).
  3. Saia do NeoVim.
  4. Tente se referir a file.sh usando $ neovim f,file.sh<TAB> .
  5. Falhe miseravelmente porque fasd não sabe que eu já abri file.sh .

Também pensei que seria uma boa ideia escrever um back-end para o neovim. Dito isso, acho que a solução vim-script acima funciona bem o suficiente para mim, então vou ficar com isso por enquanto. Isso não funcionaria bem no readme ou em algum lugar do wiki ou algo assim?

aqui está um backend fasd grosseiro para o arquivo shada do neovim. Eu tenho isso no meu ~/.fasdrc :

shada() {
    ~/code/neovim/scripts/shadacat.py ~/.local/share/nvim/shada/main.shada 'entry.type.value == 10' | \
        sed -n "s/^.*'f': '\([^']*\)'.*$/\1/p" | \
        awk -v t="$(date +%s)" '{
            if (!seen[$0]) {
                t -= 60
                print $0 "|1|" t
            }
            seen[$0] = 1
        }'
}
Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

sbglasius picture sbglasius  ·  5Comentários

ixil picture ixil  ·  5Comentários

pearofducks picture pearofducks  ·  7Comentários

ghost picture ghost  ·  12Comentários

mhlinder picture mhlinder  ·  3Comentários