Take the 2-minute tour ×
Mathematica Stack Exchange is a question and answer site for users of Mathematica. It's 100% free, no registration required.

I would like to prevent the welcome screen from showing up after I close my last notebook. This is not an issue on my Windows machine, so I suspect it is system dependent. I am running Ubuntu 11.10. Any ideas?

Edit 1: This only happens when I close the last notebook by clicking on the "x" button. As Szabolcs pointed out, I can avoid this issue using File -> Quit or Ctrl-Q. This seems to be a Linux-specific problem.

share|improve this question
2  
You can use File -> Quit to close it for good. –  Szabolcs Mar 16 '12 at 18:13
    
It works! I have always assumed that clicking on the "x" button is equivalent to "Quit" (or Ctrl-Q) from the pull-down menu. From now on I will use the Ctrl-Q shortcut. –  Michael Wijaya Mar 16 '12 at 18:22
    
@Szabolcs Could you write something down in the answers section so that I can mark this question as answered? –  Michael Wijaya Mar 16 '12 at 18:26
1  
@R.M How can I disable the welcome screen for good? –  Michael Wijaya Mar 16 '12 at 20:08
1  
This is especially annoying because the welcome screen takes like 2 seconds to load. –  Mechanical snail Nov 4 '12 at 7:25
show 5 more comments

2 Answers

up vote 6 down vote accepted

The screen won't show when you use File | Quit, or you can use the shortcut Ctrl+Q.

I actually wrote the Wolfram support about this issue, the response said that that window opening is the desired behavior and it's thought to be somewhat of a substitute of not having the "main bar" the Windows version has. In that sense, it is not intended that closing all notebooks also shuts down Mathematica (plus kernel). When I told him that it's a bug unless you can disable it, I was told he'll bring the idea up for development at some point. Oh well.

share|improve this answer
    
Yeah, users have no idea about UX … Thanks for reporting a bug! –  queueoverflow Feb 18 '13 at 16:53
add comment

Upon closing the last notebook Mathematica opens the notebook file MathematicaNavigator.nb or MathematicaNavigatorTrial.nb (if you are using a trial version) or MathematicaNavigatorStudent.nb (if you are using a student version). These files reside in [prefix]/Wolfram/Mathematica/8.0/SystemFiles/FrontEnd/TextResources. That path name is hardcoded into the Mathematica binary. If Mathematica really doesn't have an option to disable the welcome screen completely (it likely doesn't), the only solution I see is to modify the contents of MathematicaNavigator.nb to make it exit Mathematica immediately. Before proceeding with modifying that file, be sure to disable the display of the welcome screen at startup time.

After you have disabled the welcome screen at startup, either by unchecking "Show at startup" checkbox on the startup screen or by using Edit | Preferences | System | Show at startup -> New document, back up the existing MathematicaNavigator.nb in case something goes wrong. Delete all code from MathematicaNavigator.nb and replace it with the following:

Notebook[{
    Cell["", "", CellDynamicExpression :>
        FrontEndTokenExecute["FrontEndQuit"]] 
}]

Basically, this represents a notebook with an empty cell having a dynamic handler. It activates when the cell is displayed to user. The handler FrontEndTokenExecute["FrontEndQuit"] just sends the Mathematica FrontEnd a quit message, just as if you had given the Ctrl+Q shortcut. By the way, calling NotebookClose[] instead of FrontEndTokenExecute["FrontEndQuit"] will always crash Mathematica with SIGSEGV on my machine (Mathematica 8.0.4.0 / Debian Wheezy 64-bit).

Another side effect is an immediate exit when About | Welcome screen is diplayed. I believe, this code could be improved to correctly detect circumstances under which MathematicaNavigator.nb was called.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.