MathGroup Archive 2007

[Date Index] [Thread Index] [Author Index]

Search the Archive

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

  • To: mathgroup at smc.vnet.net
  • Subject: [mg79809] Re: Documentation Center (v6): do-it-yourself Mathematica Book
  • From: David Reiss <dbreiss at gmail.com>
  • Date: Sun, 5 Aug 2007 04:52:46 -0400 (EDT)
  • References: <f91jf0$6da$1@smc.vnet.net>

This is good!

I made a few small changes to your code so that it does not only work
on Windows.  The following version makes it OS independent


--David


fn = FileNames["*Overview.nb",
   ToFileName[{$InstallationDirectory, "Documentation", "English",
     "System", "Tutorials"}]];
(*Find "Overview.nb" files in the tutorials-directory*)

nameList = With[{case = StringReplace[#, DirectoryName[#] -> ""]},
     {StringReplace[case, "Overview.nb" -> ""],
      "paclet:tutorial/" <> StringReplace[case, ".nb" -> ""], #}] & /@
    fn;
(*create a list of strings needed for future code*)

Scan[(nameList[[#, 1]] = "New: " <> nameList[[#, 1]]) &, {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 \
Matehmatica book*)

mainChapters = {"A practical introduction to Mathematica",
   "Principles of Mathematica",
   "Advanced Mathematics in Mathematica"};
(*The three main headings*)

d[x_] := Cell[
   BoxData[TagBox[
     ButtonBox[
      PaneSelectorBox[{False -> x[[1]],
        True -> StyleBox[x[[1]], "HyperlinkActive"]},
       Dynamic[CurrentValue["MouseOver"]],
       BaselinePosition -> Baseline, FrameMargins -> 0,
       ImageSize -> Automatic], BaseStyle -> "Link",
      ButtonData -> x[[2]], ButtonNote -> x[[2]]],
     Annotation[#, x[[2]], "Hyperlink"] &]], "Subsection"];
(*Cell representing a hyperlink to the "...Overview.nb" files*)

nb = NotebookPut[];
SetOptions[nb,
  StyleDefinitions -> ToFileName["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\".", "Author"]}];
Do[NotebookWrite[nb, Cell[mainChapters[[k]], "Section"]];
  Do[NotebookWrite[nb, d[i]];
   With[{nb1 = NotebookOpen[i[[3]]]},
    NotebookFind[nb1, "TOCChapter", All, CellStyle];
    NotebookWrite[nb, NotebookRead[nb1]]; 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, 6:12 am, thomas <thomas.mue... at gmail.com> 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.


 <snip>



  • Prev by Date: Re: Re: request for a few minutes CPU-time
  • Next by Date: Re: Re: Working with factors of triangular numbers.
  • Previous by thread: Re: Documentation Center (v6): do-it-yourself Mathematica Book
  • Next by thread: Re: Working with factors of triangular numbers.