Orgmode中如何结构化移动条目及其下方关联文本?
结构化移动Markdown标题及其下属内容的方法
嘿,这个需求太戳人了!我之前整理文档时也头疼过只移动标题不带内容的问题,其实不同编辑器都有原生或插件支持的结构化移动方案,完全不用靠剪切粘贴,下面分常用工具给你唠唠:
VS Code
- 先把你的Markdown标题语法规范过来(用
##表示二级标题,别用粗体模拟层级,这样编辑器才能正确识别块结构) - 把光标放在目标二级标题行,按
Ctrl+Shift+[(Mac是Cmd+Shift+[)折叠这个标题的下属内容 - 接着用
Alt+Up/Down(Mac是Option+Up/Down)移动整个折叠块,就能连带着标题和下面的文本一起移动了 - 嫌手动折叠麻烦?安装「Markdown All in One」插件,它自带的「Move Section Up/Down」功能,直接快捷键就能搞定整个标题块的移动
Obsidian
Obsidian对Markdown块的原生支持特别友好:
- 把光标放在目标二级标题行,直接用
Ctrl+Shift+Up/Down(Mac是Cmd+Shift+Up/Down),就能自动把这个标题和它下面直到下一个同级/更高层级标题的所有内容一起移动 - 如果是更自定义的小块内容,还可以用
%%包裹创建折叠块,再移动整个块
Emacs(Markdown Mode)
如果你用Emacs写Markdown:
- 默认
markdown-mode里有markdown-move-subtree-up和markdown-move-subtree-down两个命令,专门用来移动整个标题子树(标题+下属内容) - 你可以自己绑定快捷键,比如在配置里加这段代码:
之后用(define-key markdown-mode-map (kbd "<M-up>") 'markdown-move-subtree-up) (define-key markdown-mode-map (kbd "<M-down>") 'markdown-move-subtree-down)M-Up/Down就能直接移动整个块了
通用小提示
一定要用标准的Markdown标题语法(#一级、##二级…),别用粗体模拟层级,这样编辑器才能准确识别哪些内容属于这个标题的下属块,结构化操作才能生效。
内容的提问来源于stack exchange,提问作者Jas
相关产品推荐
相关产品推荐

