打开jupyter-ipython

其实人家就叫jupyter了,后面咱可能就少提ipython了。

# 打开命令行,让我们输入
jupyter notebook

当然,这个前提是你已经安装了jupyter并学会了基本使用,请看本系列的前两篇文章。

ok,咱们继续!

这时候应该已经自动打开一个网页了,右上角有个new点一下,出现下拉菜单,是你的python版本,点一下,就会新建一个网页,就可以开始玩了!

如下图所示:

第一行是jupyter xxxxxxxx一堆东西,有个Untitled看见没?

如下图所示:

点一下,是可以编辑的,改成你想要的名字,比如我们正在写的这篇:

如下图所示:

开始写博客了

现在就已经是在jupyter的页面上写东西了。简单说说能写啥吧!

两种模式

命令模式(Esc)

在默认的输入模式下,按Esc可以进入命令模式,是不是和vim有点像?

代码和markdown是常用的两种:分别用y和m切换,前提是在命令模式下!

查看快捷键:

Help-Keyboard Shortcuts

如下图所示:最常用的我给加点颜色吧!

输入模式(Enter)

在命令模式下,直接按一下回车Enter就进入到编辑模式了,比如咱们刚才一瞬间就是这么切换过来写文字的。

两种模式如下图所示:

写代码

用过ipython的应该对前面的In[],这种标志已经见习惯了,就是直接输入代码的。

这样的代码有语句,有运行结果,有错误提示,简直是居家必备啊!

下面是个检测python版本的例子:

但此时咱们在写字呢,怎么添加一个cell并且开始写代码,直到运行呢?

步骤如下:

  • Esc进入命令模式
  • 按一下B在下面添加一行
  • 写代码
  • 用ctrl+enter运行,或者alt+enter也行(这时候会自动再插入一行)
  • 你会看见类似下面的样式
import sys
print sys.version
2.7.11 |Anaconda 4.0.0 (64-bit)| (default, Feb 16 2016, 09:58:36) [MSC v.1500 64 bit (AMD64)]

写博客到cnblogs

这里的文字已经是md的格式了,按理说直接粘贴到任意一个博客,就好了,现在很多博客都直接支持md输入,比如cnblogs,csdn,图灵社区等等。

但是,别着急,咱们可以结合VScode把博客写到cnblogs上,这是一种更好玩的方式。

步骤如下:

  • 下载VScode
  • 安装writecnblog插件
  • 导出当前的jupyter notebook为markdown文件
  • 用VScode编辑md文件
  • 发布博客

下载VScode

微软这几年开源的脚步挺大的,挺好!哈哈!这个VScode就是其一,跨平台,而且用了最先进的js桌面框架(electron)开发,和github出的Atom同属一派。

下载地址:https://code.visualstudio.com/

安装writecnblog插件

打开vscode,按一下ctrl+p,会打开一个窗口,输入

ext install writecnblog

回车,等一会,安装好了会提示你的!

更多内容请参考作者博客吧!http://www.cnblogs.com/caipeiyu/p/5475761.html

这里简单贴俩效果图:



导出当前的jupyter notebook为markdown文件

回到jupyter的页面,在菜单找到file-download as-Markdown,保存一下,

如下图所示:

用VScode编辑md文件

