I've been working on mk-project.el, my Emacs project library. I wanted to write up the changes I've made.
Bug Fix: Kill TAGS buffer on project-unload
When the project is unloaded, reset the variables use by the tags facility as well as deleting the buffer associated with the project's tags file.
New Feature: Save/restore open files on project-unload/load
When a project is unloaded, store the names of the open project files in a cache file. When loading the project, create buffers for the files listed in the cache file. To enable the feature, specify a cache file with 'open-files-cache' in the project's definition. For example:
(project-def "my-proj" '((basedir "/home/me/my-proj/") (src-patterns ("*.java" "*.jsp")) (ignore-patterns ("*.class" "*.wsdl")) (tags-file "/home/me/my-proj/TAGS") (file-list-cache "/home/me/.my-proj-files") (open-files-cache "/home/me/.my-proj-open-files") (vcs git) (compile-cmd "ant") (startup-hook myproj-startup-hook) (shutdown-hook nil)))
New Feature: Version tags in the source
Given that I've already published several versions of this library, I'm a late in adding this. But now the elisp source includes a variable holding the version of the library. The version corresponds to tags in my git repo. I'm calling this version 1.0.1.