201306Nov

Grasp.js: JavaScript-Code nach Strukturen durchsuchen

In größeren JavaScript-Projekten kann es manchmal etwas schwierig werden, nach genau der richtigen Stelle im Code zu suchen, die ein paar Wochen zuvor entwickelt wurde. Oft kann es passieren, dass nur noch die Struktur des Codes in Erinnerung geblieben ist, weniger aber die verwendeten Namen der Variablen und Methoden. Wäre es da nicht praktisch, wenn nicht nach Text, sondern nach der Code-Struktur gesucht werden könnte? Genau dies ermöglicht das Node-Modul Grasp.

Grasp - Search and replace your JavaScript code based on its structure rather than its text

Mit dem Kommandozeilen-Tool können also Konstrukte im Code-Baum gesucht werden und dabei kann auf verschiedene Mechanismen zurückgegriffen werden, wie beispielsweise Wildcards oder Selektoren im CSS-Stil. Wenn also etwa nur noch ein Return-Statement wie "return … + …" bekannt ist, kann Grasp in einer entsprechenden Datei danach suchen:

  • grasp -e 'return __ + __' datei.js

Anschließend werden die gefundenen Stellen inklusive Zeilennummer aufgelistet. Auf der Website des Moduls wurde nicht gekleckert und so findet sich im unteren Bereich eine kleine Unix-Shell, welche die Grundbefehle beherrscht und auch das Editieren von virtuellen JavaScript-Dateien ermöglicht. In der Shell kann Grasp also direkt ausprobiert werden. Mehr Infos zu den Parametern sowie der Syntax gibt es in der Dokumentation.