Объединение строк в Muse-Project-Alist - PullRequest
2 голосов
/ 18 февраля 2010

Я хочу сделать мой каталог Muse более гибким, поэтому я сохраняю путь к базовому каталогу Muse в переменной, например:

(setq my-muse-base-dir "d:/project/notes")

(setq muse-project-alist
      `(
    ("Home" 
     ((concat my-muse-base-dir "/muse/home")
     ;; ("d:/project/notes/muse/home"
      :default "index")
     (:base "html" :path (concat my-muse-base-dir "/html/home")))
     ;; (:base "html" :path "d:/project/notes/html/home"))
    ))

Но когда я вхожу в режим Muse, он сообщает об ошибке как

let: Неверный аргумент типа: stringp, (concat my-muse-base-dir "/ muse / home")

И после того, как я изменил настройку каталога на полные пути, как показано закомментированными строками, ошибка исчезла. Итак, я хотел бы знать, как установить каталог проекта Muse как объединение двух строк?

1 Ответ

4 голосов
/ 18 февраля 2010

Вам не хватает , в выражении обратной цитаты:

(setq muse-project-alist
      `(
        ("Home" 
         (,(concat my-muse-base-dir "/muse/home")
          :default "index")
         (:base "html" :path ,(concat my-muse-base-dir "/html/home")))
        ))

См. , с прямо перед звонками на concat.

Запятая указывает обратной кавычке, чтобы оценить следующее выражение. Прочитайте страницу информации обратного цитирования для получения более подробной информации.

...