打开我们刚才保存的md文件,我们刚才有几个地方写的是如下图所示:,这时候就要真的开始加图片了!(我已经边做边截图都准备好了-

就用刚才安装好的vscode插件!

  • 用 ctrl + shift + p 打开命令行
  • 在命令框里面输入cnblog:上传图片,然后就出现一个本地图片路径的输入框
  • 要输入完整的本地图片地址,这里建议在vscode打开的工作目录建立个imgs文件夹,把图片都放到里面,vscode很强大,既能预览图片,还能右键复制地址

如下图所示:

  • 输入Blog地址名的输入框,这个地址名在博客管理的设置里面查看,一般就是用户名啦!
  • 再输入用户名和密码,就可以上传图片
  • 图片上传成功后,就会返回一个图片地址到编辑框里面。

自己调整一下位置就好了!

如下图所示:







发布博客

作者这样规定的插件规则:

发布文章是把文件名称当做标题名称。

发布完文章后,会在文件名称前面加一个[文章id]文件名称,这个[文章id]是用于更新时候用的,如果开头有这么一个东西,还要当做新文章发布,会先提醒你有更新信息。

经过测试,我们需要先保存一下草稿,(这时候如果直接发布就会生成带id的文件了,由于源文件改了名字,这时候vscode会报错,不用理他,可能是插件bug)。再次打开刚才带有id的文件,再用发布的命令发布一下就好了,这时候还需要填三个东西的:

还有,存完草稿不要立刻发布,会提示你太频繁发布的--!

  • 输入Blog地址名的输入框,这个地址名在博客管理的设置里面查看。一般就是用户名
  • 再输入用户名和密码,就可以上传图片

然后登陆你的博客园看看吧!

我的这个jupyter的源文件在这里:https://raw.githubusercontent.com/HowieWang/cnblogs/master/jupyter巨好玩-使用jupyter结合VScode写博客.ipynb

是个半成品,仅供参考!

have fun!

jupyter巨好玩-使用jupyter结合VScode写博客的更多相关文章

  1. 用vscode写博客和发布

    最近想开始写点博客什么的,然后看到在博客园注册了一个账号这么久,也没有写过文章,就想在博客园写点什么来刷个存在感,而且觉得用Markdown编辑器来写文章挺不错,但是博客园自带的Markdown编辑器 ...

  2. HDU 2064 菜鸡第一次写博客

    果然集训就是学长学姐天天传授水铜的动态规划和搜索,今天讲DP由于困意加上面瘫学长"听不懂就是你不行"的呵呵传授,全程梦游.最后面对连入门都算不上的几道动态规划,我的内心一片宁静,甚 ...

  3. vscode发博客插件更新v0.1.0(可能会相对好用点吧)

    距离上一次编写这个vscode在博客园发博客的插件已经过去好久了,那个时候vscode插件的功能也没有那么强大,期间有人提出问题来,也有人提出建议来,我一直没有抽出时间来维护,深感抱歉,直到有人加到我 ...

  4. 记录一下第一次用markdown写博客回滚过程

    前面写博客,一直用的是博客园的TinyMCE编辑器, 今天不知道哪根筋搭牢了,想试试用Markdown写. 于是在“选项”里面把默认编辑器修改为“Markdown”,鉴于本人有一定的Markdown基 ...

  5. 新功能发布!Markdown写博客!

    有一种神奇的语言,它比html还简单,它巧妙地将内容与格式整合在一起--它就是Markdown. 现在我们实现了博客对Markdown的内置支持,可以让您轻松地在园子里用这个神奇的语言写博客! &qu ...

  6. 第一次写博客Poj1044

    Date bugs Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 3005   Accepted: 889 Descript ...

  7. (转)[BetterExplained]为什么你应该(从现在开始就)写博客

    (一)为什么你应该(从现在开始就)写博客 用一句话来说就是,写一个博客有很多好处,却没有任何明显的坏处.(阿灵顿的情况属于例外,而非常态,就像不能拿抽烟活到一百岁的英国老太太的个例来反驳抽烟对健康的极 ...

  8. 推荐几款自己写博客使用的Ubuntu软件

    使用Ubuntu桌面有段时间,到现在也写过几篇博客了,期间用到的几款好用的软件推荐给大家.1. 图片简单编辑软件gthumbubuntu默认提供shotwell查看图片,类似与windows的图片查看 ...

  9. QQ表情动图,增加写博客的乐趣

    QQ表情动图,增加写博客的乐趣 body{margin:0px;}

随机推荐

  1. HDU 3306 - Another kind of Fibonacci

    给你 A(0) = 1 , A(1) = 1 , A(N) = X * A(N - 1) + Y * A(N - 2) (N >= 2). 求 S(N) = A(0) 2 +A(1) 2+……+ ...

  2. RtlInitUnicodeString、IoCreateDevice、IoCreateSymbolicLink、IoDeleteDevice 四个 API 驱动函数的使用

    要解释"驱动对象",就得先从 DriverEntry() 说起: 做过C语言开发的都知道程序是从 main() 函数开始执行.在进行 Windows 驱动程序开发的时候没有 mai ...

  3. c++对文件操作的支持(一)

    #include <stdio.h> #include <iostream> #include <fstream> using namespace std; voi ...

  4. 从汇编看c++中指向成员变量的指针(一)

    在c++中,指向类成员变量的指针存储的并不是该成员变量所在内存的地址,而仅仅是该成员变量在该类对象中相对于对象首地址的偏移量.因此,它必须绑定到某一个对象或者对象指针上面,这里的对象和对象指针,就相当 ...

  5. keepalived+mysql双主复制高可用方案

    MySQL双主复制,即互为Master-Slave(只有一个Master提供写操作),可以实现数据库服务器的热备,但是一个Master宕机后不能实现动态切换.而Keepalived通过虚拟IP,实现了 ...

  6. mysql事物处理

    mysql事物主要用于处理操作量大,复杂度高的数据.比如说,在人员管理系统中,你删除一个人员,你既要删除人员的基本资料,也要删除和该人员相关的信息,如信箱,文章等.这样,这些数据库操作语句就构成一个事 ...

  7. mysql 命令

    1.查看数据库: mysql> show databases; 2.使用数据库 mysql> use mysqldata; 3.查看数据表 mysql> show tables; 4 ...

  8. JSON入门之二:org.json的基本用法

    java中用于解释json的主流工具有org.json.json-lib与gson,本文介绍org.json的应用. 官方文档: http://www.json.org/java/ http://de ...

  9. svg 文字

    <text>标签 在svg中用使用<text>标签去定义一段文字.如 Example 1 在svg中写下 在平坦的路上曲折前行 Example 1 Dome <svg h ...

  10. C++ 前置声明 和 包含头文件 如何选择

    假设有一个Date类 Date.h class Date { private: int year, month, day; }; 如果有个Task类的定义要用到Date类,有两种写法 其一 Task1 ...