XU Quick CodeBlock
approvedby xcloud-ai
Quickly insert code blocks with automatic cursor positioning. Supports custom languages, selection wrapping, hotkey configuration with conflict detection. - This plugin has not been manually reviewed by Obsidian staff.
代码块快捷插入
快捷插入 Markdown 代码块,光标自动定位到块内。支持自定义语言、选中文本一键包裹、快捷键配置与冲突检测,替代 Templater 的代码块模板,无需 Templater 依赖。
English description below for review purposes. / 以下为英文说明,用于过审。
Quickly insert Markdown code blocks with automatic cursor positioning. Supports custom languages, selected text wrapping, hotkey configuration and conflict detection. Replaces Templater code block templates without dependency.
功能特性
- 快捷插入代码块:插入
```lang代码块,光标自动定位到块内空行,直接开始写代码 - 选中文本包裹:选中一段文字,触发命令,自动用代码块包裹
- 自定义语言列表:默认含 python / javascript / bash / shell / sql / json / yaml / go / rust / java / html / css,可自行增删
- 语言选择弹窗:不想记快捷键?用「选择语言」命令弹出列表点选
- 快捷键自定义:在插件设置面板里直接为需要的语言配置快捷键,无需去系统设置里翻
- 快捷键冲突检测:设置快捷键时即时检测是否与其他命令冲突,冲突显示警告并提供跳转入口
- 智能换行:光标前后有内容时自动处理换行,不会粘连到已有文字
Features
- Quick code block insertion with auto cursor positioning
- Selected text wrapping with code block
- Custom language list (default: python, javascript, bash, shell, sql, json, yaml, go, rust, java, html, css)
- Language picker modal for easy selection
- Custom hotkey configuration in plugin settings
- Hotkey conflict detection with jump-to-settings link
- Smart line break handling
安装
方式一:从 Obsidian 社区目录安装(推荐)
- 打开 Obsidian 设置 → 社区插件
- 点击"浏览",搜索 "XU Quick CodeBlock"
- 点击"安装",然后"启用"
方式二:手动安装
- 从 最新 Release 下载
main.js、manifest.json、styles.css三个文件 - 在 vault 中创建目录
.obsidian/plugins/quick-codeblock/ - 将三个文件放入该目录
- 打开 Obsidian 设置 → 社区插件,找到 "XU Quick CodeBlock" 并开启
Installation
From Obsidian Community Directory:
- Open Obsidian Settings → Community Plugins
- Click "Browse" and search for "XU Quick CodeBlock"
- Click "Install", then "Enable"
Manual Installation:
- Download
main.js,manifest.json,styles.cssfrom the latest release - Put them in
<vault>/.obsidian/plugins/quick-codeblock/ - Enable in Settings → Community Plugins
使用方法
插入代码块
Ctrl+P打开命令面板,搜索「插入代码块」- 选择对应语言的命令(如「插入代码块(python)」)
- 无选中文本时:插入空代码块,光标自动定位到块内
- 有选中文本时:用
```lang包裹选中的内容
配置快捷键
- 打开插件设置(设置 → 社区插件 → XU Quick CodeBlock → 选项)
- 在「快捷键设置」区域,默认有一项(python)
- 点击「+ 添加快捷键配置」增加新项
- 每项可选择语言(dropdown)+ 设置快捷键 + 删除
- 点击快捷键输入框,按下组合键即可设置;按
Backspace或Esc清除 - 设置后自动检测冲突,有冲突会显示红色警告和「前往修改」链接
Usage
- Press
Ctrl+Pto open command palette, search for "Insert code block" - Select the language command (e.g. "Insert code block (python)")
- Without selection: inserts empty code block with cursor inside
- With selection: wraps selected text with
```lang
Hotkey Configuration
- Open plugin settings (Settings → Community Plugins → XU Quick CodeBlock → Options)
- Default has one item (python), click "+ Add" to add more
- Each item: select language (dropdown) + set hotkey + delete
- Click hotkey input, press key combination to set; press
BackspaceorEscto clear - Auto conflict detection with red warning and "Go to settings" link
替代 Templater
如果你之前用 Templater 的代码块模板(如 codepython.md),本插件完全覆盖该功能:
| Templater | 本插件 | |
|---|---|---|
| 依赖 | 需要 Templater 插件 | 无依赖 |
| 插入 ```python + 光标定位 | tp.file.cursor() | 自动计算行号定位 |
| 多语言 | 要写多个模板 | 一个插件搞定 |
| 选中文本包裹 | 不支持 | 支持 |
| 快捷键管理 | 不支持 | 内置配置 + 冲突检测 |
设置说明
| 设置项 | 说明 |
|---|---|
| 默认语言 | 主命令「插入代码块」使用的语言 |
| 语言列表 | 每行一个,为每个语言注册独立命令 |
| 保留选中内容缩进 | 选中文本包裹时是否保留原有缩进 |
| 快捷键设置 | 为需要的语言配置快捷键(默认一项,可自行添加) |
命令列表
| 命令 | 作用 |
|---|---|
| 插入代码块(python) | 主命令,用默认语言 |
| 插入代码块(选择语言) | 弹出列表选择语言 |
| 插入代码块(javascript) | 每个预设语言各一个命令 |
| ... | 语言列表里的每个语言都会注册 |
技术说明
- 纯 JavaScript 实现(
main.js),无需编译,直接可用 main.ts为 TypeScript 源码参考,供二次开发使用- 快捷键通过
hotkeyManager.setHotkeys绑定,与 Obsidian 系统快捷键互通 - 卸载插件时自动清除快捷键绑定,保持
hotkeys.json干净
许可证
MIT License - Copyright (c) 2026 旭说云原生
For plugin developers
Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.