Fasd: viminfo mit neovim

Erstellt am 10. Mai 2016  ·  6Kommentare  ·  Quelle: clvv/fasd

Ich habe versucht, fasd mit neovims Äquivalent zu viminfo, nämlich shada , zum Laufen zu bringen.

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

Hat jemand damit Glück gehabt? Ich vermute, die Shada-Datei hat nicht das gleiche Format wie viminfo, und daher besteht die Lösung darin, dass ich ein neues Backend erstellen muss. Wollte hier nur mal fragen, falls jemand anders schon mal darauf gestoßen ist.

Hilfreichster Kommentar

das ist alles, was ich tue https://github.com/nhooyr/dotfiles/blob/4605ab8a76dead31f09b2592838485e1a6445794/.config/nvim/init.vim#L70 -L80

Ich kann sogar mit fzf in neovim darauf zugreifen!

Alle 6 Kommentare

Ich habe etwas Ähnliches mit der Python-Schnittstelle von neovim gemacht.

Sie können es überprüfen
https://github.com/haifengkao/nfasd

das ist alles, was ich tue https://github.com/nhooyr/dotfiles/blob/4605ab8a76dead31f09b2592838485e1a6445794/.config/nvim/init.vim#L70 -L80

Ich kann sogar mit fzf in neovim darauf zugreifen!

brillant!!
nfasd ist über das ursprüngliche Ziel hinausgegangen. Es verfügt jetzt über eine Ordnervervollständigung und eine bessere Dateireihenfolge.
Eigentlich verwende ich es, um fasd schrittweise zu ersetzen.
außerdem ist es in Python geschrieben (~_^)

BEARBEITEN : Vergiss es, die Lösung von @nhooyr funktioniert perfekt .


Ich glaube, diese Diskussion wurde abgelenkt. Was ich brauche (und @rosshadden , glaube ich auch), ist, dass fasd Dateien indiziert – und als Option in die Ergebnisse einbezieht –, die ich nur aus NeoVim heraus geöffnet habe.

Wie zu reproduzieren:

  1. Öffnen Sie NeoVim.
  2. Öffnen Sie eine Datei (zB :e file.sh ).
  3. Beenden Sie NeoVim.
  4. Versuchen Sie, mit $ neovim f,file.sh<TAB> auf file.sh zu verweisen.
  5. Scheitern kläglich, da fasd nicht weiß, dass ich jemals file.sh geöffnet habe.

Ich dachte auch, dass es eine gute Idee wäre, ein Backend für neovim zu schreiben. Abgesehen davon denke ich, dass die obige Vim-Skript-Lösung für mich gut genug funktioniert, also bleibe ich vorerst dabei. Würde das nicht gut in der Readme oder irgendwo im Wiki oder so funktionieren?

Hier ist ein grobes Fasd-Backend für Neovims Shada-Datei. Ich habe das in meinem ~/.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
        }'
}
War diese Seite hilfreich?
0 / 5 - 0 Bewertungen

Verwandte Themen

ghost picture ghost  ·  12Kommentare

simendsjo picture simendsjo  ·  6Kommentare

rendybjunior picture rendybjunior  ·  14Kommentare

sindresorhus picture sindresorhus  ·  11Kommentare

pearofducks picture pearofducks  ·  7Kommentare