37

In Mathematica versions < 8, the FrontEnd has a very intelligent behavior:

  • On evaluation, it by default automatically scrolls down the Notebook window to the last printed Output cell but also allows a user to scroll the Notebook window up by hand and then does not scroll down the window again automatically.

  • If the user wishes to restore automatic scrolling it is sufficient to scroll down the window to the last currently printed Output cell and automatic scrolling will be restored.

I feel such behavior very comfortable. But in Mathematica 8 we have no such behavior by default. I found that it may be partially restored by setting

SetOptions[$FrontEnd, 
 EvaluationCompletionAction -> {"ScrollToOutput"}]

But then it is not possible to stop automatic scrolling by scrolling the window by hands. It is possible to restore the old scrolling behavior?


Through Mathematica 10.4 the old scrolling behavior has not been restored.

  • Have any new options come on line to control this?

  • Is there a hook to determine scroll position that might be used for a workaround?

  • Could PrintTemporary and/or Dynamic (which is active only when visible) be used to simulate the old behavior?

  • If the old behavior is simply not achievable what is the best alternative for a similar workflow?

Alexey Popkov
  • 61,809
  • 7
  • 149
  • 368
  • Welcome, Alexey! – Mr.Wizard Feb 18 '12 at 04:44
  • 1
    Actually, I found the old behaviour rather annoying. Quite distracting when you were editing and running evaluations at the same time. – Sjoerd C. de Vries Mar 17 '12 at 13:19
  • @Sjoerd With the old behavior we could not only edit the input during evaluation (as we can by default now) but also inspect already printed outputs from the running evaluation (by scrolling the page). And all of this without loosing automatic scrolling when we wish! I see no advantages in loosing this. – Alexey Popkov Mar 17 '12 at 19:09
  • Well, it happened to me quite a lot that I got drawn to the bottom of the print area at times I didn't want to be there and when I succeeded staying above the scroll area it wasn't very stable either. – Sjoerd C. de Vries Mar 17 '12 at 21:46
  • @Sjoerd I agree that editing during evaluation was not always stable (of course, it does not mean that this is bad idea itself). The main advantage of the old behavior is the ability to switch between inspecting of already printed outputs and automatic scrolling. – Alexey Popkov Mar 17 '12 at 22:56
  • @Alexey Popkov It is unclear, do you mean: "In Mathematica versions < 8..."? – shrx Jun 14 '13 at 20:25
  • @shrx I mean at least Mathematica versions 5, 6 and 7 (I worked with). – Alexey Popkov Jun 15 '13 at 05:34
  • @AlexeyPopkov Ok :) good luck. – Kuba Mar 11 '15 at 08:56
  • Alexey, I added a new section to this question probing for alternatives and workarounds, and noting that the behavior has not been restored through 10.1 and is presumably not going to be. I hope you approve. – Mr.Wizard May 16 '15 at 07:32
  • In March 2015 I send a suggestion to WRI tech support (CASE:2679254) with a link to this thread. They replied that it was forwarded to "the appropriate people in our development group", so I think we at least have a hope. I have nothing against the new section in my question. – Alexey Popkov May 16 '15 at 13:15
  • In version 10.0 I have that, by default, the front end always auto-scrolls to view new output, regardless of previous hand scrolls by the user. I take it from this question that I may disable all auto-scrolling by setting EvaluationCompletionAction to something else. Is that correct? Are there any other options as of version 10? – Jess Riedel Jul 24 '15 at 18:27
  • 1
    In Mathematica 10, it does not seem possible to peacefully write some code while it is evaluating. It keeps jumping back and forth between the code line I am writing and the end of the input part of the section that is being evaluated. Is there a way to normally work on the code while Mathematica 10 is evaluating part of the notebook? – Wizzerad Jan 29 '16 at 03:05
  • 1
    @Wizzerad I suggest you to ask the tech support about it because (as you see) no one here seems to know how to get tiny control on the FrontEnd behavior while evaluating. If you get a solution, please post it here - it will help others. – Alexey Popkov Jan 29 '16 at 08:37
  • @Wizzerad In Mathematica version 12.0 your problem seems to be resolved. – Alexey Popkov Sep 29 '19 at 12:36

0 Answers0