15
$\begingroup$

The online reference for the Wolfram Language includes tutorials on various topics. Is there a table of contents or directory containing links to all of these tutorials?

$\endgroup$
  • 2
    $\begingroup$ Use menu Help | Wolfram Documentation to go to the Documentation Center. Enter tutorial in the search field and hit return. You will get many pages of links to tutorials along with with short descriptions of them. $\endgroup$ – Bob Hanlon Dec 20 '18 at 23:02
21
$\begingroup$

Here's a little thing you can use. First the code to compile the TOC:

getTutorialURLs[] :=
  SortBy[Length@URLParse[#, "Path"] &]@
   Map[If[FileNameTake[#, {-3}] === "System", "", 
        StringSplit[FileNameTake[#, {-5}], "-"][[1]] <> "/"] <> 
       "tutorial/" <> FileBaseName[#] &]@
    FileNames[
     "*.nb",
     Prepend[
      FileNameJoin@{#["Location"], "Documentation", "English", 
          "Tutorials"} & /@
       Join[
        Association /@
         Thread[
          "Location" ->
           FileNames[
            "*",
            FileNameJoin@{
              $InstallationDirectory,
          "Documentation",
          "English",
          "Packages"
          }
        ]
      ],
    PacletManager`PacletFind["*"]
    ],
  FileNameJoin@{
    $InstallationDirectory,
        "Documentation",
        "English",
        "System",
        "Tutorials"
        }
      ]
     ];
Options[PaneColumn] =
  Join[
   {
    Dividers -> True,
    ItemSize -> Automatic,
    ImageSize -> {Automatic, {Automatic, 250}},
    Scrollbars -> {False, Automatic},
    AppearanceElements -> None,
    Framed -> False,
    FrameMargins -> 0,
    FrameStyle -> Black,
    ImageSizeAction -> "Scrollable"},
   FilterRules[Options[Column],
    Except[Dividers | ItemSize]],
   FilterRules[Options[Pane],
    Except@(
      Alternatives @@ Join[
        Options[Column],
        {ImageMargins, ImageSize, Scrollbars, AppearanceElements}
        ])
    ],
   FilterRules[Options[Framed], Except@(
      Alternatives @@ Join[
        Options[Column],
        Options[Pane],
        {FrameMargins, FrameStyle}]
      )]
   ];
PaneColumn[things_, ops : OptionsPattern[]] := Pane[
   Column[things,
    Dividers -> With[{style = Replace[OptionValue@FrameStyle,
         l_List :> Last@Cases[l, Except[_List], \[Infinity]]]
       },
      Switch[OptionValue@Dividers,
       True, {
        {}, Thread[Range[2, Length@things] -> style]},
       False, {},
       _, style
       ]
      ],
    FilterRules[
     Join[{ItemSize -> 
        If[OptionValue@ItemSize === Automatic, 
         Replace[OptionValue@ImageSize, {
           _Integer | _Scaled | 
             Full | {_Integer | _Scaled | Full, _} :> {1000, 
             Automatic},
           _ :> Automatic
           }]
         ], ops}, Options@PaneColumn], Options@Column]
    ],
   FilterRules[
    Join[{FrameMargins -> {{0, -1}, {1, 1}}, ops}, 
     Options@PaneColumn], Options@Pane]
   ] // If[TrueQ@OptionValue@Framed,
   Framed[#, 
     FilterRules[Join[{ops}, Options@PaneColumn], Options@Framed]] &,
   Identity]

Then the interface:

PaneColumn[
 Hyperlink[#, "paclet:" <> #] & /@ getTutorialURLs[]
 ]

enter image description here

Each link there will open the docs notebook, e.g.:

enter image description here

$\endgroup$
  • 1
    $\begingroup$ Thanks, @b3m2a1! It worked like a charm. $\endgroup$ – mpoulshock Dec 21 '18 at 12:51
  • $\begingroup$ There are 1,001 tutorials (getTutorialURLs[]//Length) ! $\endgroup$ – Reb.Cabin Dec 27 '18 at 23:05
  • $\begingroup$ @Reb.Cabin yeah but lots of them are for deprecated components (GUIKit, ANOVA, etc.) or are out of date (some of the "advanced" LA stuff, other old school operations stuff) $\endgroup$ – b3m2a1 Dec 27 '18 at 23:09

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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