@@ -3,16 +3,16 @@ title = "在Emacs中使用Ipython"
3
3
description = " Use Ipython in Emasc"
4
4
date = 2016-08-03T00:00:00-07:00
5
5
keywords = [" emacs" , " ipython" ]
6
- lastmod = 2024-12-31T11:48:36 -08:00
6
+ lastmod = 2025-01-09T18:04:14 -08:00
7
7
tags = [" emacs" , " python" ]
8
- categories = [" emacs " ]
8
+ categories = [" Emacs技巧 " ]
9
9
draft = false
10
10
toc = true
11
11
+++
12
12
13
13
## <span class =" section-num " >1</span > Emacs Ipython 输出错误 {#emacs-ipython-输出错误}
14
14
15
- 在Emacs 运行 ** run-python** 的时候,报错了,如下
15
+ 在Emacs 运行 ` run-python ` 的时候,报错了,如下
16
16
17
17
``` emacs-lisp
18
18
[?12l[?25h2+2
@@ -34,7 +34,7 @@ toc = true
34
34
35
35
### <span class =" section-num " >1.1</span > Update 2017-3-15 {#update-2017-3-15}
36
36
37
- 在添加了 ** --simple-promp -i** 参数以后,虽说乱码的问题解决了,但是新的问题又出现了
37
+ 在添加了 ` --simple-promp -i ` 参数以后,虽说乱码的问题解决了,但是新的问题又出现了
38
38
在Ipython 里面是没法无法输入多行内容的,即使是一个简单的循环,详情查看这条issue
39
39
< https://github.com/ipython/ipython/issues/9816 > . 现在Ipython 开发社区还没有解决这个
40
40
问题,所以现在的权宜之计就是使用 Ipython4,等到社区解决了这个问题在升级为 Ipython5
@@ -49,11 +49,12 @@ pip install --force-reinstall ipython==4.2.1
49
49
50
50
### <span class =" section-num " >2.1</span > python-pop {#python-pop}
51
51
52
- 因为我之前使用Emacs的时候,是使用Spacemacs的配置的,但是后来觉得还是自己的
53
- 配置用的更舒服,所以又切换回自己的配置,但是我还是很想念Spacemacs的一些绑定
54
- 例如shell在底下弹出,或者是关闭,然后找到了[ Shell-pop] ( https://github.com/kyagi/shell-pop-el ) 这package,就可以用回
55
- Spacemacs的shell使用习惯。然后我觉得,Ipython shell也可以这样配置,只不过
56
- 我没有发现类似的package,又因为Emacs Lisp的强大,所以我自己写了一段小函数实现
52
+ 因为我之前使用Emacs的时候,是使用Spacemacs的配置的,但是后来觉得还是自己的 配置用的更舒服,所以又切换回自己的配置。
53
+
54
+ 但是我还是很想念Spacemacs的一些绑定, 例如shell在底下弹出,或者是关闭,然后找到了[ Shell-pop] ( https://github.com/kyagi/shell-pop-el ) 这package,就可以用回
55
+ Spacemacs的shell使用习惯。
56
+
57
+ 然后我觉得,Ipython shell也可以这样配置,只不过我没有发现类似的package,又因为Emacs Lisp的强大,所以我自己写了一段小函数实现
57
58
shell-pop 的功能
58
59
59
60
``` emacs-lisp
@@ -78,16 +79,16 @@ similar to shell-pop"
78
79
(evil-insert-state))))
79
80
```
80
81
81
- 如果没有使用Evil,可以把 \* (evil-insert-state)\* 去掉
82
+ 如果没有使用Evil,可以把 ` (evil-insert-state) ` 去掉
82
83
83
84
84
85
### <span class =" section-num " >2.2</span > Ipython History {#ipython-history}
85
86
86
87
我在普通的Shell使用Ipython的时候,很自然地使用上下方向键翻到上一条/下一条
87
- 执行的命令,因为shell的使用习惯就是这样滴,但是在Emacs里面使用Ipython,上下
88
- 方向键是去到上一行/下一行,就好像 vim 的 ** j ** ** k ** ,如果要翻到上一条命令,快捷键
89
- 是 ** M-p ** ,实在很不习惯,所以在查了一下Emacs manual 后,我改了一下按键绑定就实现了
90
- 我想要的效果
88
+ 执行的命令,因为shell的使用习惯就是这样滴。
89
+
90
+ 但是在Emacs里面使用Ipython,上下 方向键是去到上一行/下一行,就好像 vim 的 ` j ` ` k ` ,如果要翻到上一条命令,快捷键
91
+ 是 ` M-p ` ,实在很不习惯,所以在查了一下Emacs manual 后,我改了一下按键绑定就实现了我想要的效果
91
92
92
93
``` emacs-lisp
93
94
(define-key comint-mode-map (kbd "<up>") 'comint-previous-input)
0 commit comments