11

org-manual p 74で説明されているように、キャプチャを使用しようとしました。これは、orgモードの.emacsファイルです。

(require 'org-install)
(add-to-list 'auto-mode-alist '("\\.org$" . org-mode))
(define-key global-map "\C-cl" 'org-store-link)
(define-key global-map "\C-ca" 'org-agenda)
(setq org-log-done t)

(setq org-default-notes-file (concat org-directory "~/notes.org")) <-- error
(define-key global-map "\C-cc" 'org-capture)

しかし、このエラーが発生します。何が悪いのでしょうか?

Symbol's value as variable is void: org-directory

追加した

デイブの答えの後、私はコードを修正しました、そしてそれはうまくいくようです。しかし、私が見つけた他の問題は、Cccが私にこのエラーを与えることでした。

Symbol's function definition is void : org-capture
4

2 に答える 2

11

まず、org-mode6.36以降を使用していることを確認してください。(以前のバージョンでは、設定が異なるremember.elを使用しています。)

定義されていないシンボルを使用していますorg-directory。使用してみてください:

(setq org-default-notes-file (expand-file-name "~/notes.org"))

フォローアップ:最近のorg-modeパッケージをロードするには:

(add-to-list 'load-path "/my/home/emacs.d/org-7.01h/lisp")
(require 'org-install)
(require 'org) ;; maybe this line is redundant

パッケージ化されているように、org-modelispファイルはlispサブディレクトリにあることに注意してください。

于 2010-09-01T23:13:02.453 に答える
3

私はこの質問が答えられたことを知っていますが、成功しなかった人々のためにもっと徹底的な答えを残したいと思います。モーションを実行したところです。以下に各ステップのリストを作成します。

  1. http://orgmode.org/およびダウンロードtar.gz(ダウンロード時はStableバージョン7.9.2(2012年9月)でした)
  2. untar(tar -zxvf nameoffile.tar.gzまたはファイルをダブルクリックするだけ)
  3. local.mkファイルを編集して、必要な場所にファイルを配置します。ユーザーディレクトリにScriptsというフォルダがあり、スクリプト言語に基づいて整理されています。私はemacsのものもそこに置いておくことにしました。スクリプトフォルダの中には「emacs」というフォルダがあります。プレフィックスとして「スクリプト」を使用しましたが、プレフィックス「/ Users / Username / Scripts/emacs」を作成することもできます。他のディレクトリが「$(prefix)/ emacs」で始まっていることを確認する必要がありました—ヒント:infodirを確認してください。
    # Name of your emacs binary
    EMACS = emacs
    


    #ローカルソフトウェアが見つかった場所prefix = / Users / Username / Scripts
    #ローカルlispファイルの場所。lispdir = $(prefix)/ emacs / lisp / org
    #ローカルデータファイルの場所。datadir = $(prefix)/ emacs / etc / org
    #情報ファイルの行き先。infodir = $(prefix)/ emacs / info

  4. .emacsファイルを編集し、そこに2つの新しいパスを貼り付けます(まだ存在しない場合)。最初のものはあなたが持っているかもしれないどんな.elファイルのためのlispフォルダのためのものであり、2番目のものは私がlispのサブフォルダであるorgフォルダにorgファイルを含んでいたのでそこにあります。残念ながら、「load-path」はサブフォルダーを検出するのに十分スマートではないため、各フォルダーを明示的に設定する必要があります。

    • (setq load-path(cons "〜/ Scripts / emacs / lisp" load-path))
    • (setq load-path(cons "〜/ Scripts / emacs / lisp / org" load-path))
  5. AquamacsまたはEmacsでMxorg-version(メタキー+ x、「org-version」と入力)でバージョンを確認します

ヒント:

  • nano〜/ .emacs
  • open -a Textedit〜/ .emacs
于 2012-10-24T05:42:51.503 に答える