
01:37 | link | | |
This evening I helped Lisa move her blog to blogspot and found that things are easier there than they used to be, so I'm playing with my ancient archives over here. The only drawback to blogging from emacs via pyblosxom is that pyblosxom rebuilds the whole danged blog every time I publish - it eats an entire cpu for ten minutes or so.
21:15 | link | | |
I know what I'll be reading today during test runs of the stuff I'm writing in Mathematica: a great discussion and analysis of emacs keyboard commands from Steve Yegge, and another one on the organization of emacs init files. It's always nice to find someone who shares your obsessions.
08:22 | link | | |
After about 15 years of using emacs I've just now discovered C-M-space, mark-sexp, by accident. My thumb lingered on the meta key when I was setting mark with C-space and there it was - the whole expression I was starting to mark was already highlighted. There's always something new to discover in emacs.
19:18 | link | | |
In contrast, your more... ah, seasoned (read: fanatical) Emacs users gradually come to live in it. Anything you can't do from within Emacs is an annoyance. It's like having to drive to a government building downtown to take care of some random paperwork they should have been offering as an online service a decade ago. You can live with it, but you're annoyed.
There's a boatload of other good stuff in there both for grizzled emacs veterans and shiny fresh newbies. Read the whole thing.
16:09 | link | | |
It took a long harrowing day of debugging and rewriting elisp code capped by an hour of invigorating "OH CRAP DID I JUST DELETE 1100 UNREAD EMAIL MESSAGES?!", but I'm finally done - my office gnus setup with its last 3 years of email messages now works perfectly from home, connected to Wolfram's imap and smtp servers via vpn. Jamie S at the office tracked down my missing messages - it turns out that if you tell gnus to tell an imap server to split messages from INBOX to "imap-split", a file ~/imap-split is created with all the messages in it. 'G f' ahoy!
Along the way I finally read and understood The Fine Manual - it is possible to use an imap server as a simple message-serving pop server.
After the day's total immersion in elisp I switched back to mathematica to fix up some code and felt a bit of confusion, like trying to speak a foreign language I hadn't used for months.
07:19 | link | | |
Til today, I never realized there was a difference in emacs between a directory's filename and directory name:
A directory name is the name of a directory. A directory is actually a kind of file, so it has a file name, which is related to the directory name but not identical to it. (This is not quite the same as the usual Unix terminology.) These two different names for the same entity are related by a syntactic transformation. On GNU and Unix systems, this is simple: a directory name ends in a slash, whereas the directory's name as a file lacks that slash.
I suspect my lack of slashes after directory names is the root of my problem today in porting my work gnus setup to my home computer.
Update: here's what John and I were talking about in the comments:
12:52 | link | | |
At least once a day in emacs I need to get the name of the file visited by the current buffer and paste it somewhere. This bit of code puts the current buffer's filename at the top of the kill ring, ready for yanking:
(defun copy-current-buffer-name () "Copy the name of the current buffer into the kill ring, ready for yanking." (interactive) (let ((name (buffer-name (current-buffer)))) (kill-new name) (message "%s" name))) (global-set-key "\C-ch" 'copy-current-buffer-name)
I'm using the less-than-obvious C-c h since my C-c keymap
is just about full.
17:15 | link | | |
My favorite monospaced font: Lucida Sans Typewriter, designed by Charles Bigelow and Kris Holmes. Scientific American later adopted the Lucida family for its print magazine. Here's how to use it in emacs:
(set-default-font "-B&H-LucidaTypewriter-Medium-R-Normal-Sans-12-120-75-75-M-70-ISO8859-1")
I've looked for a better monospace font for a decade but haven't found one. I used to keep an eye open for the inevitable font threads in the emacs newsgroups - I'd install and try every font that people recommended, but none was just right. I finally learned to ignore the font threads and rest content with my perfectly legible B&H Lucida Sans Typewriter.
UPDATE: here's a page at emacswiki written by people like me who are unreasonably disturbed by small details of some fonts.
12:46 | link | | |
Grr. There are unfathomable deeps surrounding authentication with the Wolfram smtp server when connecting from outside their network. My email will stay on my office computer, accessed via emacs through ssh X forwarding. Back to Mathematica coding - I've had enough lisp for the night.
On the bright side, I'm now using my new squeaky-clean & organized .emacs and .gnus files that I came up with during all this. A general cleanup can violate Grohens' Law of Information Conservation if you're not careful. I tossed code only if I couldn't remember what it was for or the last time I used it. It's still hanging around in old files, though, in case I really need some of it.
20: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.