Re: Transition to Wolfram Workbench
- To: mathgroup at smc.vnet.net
- Subject: [mg107741] Re: [mg107707] Transition to Wolfram Workbench
- From: John Fultz <jfultz at wolfram.com>
- Date: Thu, 25 Feb 2010 01:52:46 -0500 (EST)
- Reply-to: jfultz at wolfram.com
If take your notebook and you do... * File->Save As... * Choose "Mathematica Package" under the file type * Save as any .m file...but not using the same name as your .nb file (because your .nb file is already writing a companion package, and so will keep destroying and recreating the like-named package every time you save your notebook). You'll now end up with a package file which has some interesting properties. * If you open it in Mathematica, it looks much like a notebook, even preserving the cell structure and most of the properties of the notebook. * If you open it in Workbench (or any text editor), it will be completely readable, and all of that work you put into commenting your code in Text cells will *still* be there in clearly readable comments. * If you decide to make changes in Workbench (or any text editor), it will be pretty clear how to do so without destroying any structure that would allow you to reopen the package in the Mathematica front end and continue to see the same structure. When we designed the package editor in Mathematica (i.e., the mode you're put in when you open a .m file), one of the chief goals was to have it stream out to a file which is completely readable in any text editor, and which can be co-developed using any combination of Mathematica, Workbench, and text editor. By following this procedure, you'll be making absolutely no irreversible commitment to Workbench, and this will allow you to transition as quickly or slowly (or not at all) as you wish. Incidentally, something else which you might wish to know...Mathematica has an alternate evaluatable cell style known as "Code" (Alt+8 or Cmd+8). Code is like Input, but with the following differences... * Much less automatic formatting (e.g., auto-indent, auto-line-wrap) * InitializationCell->True is set by default * Differing background color so you can easily distinguish from Input cells This can be a much easier and more visible way of tagging package code than using the Initialization Cell menu item, and it's the style which is used by the package editor for package code by default. Sincerely, John Fultz jfultz at wolfram.com User Interface Group Wolfram Research, Inc. On Wed, 24 Feb 2010 06:18:42 -0500 (EST), Hannes Kessler wrote: > Hello, > > could you give some recommendations for a smooth transition to the > workbench for packages developed in a standard mathematica notebook > environment? Starting a completely new project in the workbench is > one thing, but at least as important is the question how to continue > to work on existing packages created previously by other means. Up to > now I wrote code in input cells of a mathematica notebook, added > explanations in text cells, marked the input cells with package code > as initialization cells to create the .m file automatically upon > saving the notebook. I never looked into the .m files themselves. > Should one / could one import the notebook (or the .m file) to a > workbench project, or copy it to a work space directory, or work > directly on the files in the user base directory, or what else ... ? > > Are there tutorials deeling with this problem? > > Best regards, > Hannes Kessler