Re: Re: Documentation Center (v6): do-it-yourself Mathematica Book

*To*: mathgroup at smc.vnet.net*Subject*: [mg79852] Re: [mg79838] Re: [mg79791] Documentation Center (v6): do-it-yourself Mathematica Book*From*: Tim Brophy <timbrophy at mac.com>*Date*: Tue, 7 Aug 2007 01:25:04 -0400 (EDT)*References*: <200708041000.GAA06032@smc.vnet.net> <200708060739.DAA26816@smc.vnet.net>

Hi Selwyn, Still won't work on my Intel Mac OSX 10.4.10 with Mathematica Version 6.0.1.0 Tim Brophy On 6 Aug 2007, at 08:39, Selwyn Hollis wrote: > Thanks for posting this. It wouldn't work on my Mac, so I fixed that > and did a bit of tidying-up so that it runs without squawking or > showing the notebooks that are opened and so that section title links > are in the right font and have spaces between words. > > - Selwyn Hollis > > > fn = FileNames[ > "*Overview.nb", ToFileName[{$InstallationDirectory , > "Documentation", "English", "System", "Tutorials"}]]; > (*Find "Overview.nb" files in the tutorials-directory*) > nameList = {StringTake[#, > {StringPosition[#, $PathnameSeparator][[-1, 1]] +1,-12}], > "paclet:tutorial/" <> > StringTake[#, > {StringPosition[#, $PathnameSeparator][[-1, 1]] +1,-4}], #}&/ > @fn; > (*create a list of strings needed for future code*) > Do[nameList[[i, 1]] = > "New: " <> nameList[[i, 1]], {i, {3,6,7,8,18,28,29,40,41,46,48}}]; > (* mark the chapter not present in v5.2 with "New: "*) > orderOfChapters = {{36, 3, 8, 31, 4, 47, 1, 39, 32, 14, 20, 16, 18, > 17, 11, 43}, {10, 13, 35, 48, 22, 45, 9, 27, 38, 42, 44, 23, > 12, > 26, 15, 40, 41}, {30, 25, 2, 21, 5, 7, 37, 19, 33, 34, 28, > 29, 6, > 46, 24}}; > (*The file list is alphabetical-this is the order in which the \ > chapters should appear*) > structure = Table[nameList[[i]], {k, 3}, {i, orderOfChapters[[k]]}]; > (*needed for the code further down-represents the structure of the \ > Mathematica book*) > mainChapters = {"A Practical Introduction to Mathematica", > "Principles of Mathematica", > "Advanced Mathematics in Mathematica"}; > (*The three main headings*) > d[x_] := Module[{sectitle = StringReplace[StringReplace[First[x], > {l1_?LowerCaseQ ~~ l2_?UpperCaseQ :> l1 <> " " <> l2}], > {" And " -> " and ", " Of " -> " of ", " In " -> " in ", > " The " -> " the ", " For " -> " for "}]}, > Cell[ > BoxData[TagBox[ > ButtonBox[ > PaneSelectorBox[{False -> sectitle, > True -> StyleBox[sectitle, "HyperlinkActive"]}, > Dynamic[CurrentValue["MouseOver"]], > BaselinePosition -> Baseline, FrameMargins -> 0, > ImageSize -> Automatic], > BaseStyle -> {"Link", "Subsection"}, > ButtonData -> x[[2]], ButtonNote -> x[[2]] ], > Annotation[#, x[[2]], "Hyperlink"] &]], "Subsection", > CellDingbat -> None, ShowGroupOpener -> True, > CellMargins -> {{36, 0}, {2, 7}}] ] > (*Cell representing a hyperlink to the "...Overview.nb" files*) > nb = NotebookPut[]; > SetOptions[nb, StyleDefinitions -> "Book/Textbook.nb"]; > NotebookWrite[ > nb, {Cell["The Virtual Mathematica Book (v6)", "Title"], > Cell["A collection of links to the tutorials present in the \ > Mathematica 6.0 Documentation Center, arranged in the order of \ > chapters in \"The Mathematica Book\".", "Text", > CellMargins -> {{27, 0}, Inherited}] } ]; > Do[NotebookWrite[nb, Cell[mainChapters[[k]], "Section"] ]; > Do[NotebookWrite[nb, d[i]]; > With[{nb1 = NotebookOpen[i[[3]], Visible -> False ]}, > NotebookFind[nb1, "TOCChapter", All, CellStyle]; > NotebookWrite[nb, NotebookRead[nb1] //. > "TOCChapter" -> Sequence @@ > {"Text", CellMargins -> {{48, 0}, Inherited}}]; > NotebookClose[nb1]], {i, structure[[k]]}], {k, 3}]; > SelectionMove[nb, All, Notebook]; FrontEndExecute[ > FrontEndToken["SelectionCloseAllGroups"]]; > FrontEndExecute[ FrontEndToken["OpenCloseGroup"]]; > (*Creates the Mathematica Book.The With[...] block in the middle \ > opens an "Overview.nb" file,extracts the embedded hyperlinks,and \ > prints those into the Mathematica Book as well.*) > > > > > On Aug 4, 2007, at 6:00 AM, thomas wrote: > >> Many users on this discussion group have complained about the absence >> of "The Mathematica Book" in the new Documentation Center; mainly >> because of a missing linear introductory text of Mathematica which >> was >> present in the old Help system. >> >> I completely agree. However, I noticed that the various tutorial >> files >> in the Documentation center contain the text of "The Book". What is >> really missing is the outline. So I decided to build my own do-it- >> yourself version of the book. It turned out to be quite simple, >> thanks >> to the ingenious naming rules of the tutorial files (all main chapter >> TOC files end with "...Overview.nb".) >> >> The following code opens a new notebook, and prints a collection of >> hyperlinks to Documentation Center tutorials, laid out in the >> order of >> the good old Mathematica book. Simply execute the code and save the >> notebook for your own use. There are 11 chapters that I could not >> find >> in "The Mathematica Book" of the v5.2 Help system, I integrated them >> in an order that seemed most appropriate to me. The are marked by >> "New: ". >> >> Note that this link collection does not contain links to all >> tutorials. For example, no links to the "Manipulate" tutorials exist. >> Neither are the packages represented. >> >> Also be warned that the code opens help files to extract hyperlinks >> for incorporation in "The Book", and closes them again. Lots of >> windows appearing and disappearing on the screen. There will also be >> warnings and a "beeps" popping up because of a mismatch in cell >> styles, which you can ignore. Everything works fine despite the >> mismatch. At the end, just close the "Why the beep" dialog box. >> >> Here is the code that you need to execute to build your own book in >> v6.0.x: >> >> [...] >> >> I hope that you might find this as helpful as I do! >> >> Happy clicking, >> Thomas >> >> > >

**References**:**Documentation Center (v6): do-it-yourself Mathematica Book***From:*thomas <thomas.muench@gmail.com>

**Re: Documentation Center (v6): do-it-yourself Mathematica Book***From:*Selwyn Hollis <selwynh@earthlink.net>