S-Tab probably checks the value of last-command to see if the previous
command was also a S-Tab. If the previous command was anything else,
then Org Mode has no idea whether the buffer or its visibility has
changed since the last-executed S-Tab, since it cannot know which
other commands will affect buffer visibility and which will not. So,
if the previous command is not S-Tab, then the next S-Tab will restart
the cycle from the beginning. Similarly, when you first open a buffer,
the value of last-command is probably 'find-file or something.

On Tue, Feb 2, 2010 at 12:38 PM, Ivan Vanyushkin <va...@vanav.com.ua> wrote:
> There is org-startup-folded that controls startup state, so org-mode should
> know it.
>
> Also S-Tab forgets state even in the middle of document. Key presses to
> reproduce:
>
> 1) S-Tab - OVERVIEW
> 2) S-Tab - CONTENTS
> 3) C-G (or any other)
> 4) S-Tab - OVERVIEW (expected: SHOW ALL)
>
> or
>
> 1) S-Tab - OVERVIEW
> 3) C-G (or any other)
> 4) S-Tab - OVERVIEW (nothing changed! expected: CONTENTS)
>
> Is it by design? Why?
>
>
> On 02.02.2010 21:40, Ryan Thompson wrote:
>>
>> I don't think it is possible in general to know the startup state of a
>> file. Files with a #+STARTUP line may be an execption.
>>
>> On Tue, Feb 2, 2010 at 11:28 AM, Ivan Vanyushkin<va...@vanav.com.ua>
>>  wrote:
>>>
>>> Hello.
>>>
>>> On initial file opening, S-<TAB>  cycles through
>>> 1) OVERVIEW ->  2) CONTENTS ->  3) SHOW ALL
>>> not depending on current state of document.
>>>
>>> So, if (as default) document is in OVERVIEW state, first press
>>> _does nothing_ (switch to OVERVIEW again). Expected: CONTENTS.
>>>
>>> If document initially "#+STARTUP: content", then first press switches it
>>> back to OVERVIEW. Expected: SHOW ALL.
>>>
>>> So, S-Tab (and maybe Tab) doesn't use context state when start cycling.
>>>
>>> Is it correct and why?
>>>
>>> org-version 6.21 and 6.34c
>>> Emacs 23.1.1
>>>
>>> Thank you for your answer!
>>>
>>>
>>> --
>>> Ivan Vanyushkin - Vanav.
>
>


_______________________________________________
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode

Reply via email to