跳转到主要内容

代码单元格Vim绑定

项目描述

jupyterlab-vim

社区版的 https://github.com/jwkvam/jupyterlab-vim,已更新支持 jupyterlab 2, 3 和 4

Extension status Github Actions Status Binder npm version npm downloads PyPI Conda Version

笔记本单元格的 vim 绑定

jlabvim

模式

与 vim 类似,Jupyterlab 也有编辑模式和命令模式的区分。Jupyterlab 命令模式是指光标不在特定单元格内,而编辑模式则是在单元格内输入。

此扩展将 Jupyterlab(编辑和命令)模式与标准的 vim 模式(正常、插入、可视)结合。因此,当前的模式集合看起来像:

  1. Jupyterlab 命令模式
  2. Jupyterlab 编辑模式
    • 插入
    • 正常
    • 可视

安装

pip install jupyterlab-vim

或者使用 conda/mamba

mamba install -c conda-forge jupyterlab_vim

键绑定

要了解如何修改键绑定,请参阅 modify-keybinds.md 文件。

请注意,除非明确指明 Shift,否则所有键都是小写。例如,Y, Y 是两个小写的 yShift-Y, Y 是一个大写的 Y 后面跟着一个小写的 y

此扩展引入的快捷键

Vim Ex 命令

命令 动作
:w[rite] 保存笔记本
:q[uit] 进入 Jupyter 命令模式

Vim 命令绑定

和弦 动作
Ctrl-O, U 撤销单元格动作
- 在光标处拆分单元格
Ctrl-O, - 在光标处拆分单元格
Ctrl-O, D 剪切单元格
Ctrl-O, Y 复制单元格
Ctrl-O, P 粘贴单元格
Ctrl-Shift-J 扩展下面的标记单元格
Ctrl-Shift-K 扩展上面的标记单元格
Ctrl-O, O 在下面插入单元格
Ctrl-O, Ctrl-O 在上面插入单元格
Ctrl-J 选择下面的单元格
Ctrl-K 选择上面的单元格
Ctrl-O, G 选择第一个单元格
Ctrl-O, Ctrl-G 选择最后一个单元格
Ctrl-E 向下移动单元格
Ctrl-Y 向上移动单元格
Ctrl-O, Z, Z 居中单元格
Ctrl-G 显示工具提示
Command/Ctrl-1 代码单元格模式
Command/Ctrl-2 Markdown 单元格模式
Command/Ctrl-3 原始单元格模式
Shift-Escape 离开 Vim 模式
Escape, Ctrl-[ 退出 Vim 插入模式

Jupyter 命令绑定

和弦 动作
G, G 选择第一个单元格
Shift-G 选择最后一个单元格
D, D 删除单元格
Y, Y 复制(剪切)单元格
P 粘贴单元格
Shift-P 在上方粘贴单元格
O 插入单元格
Shift-O 在上面插入单元格
U 撤销单元格动作
Ctrl-E 向下移动单元格
Ctrl-Y 向上移动单元格
Z, Z 居中单元格
Z, C 隐藏代码单元格
Z, O 显示代码单元格
Z, M 隐藏所有代码单元格
Z, R 显示所有代码单元格

特别感谢

来自 @jwkvam

我想感谢 Alisue 以及他创建的出色的 vim 绑定 为 Jupyter 笔记本。我希望这个扩展能够达到他设定的高标准。

@jkwvam 是此扩展的原始作者 - 原始版本可以在 这里 查看。当那个版本没有更新时,首先由 @axelfahy 更新,然后移动到这个社区组织。

贡献

欢迎贡献和反馈!

开发安装

注意:您需要 NodeJS 来构建扩展包。使用 conda 安装时

conda install -c conda-forge nodejs

jlpm 命令是 JupyterLab 随附的 yarn 版本,与 JupyterLab 一起安装。您可以使用 yarnnpm 替代下面的 jlpm

# Clone the repo to your local environment
# Change directory to the jupyterlab_vim directory
# Install package in development mode
pip install -e .
# Link your development version of the extension with JupyterLab
jupyter labextension develop . --overwrite
# Rebuild extension Typescript source after making changes
jlpm run build

您可以在不同的终端中同时监视源目录并运行 JupyterLab,以监视扩展源代码的变化并自动重新构建扩展。

# Watch the source directory in one terminal, automatically rebuilding when needed
jlpm run watch
# Run JupyterLab in another terminal
jupyter lab

在运行监视命令时,每次保存的更改都将立即在本地构建并提供给正在运行的 JupyterLab。刷新 JupyterLab 以在浏览器中加载更改(您可能需要等待几秒钟以重新构建扩展)。

默认情况下,jlpm run build 命令为该扩展生成源映射,以便更容易使用浏览器开发者工具进行调试。要为 JupyterLab 核心扩展也生成源映射,您可以运行以下命令

jupyter lab build --minimize=False

卸载

pip uninstall jupyterlab_vim

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源分发

jupyterlab_vim-4.1.4.tar.gz (153.3 kB 查看哈希值)

上传时间

构建分发

jupyterlab_vim-4.1.4-py3-none-any.whl (67.1 kB 查看哈希值)

上传时间 Python 3

由以下支持