1

更新される emacs (workgroups2) パッケージへの特定のパスをロードすることにより、.emacs ファイルでおそらく最も重要な emacs パッケージ ルールに違反しています。そのため、新しいバージョンがリリースされるたびに、アップグレードするときに emacs ファイルを編集する必要があります (これは下の最初の行です)。

以下は、私のemacsファイルの関連セクションです。特定のパスを追加せずにこれをロードするにはどうすればよいですか? 他にどんな提案があるか教えてください。ありがとうございます!

明確にするために、私たちが検討している行は次のとおりです。(add-to-list 'load-path "~/.emacs.d/elpa/workgroups2-20130915.1509")

(add-to-list 'load-path "~/.emacs.d/elpa/workgroups2-20130915.1509")
(require 'workgroups2)
(setq package-enable-at-startup nil)
(package-initialize)

(desktop-save-mode nil)     ; save all opened files (or disable it)                                                                                                         
(setq wg-prefix-key (kbd "C-c w")
      wg-restore-associated-buffers t ; restore all buffers opened in this WG?                                                                                              
      wg-use-default-session-file t   ; turn off for "emacs --daemon"                                                                                                       
      wg-default-session-file "~/.emacs.d/emacs_def.wg"
      wg-use-faces nil
      wg-morph-on nil)                  ; animation off                                                                                                                     

;; Keyboard shortcuts - load, save, switch                                                                                                                                  
(global-set-key (kbd "<pause>")     'wg-reload-session)
(global-set-key (kbd "C-S-<pause>") 'wg-save-session)
(global-set-key (kbd "s-z")         'wg-switch-to-workgroup)
(global-set-key (kbd "s-/")         'wg-switch-to-previous-workgroup)

(workgroups-mode 1)     ; Activate workgroups 

編集:その行をコメントアウトすると、デバッガーから次のように表示されます。

Debugger entered--Lisp error: (file-error "Cannot open load file" "workgroups2")
  require(workgroups2)
  eval-buffer(#<buffer  *load*> nil "/home/d2b2/.emacs.d/init.el" nil t)  ; Reading at buffer position 6014
  load-with-code-conversion("/home/d2b2/.emacs.d/init.el" "/home/d2b2/.emacs.d/init.el" t t)
  load("/home/d2b2/.emacs.d/init" t t)
  #[0 "^H\205\262^@     \306=\203^Q^@\307^H\310Q\202;^@ \311=\204^^^@\307^H\312Q\202;^@\313\307\314\315#\203*^@\316\202;^@\313\307\314\317#\203:^@\320\nB^R\321\202;^@\316\$
  command-line()
  normal-top-level()

編集:両方の行をコメントアウトすると、次のエラーが発生します。

Debugger entered--Lisp error: (error ":END: line missing at position 186")
  signal(error (":END: line missing at position 186"))
  error(":END: line missing at position %s" 186)
  org-flag-drawer(t)
  org-cycle-hide-drawers(all)
  org-set-startup-visibility()
  org-mode()
  desktop-restore-file-buffer("/home/d2b2/.todo" ".todo" nil)
  #[nil "^H     \236A\206^H^@\305\n^K\f#\207" [desktop-buffer-major-mode desktop-buffer-mode-handlers desktop-buffer-file-name desktop-buffer-name desktop-buffer-misc deskt$
  desktop-create-buffer(206 "/home/d2b2/.todo" ".todo" org-mode (workgroups-mode) 1 (nil nil) nil nil ((buffer-file-coding-system . undecided-unix) (truncate-lines . t)))
  eval-buffer(#<buffer  *load*> nil "/home/d2b2/.emacs.desktop" nil t)  ; Reading at buffer position 813
  load-with-code-conversion("/home/d2b2/.emacs.desktop" "/home/d2b2/.emacs.desktop" t t)
  load("/home/d2b2/.emacs.desktop" t t t)
  desktop-read()
  #[nil "\304\211^X     \235\203^O^@\305^H      \"^Q\306^R)\n\205^Z^@\307 \210\310\211^S\207" [key command-line-args desktop-save-mode inhibit-startup-screen "--no-desktop"$
  run-hooks(after-init-hook)
  command-line()
  normal-top-level()
4

1 に答える 1

2

package-directory-listelpa へのパスが含まれていることを確認してください~/.emacs.d/elpa

次にpackage.el、いくつかのパッケージを初期化し、パッケージの名前を追加して package-activated-list、パッケージ ディレクトリ (例: ~/.emacs.d/elpa/workgroups2-20130915.1509) をload-path 自動的にプッシュします。

私にとってはいつものように機能します。パッケージの特定のパスを手動で追加することはありません。の値package-enable-at-startupt私の設定にあります。

package-enable-at-startup doc: "Emacs の起動時にインストール済みパッケージを有効にするかどうか...の値package-enable-at-startupが nilの場合、M-x package-initializeいつでも入力してパッケージ システムを有効にすることができます。"

(require 'workgroups2)設定でパッケージの初期化の前にある場合は、下に移動してみてください。

于 2013-10-20T20:44:43.350 に答える