Nick Dokos<address@hidden> wrote:
I'm pretty tired and I might have misunderstood what is happening here,
so don't put too much weight on the following. I'll need some sleep
before I can take a whack at it again however.
Nick
Nick Dokos<address@hidden> wrote:
Stelian Iancu<address@hidden> wrote:
So it is a customization issue. Now the question is what :-). I should
mention that I am using both dev versions for Emacs and org-mode
(Emacs from bzr from a few days ago and org-mode from git from a few
days ago) on Mac OS X 10.7. Emacs is installed using homebrew.
Ok, it seems like I've found the culprit. It's this line:
;; Make org-mode default for all the new files
(setq major-mode 'org-mode)
If I comment it out, it all works beautifully. I thought it was
because I was executing it before loading org-mode, but I've made sure
org-mode is loaded before executing that line and I still get the same
error.
Any ideas why it happens?
Yes - don't ever do that. The major mode of a buffer is set by calling a
function (e.g. the org-mode function for buffers that should be in org
mode). That function does a million things to make sure that everything
works properly: your setting a single variable does none of that and all
you end up doing is confusing emacs.
In most cases, you don't even call the mode function explicitly: it is
called for you automatically, e.g. through the setting of auto-mode-alist.
I have the following in my basic customizations:
(add-to-list 'auto-mode-alist '("\\.org$" . org-mode))
That says to emacs: when find-file is called to open a file whose name
ends in `.org' arrange to call the function org-mode on it. The function
takes care of the setting of major-mode.
Be sure to read Ch.23 of the emacs manual on major modes.
This is all correct I think (except for the ominous first
sentence). But having
(setq major-mode 'org-mode)
in one's .emacs should not have any effect: major-mode is
buffer local, so the setting above should not have any
effect on *anything*, afaict. To make org-mode the
default mode for new buffers, you'd have to say
(setq-default major-mode 'org-mode)
I've added each of those to my minimal .emacs and I have
no problem using S-{right,left} to change the TODO state
in a .org file. When I set org-mode to be the default
major mode and I open an unrelated file, its major mode
is set to org-mode, but when I S-{right,left} at some
arbitrary place, I get a message:
To use shift-selection with Org-mode, customize
`org-support-shift-select'
and the corresponding message in the *Messages* buffer
is:
if: To use shift-selection with Org-mode, customize
`org-support-shift-select'
That's an error, but it's a "reasonable" error: not right
but not too bad.
And when I ``find-file foo.bar'' which would normally
open it in fundamental mode, I do get it in org-mode and
everything works as it should: I can add headlines and
change TODO states normally.
So to summarize: no idea why that setting should have any
effect at all.
Nick
PS. The only possible explanation I can think of is
version differences:
Org-mode version 7.7 (release_7.7.205.gce02a)
GNU Emacs 24.0.50.1 (x86_64-unknown-linux-gnu, GTK+
Version 2.22.0) of 2011-07-30
I have not tried with emacs 23.