Hello, everyone! One look at Planner's history will show you that I take an extraordinarily long time to figure out things that should be common sense. It took me months to figure out how annotations should work, for example. <laugh>
Today's marvelous, life-changing discovery: comments! I finally got around to adding a _real_ commenting system to my blog after receiving so many helpful tips on everything from networking to breathing, and after suffering a case of comment envy reading a friend's blog. It was amazingly simple. I originally went with Haloscan, but a little bit of Googling turned up this great little system called Blogkomm (http://www.blogkomm.com), which I like very much. It's PHP, so it was really easy to drop into my config. It's filebased, so I can set up my scripts to grab a copy of the comments and read through them offline. It does e-mail notification. It lets people subscribe, too. And you get a recent comments box for free! I like it a lot. Here's my highly idiosyncratic config snippet: =) (defun sacha/planner-note-id (info) "Return the note identifier for commenting systems. Prefers date pages." (planner-replace-regexp-in-string "[#\\.]" "-" (if (string-match planner-date-regexp (planner-note-page info)) (concat (planner-note-page info) "#" (planner-note-anchor info)) (let (found (pages (planner-multi-split (planner-note-link-text info)))) (while pages (when (string-match planner-date-regexp (planner-link-base (car pages))) (setq found (planner-link-target (car pages)) pages nil)) (setq pages (cdr pages))) (or found (concat (planner-note-page info) "#" (planner-note-anchor info))))))) ;; I want notes preceded by a number so I know how to link to them. (defun sacha/planner-markup-notes () "Mark up notes neatly." (while (re-search-forward "^\\.#[0-9]" nil t) (save-restriction (planner-narrow-to-note) (let* ((info (planner-current-note-info t)) (id (sacha/planner-note-id info))) (delete-region (point-min) (point-max)) ;; Bound the entire thing in a div (insert "<div class=\"note\" id=\"anchor-" (planner-note-anchor info) "\">\n" "<h3>" (planner-note-anchor info) ". " (planner-note-title info) "</h3>\n" "<div class=\"note_info\">Categories: " (or (planner-note-link-text info) "None") " -- " (planner-make-link (concat (planner-page-name) "#" (planner-note-anchor info)) "Permalink") (format ", <span class=\"commentlink\"><?php $blog_id='%s';include (BK_PATH.\"/module/blogkomm_show_link.php\"); ?></span>" id) ", <a href=\"#feedback\">Mail me</a></div>\n" "<div class=\"note_body\">\n" (planner-note-body info) "\n</div><div class=\"note_info\">" (planner-make-link (concat (planner-page-name) "#" (planner-note-anchor info)) "Permalink") ", " (format "<span class=\"commentlink\"><?php $blog_id='%s';include (BK_PATH.\"/module/blogkomm_show_link.php\"); ?></span>" id) ", <a href=\"#feedback\">Mail me</a> -- <a href=\"#top\">Back to top</a></div></div>\n"))))) ;; later, after definition of sacha/planner-markup-tasks (setq planner-publishing-markup '([emacs-wiki-tag-regexp 0 emacs-wiki-markup-custom-tags] sacha/planner-markup-tasks sacha/planner-markup-notes)) I also needed to add if (isset($_REQUEST['rem'])) { setcookie ("blogKo_name", $_REQUEST['comm_name'],time()+1209600); setcookie ("blogKo_mail", $_REQUEST['comm_e_mail'],time()+1209600); setcookie ("blogKo_www", $_REQUEST['comm_website'],time()+1209600); } if (!isset($button)) { $comm_name = $_COOKIE["blogKo_name"]; $comm_e_mail = $_COOKIE["blogKo_mail"]; $comm_website = $_COOKIE["blogKo_www"]; } session_start(); $post_url=$page; $blog_mail='[EMAIL PROTECTED]'; define (BK_PATH, "/home/sachac/public_html/comments"); to my header.inc.php (see http://sacha.free.net.ph/notebook/wiki/include/header.phps), which is the file loaded by http://sacha.free.net.ph/notebook/wiki/.header . Much fun! =D -- Sacha Chua <[EMAIL PROTECTED]> - open source geekette http://sacha.free.net.ph/ - PGP Key ID: 0xE7FDF77C interests: emacs, gnu/linux, personal information management, juggling sachac on irc.freenode.net#emacs . YM: sachachua83 _______________________________________________ emacs-wiki-discuss mailing list [email protected] http://lists.nongnu.org/mailman/listinfo/emacs-wiki-discuss
