Vim 7.4: State Machine statt Backtracking

 –  136 Kommentare
Anzeige

Version 7.4 des freien Texteditors Vim (Vi Improved) steht knapp drei Jahre nach dem letzten Minor Release auf der Website des Projekts zum Download bereit. Für das Release haben Entwickler Bram Moolenar und seine Helfer nicht nur Fehler behoben, sondern auch das Python-Interface verbessert und eine neue Engine für reguläre Ausdrücke eingearbeitet.

Nutzte die alte Regexp Engine noch einen Backtracking-Algorithmus, der eingegebene Muster auf verschiedene Weisen mit dem Text abzugleichen versuchte, was für lange Ausdrücke länger dauern konnte, verwendet die neue eine State Machine. Ihre Vorgehensweise kann für einfache Anfragen zwar etwas länger als gewohnt dauern, für komplexe Muster und lange Texte soll sie allerdings erheblich schneller sein. Mit der neuen Engine soll Vim beispielsweise auch bei JavaScript- und XML-Dateien mit langen Codezeilen nicht mehr hängen bleiben.

Anzeige

Was Python angeht konnten die Entwickler die Funktion python-bindeval ergänzen, die im Gegensatz zu python-eval beispielsweise Objekte aus python-Dictionary, python-List und python-Function für Dictionary Lists und Funktionen zurückgibt. Außerdem stehen nun python-vars und die Funktionen pyeval() und py3eval() zur Verfügung. Weitere Details zu den Änderungen lassen sich nach dem Aktualisieren mit :help version-7.4 abfragen.

Siehe dazu auch:

  • Vim im heise Software-Verzeichnis
(jul)

Anzeige