Various hacking
I worked over the weekend on various things. First, I fixed
darcsum.el to strip/convert
ANSI character sequeces, since several people complained. Thanks to
Jose Antonio Ortega Ruiz and Matthieu Lemerre for reporting this.
Please darcs pull to grab the latest changes.
Then, I spent some more time on
Kashmir/Elusion and added a “Do What I
Mean” mode. For example, instead of
^entries.each{
^recent?.true?{NEW}
^body
^time.with{^day/^month/^year}
}
You can now write (assuming you use Elusion):
^entries{
^recent?{NEW}
^body
^time{^day/^month/^year}
}
Elusion will then figure out on it’s own what you want to do (If there
is an #each, iterate. If it’s true, just call the block. Else
yield self to the block.) Also, you can now pass a block to
Kashmir#expand to automatically create an Elusion.
Now, there is a restartable
exception library to be
coded…
NP: Bob Dylan—Knockin’ On Heaven’s Door
darcsum.el polished
Since John Wiegley stopped using
darcs, there have been no changes to
darcsum.el, a
fairly good Emacs-mode for interfacing with darcs.
With the update to darcs 1.0.2 darcsum.el even broke, as the look of
the prompts darcs.el waits for has changed. Therefore, I have decided
to “fork” it, fix it for 1.0.2 and add features I always wanted in
darcsum.el.
You can get the latest darcsum.el by running:
darcs get http://chneukirchen.org/repos/darcsum/
Simply stuff the darcsum.el into your load-path and (require 'darcsum).
Run it with M-x darcsum-whatsnew.
Features added by me include a Edit/Update-Log cycle (think of Arch)
and having a look at the context of patches (think diff -u).
NP: Silbermond—1000 Fragen
Darcs repositories moved
I finally came around to moving my darcs to
chneukirchen.org. The old repositories are
still there, but the “Message of the day” will tell you the new location.
As a nice side effect, I also installed darcs.cgi, so you now can
browse my source history.
The new repositories reside at
http://chneukirchen.org/repos.
Happy hacking. Patches to any projects are welcome. :-)
NP: Bob Dylan—Forever Young
LoC statistics for darcs
Today, I did a nice hack using Darcs to make a
Lines of Code statistic.
Darcs provides a command—darcs trackdown—that gets run on every
revision of the repository until the given command returns true.
Usually, you’d use that to “trackdown” a certain bug by running the
testcase on every revision.
However, trackdown also provides a nice way to simply run an
command over each revision. I ran this on the darcs repository:
darcs trackdown 'find . -type f -print | xargs wc -l |
tail -1 | tee -a /tmp/darcsloc; false'
Note the false, so it will always “fail”.
Now twiddle with that data a bit, and you can quite easily get a
diagram like:
(The “vertical lines” are time skews of the Darcs changelog, as
patches only have a “record time”, not a “merge time”…)
NP: Neil Young—My My, Hey Hey
Sidney in Ägypten
Zum Ende der Herbstferien mal wieder Quotes:
Haha, ich dachte grad’, Seattle wäre Sidney, aber Sidney liegt ja
in Ägypten!
Busenknettag
Die macht immer “mmmm” wenn sie zur Tür reinkommt.
—
Vielleicht muss sie noch schlucken?
Mal wieder etwas langsamer schalten…
Apropos Schalten: Andi, herzlichen Glückwunsch zur bestandenen (auf
Anhieb! :D) Führerscheinprüfung!
BTW, Darcs 1.0.0 has been released!
NP: Billy Talent—Try Honesty