
For years I've avoided using emacs' tags table functions, but I finally had to break down and read about them tonight to search eficiently through a huge collection of Mathematica packages and applications.
After reading the fine manual it was easy to create a tags table of Mathematica function definitions and variable assignments:
cd topdir; find . -name "*.m" -print | grep -v BrowserCategories.m | \ etags \ --language=none \ --regex='/\([A-Za-z0-9$]+\)[ \t]*=/\1/' \ --regex='/\([A-Za-z0-9$]+\).*:=/\1/' -
The second regexp choked on a particular BrowserCategories.m; since they don't contain the definitions I'm looking for I removed them from consideration.
The two regexs find these sorts of things:
fact[1] = 1; fact[n_] := n fact[n - 1]
22:13 | link | | |
A facility for quotation covers the absence of original thought.—Lord Peter Wimsey
Left column Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
And the Word became flesh and dwelt among us.—St John of Patmos
Right column Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.