如何在VSCode中使用KX插件运行kdb
0 安装 q/kdb+
在使用VScode这个壳成功调用q/kdb之前,你需要先明白三层东西:
q/kdb+ 本体 -> 真正执行 q 代码,q.exe 是真正的 kdb/q 解释器。所有 q 代码最终都要在它里面跑。
VS Code -> 编辑器
KX kdb 插件 -> 让 VS Code 能写 q、运行 q、打开 .kxnb
KX 插件不是 q 本体。必须先有 q.exe,插件才能运行 q 代码。所以第一步是安装q,就像你先安装python之后才能使用jupyter notebook或者VScode等IDE去调用它一样。
你需要去 KX 官网下载 kdb+ Personal Edition 或你已有的公司版本。关于qstudio和jupyterq的IDE不建议使用,可以参考下文直接在VSCode中使用KX的kxnb进行调用,我个人感觉稳定性好、更方便调用(因为不要每一次都开端口)并且能够在VSCode中运行,你甚至可以在你的python项目中嵌套使用q。
在安装好q之后你可以进行尝试,打开 PowerShell,运行:
q
如果成功,会进入:
q)
然后输入:
1+2
应该返回:
3
退出 q:
\\
也可以检查版本:
@('.z.K', '.z.k', '.z.o', '\\') | q -q
正常会看到版本、构建日期和平台。
1 安装 VS Code
安装 VS Code,这一步就不说了。
2 安装 KX 插件
在 VS Code Extensions 里搜索:
KX kdb

0 安装 q/kdb+
在使用VScode这个壳成功调用q/kdb之前,你需要先明白三层东西:
q/kdb+ 本体 -> 真正执行 q 代码,q.exe 是真正的 kdb/q 解释器。所有 q 代码最终都要在它里面跑。
VS Code -> 编辑器
KX kdb 插件 -> 让 VS Code 能写 q、运行 q、打开 .kxnb
KX 插件不是 q 本体。必须先有 q.exe,插件才能运行 q 代码。所以第一步是安装q,就像你先安装python之后才能使用jupyter notebook或者VScode等IDE去调用它一样。
你需要去 KX 官网下载 kdb+ Personal Edition 或你已有的公司版本。这个步骤你可以借鉴 https://hackmd.io/@keepwith/rki5Qh2NWl, 你可以只借鉴安装q的内容,关于qstudio和jupyterq的IDE不建议使用,可以参考下文直接在VSCode中使用KX的kxnb进行调用,我个人感觉稳定性好、更方便调用(因为不要每一次都开端口)并且能够在VSCode中运行,你甚至可以在你的python项目中嵌套使用q。
在安装好q之后你可以进行尝试,打开 PowerShell,运行:
q
如果成功,会进入:
q)
然后输入:
1+2
应该返回:
3
退出 q:
\\
也可以检查版本:
@('.z.K', '.z.k', '.z.o', '\\') | q -q
正常会看到版本、构建日期和平台。
1 安装 VS Code
安装 VS Code,这一步就不说了。
2 安装 KX 插件
在 VS Code Extensions 里搜索:
KX kdb

它支持:
.q语法高亮- q 代码运行
- q REPL
- KX Notebook:
.kxnb - 连接本地或远程 q 进程
- 查询结果表格显示
你不需要装一些其他的旧的 vscode-q / vscode-kdb-q。当前更推荐官方 KX 插件。说这一点的目的是在安装py环境时候环境激活、语法高亮和语言本身三个在vscode中是分开的。
3 用KX运行.q文件
新建一个文件:
test.q
写入:
show 1+2;
show .z.K;
3.1 用命令行运行一整个文件
这个在(base) PS E:\XXX\L2数据拆分与透视> 下面如何用命令行运行0_kdb_setup\test.q?
q .\0_kdb_setup\test.q
3.2 使用运行插件运行整个文件或者部分代码段
这个和qstudio类似,但是我觉得前端设计比qstudio好看😁
你可以选择运行整个文件,或者滑动选中一些代码段,然后点击部分运行。相关的结果如下:
4 用 .kxnb Notebook 运行代码
这是我偏爱的方式运行代码,因为kdb本身带有交互的性质,所以使用类似于jupyter notebook的IDE我认为更可以清晰的展示出数据处理的流程。
命令面板:
Ctrl + Shift + P
搜索:
KX: New Notebook
或者打开已有:
*.kxnb
在 q cell 里写:
1+2
运行 cell。
KX 插件能在使用的时候自动找到找到 q.exe,它可以自动启动本地 q REPL,所以你可能不需要手动连接 q -p 5000。这比在命令行或者qstudio中每次都要开启端口方便多了。
5 什么时候需要开启端口连接 q -p 5000
普通 notebook 开发不一定需要。
只有当你想要一个长期运行、明确可连接的 q 服务时,才启动:
q -p 5000
你需要在 KX 插件 Connections 里添加:
Type: My q
Server Name: local5000
Address: localhost
Port: 5000
Username: 留空
Password: 留空
TLS: 不勾
这种方式适合:
- 多个文件共享同一个 q session
- 手动管理长期变量和表
- 连接远程 kdb
- 让别的程序通过 IPC 连接 q
如果只是写 .kxnb 学习和开发,先不用它。
在连接的时候你只需要右击connections中的connect sever即可。
它支持:
.q语法高亮- q 代码运行
- q REPL
- KX Notebook:
.kxnb - 连接本地或远程 q 进程
- 查询结果表格显示
你不需要装一些其他的旧的 vscode-q / vscode-kdb-q。当前更推荐官方 KX 插件。说这一点的目的是在安装py环境时候环境激活、语法高亮和语言本身三个在vscode中是分开的。
3 用KX运行.q文件
新建一个文件:
test.q
写入:
show 1+2;
show .z.K;
3.1 用命令行运行一整个文件
这个在(base) PS E:\XXX\L2数据拆分与透视> 下面如何用命令行运行0_kdb_setup\test.q?
q .\0_kdb_setup\test.q
3.2 使用运行插件运行整个文件或者部分代码段
这个和qstudio类似,但是我觉得前端设计比qstudio好看😁
你可以选择运行整个文件,或者滑动选中一些代码段,然后点击部分运行。相关的结果如下:
4 用 .kxnb Notebook 运行代码
这是我偏爱的方式运行代码,因为kdb本身带有交互的性质,所以使用类似于jupyter notebook的IDE我认为更可以清晰的展示出数据处理的流程。
命令面板:
Ctrl + Shift + P
搜索:
KX: New Notebook
或者打开已有:
*.kxnb
在 q cell 里写:
1+2
运行 cell。
KX 插件能在使用的时候自动找到找到 q.exe,它可以自动启动本地 q REPL,所以你可能不需要手动连接 q -p 5000。这比在命令行或者qstudio中每次都要开启端口方便多了。
5 什么时候需要开启端口连接 q -p 5000
普通 notebook 开发不一定需要。
只有当你想要一个长期运行、明确可连接的 q 服务时,才启动:
q -p 5000
你需要在 KX 插件 Connections 里添加:
Type: My q
Server Name: local5000
Address: localhost
Port: 5000
Username: 留空
Password: 留空
TLS: 不勾
这种方式适合:
- 多个文件共享同一个 q session
- 手动管理长期变量和表
- 连接远程 kdb
- 让别的程序通过 IPC 连接 q
如果只是写 .kxnb 学习和开发,先不用它。
在连接的时候你只需要右击connections中的connect sever即可。
更多推荐
所有评论(0)