vim sucht Puffer nach absolutem Pfad

vim sucht Puffer nach absolutem Pfad

Wie kann ich einen Puffer in Vimscript finden, wenn ich einen absoluten Pfad habe und wie Sie wissen, können Vim-Puffernamen relative Pfade sein? Gibt es dafür eine Funktion?

Antwort1

Die bufnr()Funktion kann Puffer finden (und deren Nummer zurückgeben). Wie bufname()kann diese den abgefragten Puffernamen in mehreren Formen annehmen (vgl. :help bufname()):

  A full match is preferred, otherwise a match at the start, end
  or middle of the buffer name is accepted.  If you only want a
  full match then put "^" at the start and "$" at the end of the
  pattern.

Ein Beispiel wäre

:echo bufnr('^C:\path\to\file.txt$')

Außerdem können Sie über die fnamemodify()Funktion zwischen relativen und absoluten Pfaden konvertieren.

verwandte Informationen