Emmet的lorem缩写需同时满足语法模式正确、英文输入法、格式严格(如lorem10无空格)才生效;失效时可手动执行Emmet: Expand Abbreviation验证,或改用FillerText插件在纯文本中通过Ctrl+Alt+L插入。

Sublime Text 本身不提供独立的 lorem 命令,但「输入 lorem + Tab」这个动作在多数场景下能直接生效——前提是 Emmet 插件已启用且当前语法模式兼容。
Emmet 的 lorem 缩写为什么有时没反应?
这不是插件坏了,而是触发条件没凑齐。常见断点有三个:
- 当前文件语法不是 Emmet 支持的类型(比如状态栏显示的是
Plain text或JSON,而不是HTML、CSS或Markdown) - 光标卡在引号内、属性值里或注释中(Emmet 默认不展开这些上下文)
- 输入法处于中文状态,Tab 被系统或输入法劫持(切英文输入再试)
验证方式:打开命令面板 Ctrl+Shift+P → 输入 Emmet: Expand Abbreviation,手动执行一次。如果能出内容,说明是触发方式问题,不是插件失效。
lorem 后面加数字的写法有哪些坑?
Emmet 的 lorem 缩写对格式极其敏感,空格、连字符、大小写都会让它退化为普通文本:
-
lorem10✅ 生成 10 个单词(数字紧贴,无空格) -
lorem 10❌ 变成字面量 “lorem 10”,不会展开 -
lorem-10❌ 同样不识别,Emmet 不支持连字符分隔 -
LOREM10❌ 大写开头不匹配缩写规则
进阶用法如 lorem5*3(3 段 × 5 词)或 p>lorem20(带
包裹)也必须严格按小写+无空格书写,否则只当普通字符串处理。
纯文本/非 HTML 文件里怎么插入?
Emmet 在 Plain text 模式下默认禁用缩写展开,这时有两个可靠路径:
- 临时切换语法:右下角点击语法名 → 选
HTML→ 输入lorem30+ Tab → 再切回原语法(内容保留) - 装
FillerText插件:安装后快捷键 Ctrl+Alt+L(Windows/Linux)或 Cmd+Alt+L(macOS),弹出输入框填数字即可,不依赖语法模式
别用在线生成器复制粘贴——那些文本常含不可见 Unicode 字符(如零宽空格),会破坏 Sublime 的 snippet 行为,导致后续 Tab 展开失灵。
自定义词数或段落结构,改哪?
Emmet 自带的 lorem 不读取用户设置,也不支持运行时参数(比如首字母大写、句末加标点)。真要改,只有两个办法:
- 用
FillerText插件:它虽不支持格式定制,但胜在稳定、离线、不依赖语法 - 直接改
lorem插件源码(如 donaldguy 版):路径在Packages/lorem/lorem.py,搜WORDS = [可替换单词库,改get_paragraph函数可调整包裹标签——但每次插件升级都会覆盖,得 fork 到本地并用Package Control: Add Repository管理
最常被忽略的一点:Emmet 的 lorem 在 Vue/JSX/TSX 文件中可能被语言服务禁用,此时即使语法显示正确,Tab 也无效——这时候别硬调,换 FillerText 或手动切 HTML 语法更省时间。











