emacs-wiki-discuss
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[emacs-wiki-discuss] Problems with CamelCase/WikiLinking in Planner-Muse


From: Tim O Callaghan
Subject: [emacs-wiki-discuss] Problems with CamelCase/WikiLinking in Planner-Muse
Date: Tue, 13 Sep 2005 11:34:35 +0100 (IST)
User-agent: SquirrelMail/1.4.5

Hi,

I seem to be having problems with linking EmacsWiki style in planner-muse.
It seems pretty flaky when it comes to creating dynamic wiki-links from
[[CamelCased]] text. It only works for sure when the [[CamelCase]] link is
at the start of a line. Sometimes the font lock picks up the [[LinkWord]]
dynamicaly, but then when i run font-lock-fontify-buffer, the link reverts
to the camel case-text. I've seen people having similar problems, but
nothing quite like this. Any ideas?

Also is there a way to get planner muse to auto-insert [[]] when i use a
camel case word?

For those who are interested, i have managed to implement part of my idea
for dynamic planning based on whats in my local project directory. If you
think in GTD, then i want it to be a kind of dynamic context switcher, where
the context is whatever machine i happen to be working on. It should also
let me transport projects easily from one machine to another.

The idea is to use a fixed structure for each project, with each project
having a CamelCase directory name. For larger projects, have a CamelCase
container directory, with subprojets in it.

So now my plan/project directory looks something like this:
~/projects/.
           +---OldWikiSource
           |   \---src
           +---PROJECT_TEMPLATE
           |   +---bin
           |   +---doc
           |   +---etc
           |   +---lib
           |   +---src
           |   \---tmp
           +---SomedayMaybe
           \---XemacsWork
               +---PlannerEverywhere
               |   +---doc
               |   +---etc
               |   +---lib
               |   \---src
               \---ToTryOut
                   \---src
                       +---c++_tempo_example
                       \---c_c++_project_build_tool

Next is to try and map muse mode to each doc directory in the template.
And also to try and read the publishing information for each set of docs
from a publish.muse or something like that in that directory. Any
suggestions or criticisms welcome ;)

I post it in the hope that people find it useful, and thanks to drkm for
the pointers.

Tim.
------

(defun toc:find-planner-directories (dir)
  "toc:find-planner-directories: find subdirectories for planner mode"
  (apply 'append (mapcar(lambda (recursed-dir)
    (let ((sub-dirs (toc:find-planner-directories recursed-dir t)))
      (if sub-dirs (cons recursed-dir sub-dirs) (list recursed-dir))))
        (delete nil (mapcar (lambda (f)                                   
             (when (file-directory-p f) f))
          (directory-files dir t "^\\([A-Z][a-z]+[A-Z][a-z]+\\)+"))))))

(setq muse-project-alist
      `(
        ;; GTD planner mode directories
        ("GettingThingsDone"
         ("~/projects/"
          ,@(toc:find-planner-directories "~/projects/")
          :major-mode planner-mode
          :visit-link planner-visit-link
          )
         (:base "xhtml" :path "~/public_html/GettingThingsDone/")
        )
)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]