Thomas, Could you provide a recipe? As a test, I ran Emacs with just the following code in my .emacs: (require 'saveplace) (setq-default save-place t) (setq org-show-siblings '((default) (isearch t) (bookmark-jump . t))) Emacs ran without any errors, and I made a test.org file, created multiple headlines, and left point in the middle of a paragraph. Everything restored fine after closing and revisiting the file. I was hoping someone else would jump in and interpret those debugging messages, because I'm not proficient enough in Emacs Lisp yet, nor familiar enough with the org-mode code base. All I can do is try and reproduce your error. The code seems to be robust, though. Tried my best with what I have, 42 2013/3/21 Thomas S. Dye > 42 147 writes: > > >> Good - May I suggest, that you write a step - by step howto and mail > >> it here or even add it to > >> worg? This would be a useful addition. > > > > I adapted this thread the best I could. Feel free to do with it what you > > wish. > > > > QUESTION > > > > How do I restore the state of my buffer where I left it? > > > > ANSWER > > > > When Emacs first visits an Org file, the global state is set to > > OVERVIEW, i.e., only the top level headlines are visible. > > > > If you wish Emacs to restore the position of point where you left it in > > your previous session, add the following code to your .emacs: > > > > (require 'saveplace) > > (setq-default save-place t) > > > > If you wish Org-mode to restore the folded state of the buffer (not just > > the position of point), you can either use customize, or add the > following > > to .emacs: > > > > (setq org-show-siblings '((default) (isearch t) (bookmark-jump . t))) > > This doesn't work for me: > > Debugger entered--Lisp error: (wrong-type-argument listp t) > mapcar(#[(f) " T \306\n!\204 \n:\203 \307\n \"\202 > \n*\211\203`\310\f > \"\203` \311\312 > \"\311\313 > \"D \306\n!\203B\314\n \"\202\\\n\203O\314\315\n #\202\\ \203Z @\202\\ > *\202a > \306\n!\204y\n:\203y\307\n \"\202z\n*\206\200 > C \306\n!\203\223\314\n \"\202\255\n\203\240\314\315\n #\202\255 \203\253 > @\202\255 ,\207" [i *orgtbl-efmt* fmt efmt orgtbl-exp-regexp f functionp > plist-get string-match match-string 1 2 apply format args *orgtbl-fmt* > *orgtbl-default-fmt*] 6] (bookmark-jump . t)) > orgtbl-format-line((bookmark-jump . t)) > orgtbl-format-section(nil) > orgtbl-to-generic(((default) (isearch t) (bookmark-jump . t)) > (:remove-newlines t :tstart nil :tend nil :hline "|---" :sep " | " :lstart > "| " :lend " |" :fmt (lambda (cell) (format "%s" cell)))) > orgtbl-to-orgtbl(((default) (isearch t) (bookmark-jump . t)) (:fmt > (lambda (cell) (format "%s" cell)))) > org-babel-insert-result(((default) (isearch t) (bookmark-jump . t)) > ("replace") ("emacs-lisp" "(require 'saveplace)\n(setq-default save-place > t)\n(setq org-show-siblings '((default) (isearch t) (bookmark-jump . t)))" > ((:comments . "") (:shebang . "") (:cache . "no") (:padline . "") (:noweb . > "yes") (:tangle . "yes") (:exports . "code") (:results . "replace") > (:session . "none") (:padnewline . "yes") (:hlines . "yes") (:colnames . > "no") (:result-type . value) (:result-params "replace") (:rowname-names) > (:colname-names)) "" nil 0) nil 0 "emacs-lisp") > org-babel-execute-src-block(nil ("emacs-lisp" "(require > 'saveplace)\n(setq-default save-place t)\n(setq org-show-siblings > '((default) (isearch t) (bookmark-jump . t)))" ((:comments . "") (:shebang > . "") (:cache . "no") (:padline . "") (:noweb . "yes") (:tangle . "yes") > (:exports . "code") (:results . "replace") (:session . "none") (:padnewline > . "yes") (:hlines . "yes") (:colnames . "no") (:result-type . value) > (:result-params "replace") (:rowname-names) (:colname-names)) "" nil 0)) > org-babel-execute-src-block-maybe() > org-babel-execute-maybe() > org-babel-execute-safely-maybe() > run-hook-with-args-until-success(org-babel-execute-safely-maybe) > org-ctrl-c-ctrl-c(nil) > call-interactively(org-ctrl-c-ctrl-c nil nil) > > All the best, > Tom > > > -- > Thomas S. Dye > http://www.tsdye.com >