So, I've been reading a lot about Makefiles today. Seems they are way more awesome than I thought :D Oh, there is so much to learn! More to read! :D So far I've halfed the size of a few of mine using implicit stuff, and with the help of g{cc,++} -MM. Wow, that is a helpful command.
In other news, I did a bit more hacking on jail today. I noticed that it would be neat if you could press 'x' at the end of a line to do the same thing as 'J' does in vim, so I hacked that in. In the process of doing that (which ended up being 10 or so commits), I discovered that jail and vim handle end-of-line pretty differently.
Originally, I was presented with the problem, "Where do you put the cursor for empty lines?" Up until this point, it hadn't crossed my mind as a problem. What I ended up implementing was that the cursor could be one character pass the end of the actual line, on the imaginary "end of line" character. Jail does not expliticly store newlines, they are present only in that Buffer contains a vector<string> of data, and each new entry in the vector is assumed to be it's own line. This is probably a leaky abstraction. I'll worry about that another time ;). Since the cursor could move onto the end-of-line character, I figured you might as well be able to delete it. And thus a small tirade into fixing the behaviour of 'x' and at the same time adding the 'J' command was born.
I need to do a lot more research about how 'J' works in vim. Think you know? What happens if there are trailing spaces? What happens if the next line has spaces at the beginning? What happens if you do 'gJ' instead? How about the :join command? Go to :help J and you'll see what I mean. Lots of fun stuff and quirks I can hopefully just abandon ;) [Don't get your knickers in a twist if you like what I call "those quircks", just help explain how exactly it is supposed to work]
In other, other, news, I really want to get one of the CGI projects far enough along to replace the shoddy PHP application this site is running on :S Don't get me wrong, I've put a few tens of hours into it, it just feels "blegh". I feel much more at home in a compiled lang ;) Plus, I already have all the URL customization I want with a mod_rewrite rule! Yeah! :D