.. _exempleoffixmenurst: ============================================ Example of a notebook with a javascript menu ============================================ .. only:: html **Links:** :download:`notebook `, :downloadlink:`html `, :download:`PDF `, :download:`python `, :downloadlink:`slides `, :githublink:`GitHub|_doc/notebooks/exemple_of_fix_menu.ipynb|*` It is sometimes difficult to navigate through long notebooks. Regular ways to navigate in a HTML page are not available when the cursor is stuck in a cell. Here is a simple trick with two sections. Links remains at the same place anytime just by adding HTML in the notebook. The code in the markdown cell looks like the following, it is a mix between HTML and markdown. The combination is not perfect but that works somehow. The outcome can be shown on the left.
[Section 1](#Section-1) -- [Section 2](#Section-2) -- [This is the end](#This-is-the-end.)
This trick does not work very well with IPython 3+. So I created a simple function which automaticallt adds a menu to all sections within the notebook. .. code:: ipython3 from jyquickhelper import add_notebook_menu add_notebook_menu(menu_id="main_menu") .. contents:: :local: Section 1 ~~~~~~~~~ .. code:: ipython3 for i in range(0,30): # just making space print ("line",i) .. parsed-literal:: line 0 line 1 line 2 line 3 line 4 line 5 line 6 line 7 line 8 line 9 line 10 line 11 line 12 line 13 line 14 line 15 line 16 line 17 line 18 line 19 line 20 line 21 line 22 line 23 line 24 line 25 line 26 line 27 line 28 line 29 Section 2 ~~~~~~~~~ .. code:: ipython3 for i in range(0,30): # making space again print("line2",i) .. parsed-literal:: line2 0 line2 1 line2 2 line2 3 line2 4 line2 5 line2 6 line2 7 line2 8 line2 9 line2 10 line2 11 line2 12 line2 13 line2 14 line2 15 line2 16 line2 17 line2 18 line2 19 line2 20 line2 21 line2 22 line2 23 line2 24 line2 25 line2 26 line2 27 line2 28 line2 29 This is the end. ~~~~~~~~~~~~~~~~ We end up by using some functionalities from pyquickhelper. .. code:: ipython3 from jyquickhelper import set_notebook_name_theNotebook set_notebook_name_theNotebook() .. parsed-literal:: .. parsed-literal:: .. code:: ipython3 theNotebook .. parsed-literal:: 'exemple_of_fix_menu.ipynb' .. code:: ipython3 from jyquickhelper import add_notebook_menu add_notebook_menu() .. contents:: :local: