新闻中心
sublime的配色方案(.tmTheme)文件怎么制作_sublime颜色主题文件结构与编写
Sublime Text的.tmTheme配色方案基于XML格式,定义语法高亮颜色与样式。根节点为,包含主题元信息(如name、author)和settings数组,后者通过scope匹配语法元素并设置foreground、background、fontStyle等属性。使用Scope Hunter或快捷键查看作用域,结合PackageDev插件辅助编写,参考现有主题可高效创建协调的自定义主题。

Sublime Text 的配色方案(.tmTheme)文件是基于 XML 格式的,用于定义编辑器中语法高亮的颜色、背景、字体样式等。制作一个 .tmTheme 颜色主题并不复杂,但需要理解其结构和颜色命名规则。
1. tmTheme 文件基本结构
一个典型的 .tmTheme 文件是一个属性列表(plist),使用 XML 编写,遵循 Apple 的 NSPropertyList 格式。根节点是 <plist></plist>,包含一个字典 <dict></dict>,其中定义了主题的元信息和颜色规则。
基本结构如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>name</key>
<string>My Custom Theme</string>
<key>author</key>
<string>Your Name</string>
<key>comment</key>
<string>A custom dark theme for Sublime Text.</string>
<key>gutterSettings</key>
<dict>
<key>background</key>
<string>#282C34</string>
<key>divider</key>
<string>#3E4451</string>
</dict>
<key>settings</key>
<array>
<dict>
<key>settings</key>
<dict>
<key>background</key>
<string>#282C34</string>
<key>caret</key>
<string>#FFFFFF</string>
<key>foreground</key>
<string>#ABB2BF</string>
<key>lineHighlight</key>
<string>#3E4451</string>
<key>selection</key>
<string>#3E4451</string>
<key>inactiveSelection</key>
<string>#3E4451</string>
<key>selectionBorder</key>
<string>#3E4451</string>
<key>findHighlight</key>
<string>#528BFF</string>
<key>findHighlightForeground</key>
<string>#FFFFFF</string>
</dict>
</dict>
<pre class="brush:php;toolbar:false;"> <!-- 语法作用域着色规则 -->
<dict>
<key>name</key>
<string>Keyword</string>
<key>scope</key>
<string>keyword</strin
g>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#C678DD</string>
<key>fontStyle</key>
<string>bold</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>String</string>
<key>scope</key>
<string>string</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#98C379</string>
</dict>
</dict>
<!-- 更多规则... -->
</array>
2. 关键字段说明
理解以下核心部分有助于自定义主题:
- name:主题显示名称
- author:作者名(可选)
- comment:备注说明
- gutterSettings:侧边行号栏背景与分隔线颜色
- settings(全局设置):定义编辑器基础颜色,如背景、光标、选中区域等
-
settings 数组中的 dict:每个条目对应一条语法着色规则,通过
scope匹配代码中的元素
3. Scope(作用域)系统详解
Sublime 使用 TextMate 的作用域命名系统 来识别不同语法元素。例如:
Machine Translation
聚合多个来源的AI翻译
49
查看详情
-
keyword:语言关键字(如 if, for, return) -
string:字符串 -
comment:注释 -
constant.numeric:数字常量 -
entity.name.function:函数名 -
variable:变量
你可以使用 Sublime 自带的 Scope Hunter 插件或按下 Ctrl+Alt+Shift+P 查看当前光标位置的作用域路径。
4. 颜色与样式设置
在每条规则的 settings 字典中可以设置:
- foreground:文字颜色(十六进制,如 #FF0000)
- background:背景色(慎用,可能影响可读性)
-
fontStyle:字体样式,可选:
bold、italic、underline,多个用空格分隔,如bold italic
示例:
<key>settings</key>
<dict>
<key>foreground</key>
<string>#E06C75</string>
<key>fontStyle</key>
<string>bold</string>
</dict>
5. 创建与测试主题文件
步骤如下:
- 新建一个文件,保存为
MyTheme.tmTheme - 放入 Sublime 的 Packages/User 目录:
路径一般为:
Windows:%APPDATA%\Sublime Text\Packages\User\
macOS:~/Library/Application Support/Sublime Text/Packages/User/
Linux:~/.config/sublime-text/Packages/User/ - 重启 Sublime 或使用 Preferences → Color Scheme 中选择你的主题
- 编辑时可用 View → Developer → Show Scope Name 实时调试作用域
6. 推荐工具与技巧
- 使用 PackageDev 插件辅助编写 .tmTheme,支持语法高亮和自动补全
- 参考现有主题(如 Monokai、Solarized)学习常见 scope 的使用方式
- 颜色建议使用一致的调色板,保持视觉协调
- 避免在深色主题中使用过亮的背景,防止“发光”效果
基本上就这些。掌握作用域和颜色映射后,你可以逐步构建出符合自己审美的主题。不复杂但容易忽略细节。
以上就是sublime的配色方案(.tmTheme)文件怎么制作_sublime颜色主题文件结构与编写的详细内容,更多请关注其它相关文章!
# 自定义
# 营销推广优投模式有哪些
# 嘉兴网站建设推广免费咨询
# 长春新网站建设费用标准
# 虚开营销推广费怎么算的
# 用博客推广网站
# 山东网站拓客优化排名
# 地方社区seo优化
# 日照推广互联网营销
# 下拉关键词排名就择mars赞
# 湖里seo优化电话
# 如何将
# 一键
# 设置为
# 行号
# 可选
# linux
# 省时省力
# 多个
# 你可以
# 编辑器
# 作用域
# apple
# win
# macos
# ai
# mac
# 工具
# app
# windows
# sublime
# word
相关栏目:
【
科技资讯46185 】
【
网络学院92790 】
相关推荐:
React Router 嵌套组件中 URL 重定向问题的解决方案
Composer如何处理Git子模块(submodule)依赖_Composer与Git Submodule的对比与选择
如何在离线环境中使用Composer_Composer离线安装依赖包的技巧与策略
J*a递归快速排序中静态变量导致数据累积问题的解决方案
Go语言中动态执行代码字符串的策略与实践
KFC游戏互动怎么赢取优惠券_KFC线上游戏活动参与与优惠代码赢取教程
Python大型XML文件高效流式解析教程
vivo浏览器自带的下载器速度慢怎么办 vivo浏览器提升文件下载速度的技巧
中兴BladeV30怎样用测距估书架层高_iPhone中兴BladeV30测距估书架层高【家装参考】
sublime怎么预览Markdown渲染效果_Markdown Preview插件 for sublime教程
单12V-2×6实现为RTX 5090供电750W!甚至都没敢跑分
如何提高微信支付的安全性_微信支付安全防护与设置建议
网易大神怎么保存别人动态的图片_网易大神动态图片保存方法
夸克浏览器桌面版同步不了书签怎么处理 夸克浏览器跨设备同步异常解决方案
优化HTML表单样式:解决输入框焦点跳动与元素间距问题
百度浏览器字体显示异常偏小_百度浏览器字体渲染修复方案
谷歌邮箱注册显示错误Gmail服务器异常与延迟处理
Yandex搜索引擎官方地址 俄罗斯网络世界的主要入口
小红书怎么解除第三方平台绑定_小红书多平台登录解绑方法介绍
微信网页版官方入口教程 微信网页版网页版快速登录步骤
必由学官方登录入口 必由学教师学生账号快速访问
抓大鹅解压小游戏 抓大鹅摸鱼解压入口
如何使用Node.js csv 包按条件移除含空字段的CSV记录
Win11怎么设置鼠标指针速度_Win11提高鼠标指针精确度选项
腾讯QQ邮箱官方网站_QQ邮箱网页版在线登录
c++如何实现单例设计模式_c++线程安全的单例模式写法
怎样更改Windows系统的默认安装路径_避免C盘爆满的终极设置【技巧】
uc浏览器网页版入口 uc浏览器网页版最新网址
从J*aScript对象中精确提取指定属性的教程
腾讯视频怎么使用多账号家庭管理_腾讯视频家庭多账号统一管理与权限分配教程
韩剧圈正版入口页面_韩剧圈官网登录链接
微信怎么把收藏的内容分类管理 微信收藏内容标签分类方法
Spyder启动失败:字体文件权限拒绝错误解决方案
UC浏览器官网入口2025最新 UC浏览器网页版正式地址
2026年CSGO开箱网站推荐 CSGO开箱平台精选
J*aScript Promise链中如何正确终止后续.then执行并处理错误
windows10怎么关闭系统提示音_windows10彻底静音设置方法
AO3官方镜像站点汇总 AO3同人作品网页版直达链接
Python字典中优雅地迭代剩余元素的方法
冬*霸灯泡不亮怎么办_浴霸取暖灯一盏不亮的灯座清洁修复法
如何有效阻止外部脚本意外修改内联样式的高度属性
Win11蓝牙耳机断连怎么解决 Win11蓝牙设置重新配对与驱动更新【技巧】
海量存储:机器视觉智能化的核心基石
126邮箱账号注册 电脑版登录入口
在Typer应用中优雅地处理和重组任意命令行参数
qq游戏免费畅玩入口_qq游戏电脑版快速启动
我的世界官方游戏入口 我的世界官网平台直达链接
J*aScript生成器_j*ascript异步迭代
蛙漫漫画免费阅读入口_蛙漫官方正版无广告纯净版
qq游戏大厅官方下载_qq游戏免费下载安装入口


2025-12-02
浏览次数:次
返回列表
g>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#C678DD</string>
<key>fontStyle</key>
<string>bold</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>String</string>
<key>scope</key>
<string>string</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#98C379</string>
</dict>
</dict>
<!-- 更多规则... -->
</array>