跳到末尾
最近在学习《Python编程从入门到实践》这本书的时候,把书里的动手试一试部分都做了,发现文件越来越长,来回翻阅很不方便,想着要是能像word里那样做一个指引的目录就好啦,可是Jupyter的Markdown不支持[@TOC]
自动生成目录的语法。
于是找了一下Jupyter Notebook的markdown该怎么生成目录,也遇到了一些问题,亲测有效,分享给大家(也相当于做个备忘,万一以后换电脑呐,哈哈)
本人的操作系统是windows10 64位,Jupyter是安装Anaconda 3后自动安装的版本。
(还没有安装好的小伙伴可以先安装一下Jupyter notebook,如果安装好了的话就跳过这一步~)
可以参照我写的博文:【软件安装】Windows10配置Anaconda环境
Jupyter Notebook Nbextensions有很多好用的扩展功能,比如补全提示(Hinterland)、格式美化(Code prettify)、自动保存(AutoSaveTime)、目录生成(Table of Contents(2))等,安装也比较简单。
Steps:
【1】打开Jupyter Notebook的Anaconda Prompt
窗口或者直接在Notebook的代码行里加!
执行。
Anaconda Prompt
窗口按照以下路径找到。(!!!同时最好以管理员身份运行:右键点击Anaconda Prompt --更多–以管理员身份运行。如果出现问题,可以试着通过这个方式解决。)
【2】安装Nbextensions
pip install jupyter_contrib_nbextensions
# python -m pip install jupyter_contrib_nbextensions (这个也可以)
jupyter contrib nbextension install --user --skip-running-check
安装完,打开Jupyter后,就能看到Nbextensions的标签。
可根据自己需要勾选相应的功能,比如补全提示(Hinterland)。
点击1
处可以控制显不显示目录栏,2
处图标可以对目录栏进行设置。
1
处是将目录加到文件最开始的位置,2
处可以对目录标题进行修改,3
处可以对侧边栏的目录标题进行修改,4
可以设置侧边栏显示的方式。上边两个就是自动添加标题号以及添加进目录的显示范围。
以上是安装过程中比较理想的状态,一步到位,哈哈。但是今天折腾的时候,遇到了不少问题,常见的就以下这几个吧。
【1】遇到The environment is inconsistent, please check the package plan carefully
的问题,然后就一直在查询导致这个问题的包,速度炒鸡炒鸡慢。
我是在使用以下安装命令的时候,会出现这个问题。
conda install -c conda-forge jupyter_contrib_nbextensions
pip install jupyter_contrib_nbextensions
然后也可能是因为镜像的问题,可参照博文Anaconda:The environment is inconsistent, please check the package plan carefully的解决办法。关于其中channel操作的疑问可参考Anaconda查看、删除、增加channel。
【2】安装成功也不报错,但是常用扩展及标签不显示
方法一:
同样在Jupyter Notebook的Anaconda Prompt
窗口或者直接在Notebook的代码行里加!
执行。
# 1、先卸载扩展包
pip uninstall jupyter_contrib_nbextensions
pip uninstall jupyter_nbextensions_configurator
# 2、再安装Nbextensions
pip install jupyter_contrib_nbextensions
# 3、安装 javascript and css files
jupyter contrib nbextension install --user
# 4、安装configurator
pip install jupyter_nbextensions_configurator
再重新启动Jupyter Notebook,就可以看到标签啦
方法二:
打开Jupyter Notebook:
可以在编辑ipynb文件界面中的Edit找到Nbextension config,进入即可配置。
或者直接打开http://localhost:8888/nbextensions?nbextension=toc2/main进行配置。
方法三:
可以尝试更换命令:
conda install -c conda-forge jupyter_contrib_nbextensions
根据提示执行相应的操作(可能更新几个包,也可能把几个包的版本回滚,反正yes就行了)。
看了markdown的参考文档,对于添加空行的说明木有,顺便搬过来总结在这里。
(1)在一行内容末尾处再用两个空格符
(2)多加一行
(3)使用标记符:
要换行的内容
之前直接搜markdown目录生成和页面跳转,也了解了一下一般的markdown语句
两种方式:
一、自动目录生成:
[@TOC]
二、手动设锚点跳转:
1、先在要跳转到的地方先设置锚点:
比如:跳到开头(也可以为空)
2、再在要跳转的地方设置跳转链接
比如:[跳到开头(这是要显示的内容)](#biaoqian)
eg:在markdown文档的开头输入,在末尾输入
[跳到开头](#biaoqian)
,效果如下:
跳到开头
想要参考更详细的资料的小伙伴可戳:
MarkDown中实现目录页面内跳转
MarkDown技巧:两种方式实现页内跳转