3

Setup:

GUI version GNU Emacs 25.0.50.1 (x86_64-w64-mingw32) of 2015-07-25 on KAEL Compiled from Harroogan Emacs. Windows 7 x64 bit.

Situation:

The package saveplace remembers where your cursor/point was when you leaves the file.

When you visit the same file again, the point goes to the last place where it was when you previously visited the same file.

After upgrading to Emacs 25.0.50, I couldn't get it working.

Reproduce:

The empty dot-emacs configuration:

;; Emacs.el
(require 'package)
(package-initialize)
(require 'saveplace)
(setq-default save-place t)

Then I start the Emacs.

I open a file, edit somewhere, save it while the point is still on that place. Then I close Emacs.

And start Emacs again. Open same file again, but the cursor is on row 1.

With minimal configuration, I couldn't it get working. This happened after upgrading from Emacs 24.5 to Emacs 25.0.5

So my first assumption is saveplace seems to be broken on Emacs 25.

Drew
  • 75,699
  • 9
  • 109
  • 225
ReneFroger
  • 3,855
  • 22
  • 63
  • 1
    Emacs 25 has not been released. There are zillions of Emacs builds whose version number is 25.0.50. Try `emacs- version`, to provide more info. – Drew Aug 11 '15 at 21:25
  • `M-: (emacs-version)` gives me the following: `GNU Emacs 25.0.50.1 (x86_64-w64-mingw32) of 2015-07-25 on KAEL`. So it seems to be Emacs 25. I downloaded it from here: http://emacsbinw64.sourceforge.net/ – ReneFroger Aug 11 '15 at 23:04
  • It is a *development* build *toward* the creation of Emacs 25. Emacs 25 has not been released. Your build dates from 2015-07-25. That info might help someone help you. But things change from build to build, so you might want to try again from a release (24.5 is the latest release), to see if you have the same problem/question. – Drew Aug 12 '15 at 01:49
  • @Drew You're right: looking it up here https://www.gnu.org/software/emacs/history.html , so I assume I'm using now a beta version of Emacs 25, without knowing it. Thanks for the clarifity. – ReneFroger Aug 12 '15 at 12:39

1 Answers1

8

save-place is now controlled by save-place-mode:

save-place-mode is an interactive autoloaded compiled Lisp function in saveplace.el.

(save-place-mode &optional ARG)

Non-nil means automatically save place in each file. This means when you visit a file, point goes to the last place where it was when you previously visited the same file.

As opposed to:

save-place is a variable defined in ‘saveplace.el’. Its value is t

  • Automatically becomes buffer-local when set.
  • This variable is an alias for save-place-mode.
  • This variable is obsolete since 25.1;
  • use save-place-mode instead.

Documentation: Non-nil if Save-Place mode is enabled. See the command save-place-mode for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node Easy Customization) or call the function save-place-mode.

I use this:

(if (fboundp #'save-place-mode)
  (save-place-mode +1)
  (setq-default save-place t))
PythonNut
  • 10,243
  • 2
  • 29
  • 75
  • I would not use a function quote with `fboundp`. It's argument is regular symbol not a function symbol. –  Aug 12 '15 at 08:26
  • PythonNut, your answer is the right one, MANY thanks again for your tremendous help. It worked again. Now I'm gonna figure out how I could collect all these saveplace-files into one seperated directory. – ReneFroger Aug 12 '15 at 12:43
  • @ReneFroger By default, it creates just one file: `~/.emacs.d/places` – Kaushal Modi Aug 12 '15 at 13:34