Sublime Text中利用Custom Layouts定制视界

阿丽酱_4895

阿丽酱_4895

2026-07-24

283人浏览

原创

sublime text的custom layouts需手动编写json并绑定快捷键实现,其核心是cols、rows和cells三字段定义网格结构,其中cols和rows为归一化边界数组,cells按索引顺序指定各group占据区域,绑定set_layout命令后需配合move_to_group命令或拖拽将文件移入对应group。

sublime text中利用custom layouts定制视界

Sublime Text 的 Custom Layouts 不是“一键保存预设”功能,而是靠手动编辑 JSON 布局结构 + 快捷键绑定实现的可复用视图配置。它真正生效的前提是你理解 layout 字段的语义,且不依赖 UI 菜单自动记录——菜单里的 Columns / Grid 只是固定模板,无法保存你拖拽调整后的非对称比例或嵌套结构。

怎么写出能用的 custom layout JSON

Sublime 的布局本质是行列嵌套的网格系统,colsrows 定义边界坐标(归一化值,0.0 到 1.0),cells 描述每个 group 占据的矩形区域。写错一个数字,窗口就可能空白或重叠。

  • cols 必须至少含 2 个值(如 [0.0, 0.5, 1.0] 表示两列),rows 同理([0.0, 1.0] 是单行)
  • cells 每个元素是 [left_col_index, top_row_index, right_col_index, bottom_row_index],索引从 0 开始,例如 [0, 0, 1, 1] 占左上角第一个格子
  • 常见错误:把 cols 写成 [0, 0.6, 1] 却只定义 2 个 cells,导致第三列无 group 显示 —— 实际需要 3 个 cells 才能填满
  • 示例(三列不等宽 + 底部横跨全宽的 group):
    {
      "cols": [0.0, 0.35, 0.7, 1.0],
      "rows": [0.0, 0.7, 1.0],
      "cells": [
        [0, 0, 1, 1],  // 左列
        [1, 0, 2, 1],  // 中列
        [2, 0, 3, 1],  // 右列
        [0, 1, 3, 2]   // 底部横条
      ]
    }

如何把 layout 绑定到快捷键快速调用

Sublime 不提供“保存当前布局”按钮,但可通过命令 set_layout 注入 JSON。直接改 key bindings 是最稳定的方式,避免插件冲突或命令面板延迟。

Sublime Text Build Linux版
Sublime Text Build Linux版

Sublime Text Linux x86-64 deb 安装包。官方也提供 rpm、tar.xz 和软件源安装方式。

下载
  • 打开 Preferences → Key Bindings(用户侧)
  • 添加一条绑定,例如:
    [
      {
        "keys": ["ctrl+alt+shift+3"],
        "command": "set_layout",
        "args": {
          "cols": [0.0, 0.35, 0.7, 1.0],
          "rows": [0.0, 0.7, 1.0],
          "cells": [[0, 0, 1, 1], [1, 0, 2, 1], [2, 0, 3, 1], [0, 1, 3, 2]]
        }
      }
    ]
  • 注意:set_layout 命令不会自动移动已有文件到新 group —— 它只重绘窗格,文件仍留在原 group。需后续用 move_to_group 或拖拽补位
  • Mac 用户记得把 ctrl 换成 super(即 cmd),否则快捷键无效

拖拽文件进自定义 group 时为什么没反应

不是 Sublime 卡了,而是焦点和目标区域识别有隐含规则:只有当鼠标悬停在 group 顶部 10px 区域并出现蓝色插入线时,拖拽才被接受。松手位置偏差哪怕 2px,文件就会回退到原 group 或关闭。

  • 更可靠的方式是用命令:Ctrl+Shift+P → 输入 Move File to Group → 选目标 group 编号(从 0 开始)
  • group 编号顺序 = cells 数组索引顺序,不是视觉从左到右。比如上面 JSON 中 [0, 0, 1, 1] 是 group 0,[0, 1, 3, 2] 是 group 3
  • 如果拖入后发现两个 group 里同时开着同一文件,那是正常行为 —— Sublime 允许同一文件在多个 group 中独立编辑,但保存时以最后聚焦的 tab 为准
  • 状态栏左下角显示 Group: X 才代表当前焦点在该 group;没显示说明焦点还在别的 group,此时快捷键操作(如 Ctrl+S)会作用于隐藏的 tab

Custom Layouts 的复杂点不在语法,而在布局与文件归属的解耦:JSON 控制“窗格怎么画”,而文件在哪由焦点和显式移动决定。忽略这点,就会陷入“布局变了但文件没过去”的困惑。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

sublime text sublime

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
AI视频生成软件推荐
AI视频生成软件推荐

本专题汇总了当前主流的AI视频生成软件推荐与排行榜单,涵盖seko、AniShort、剧云、Lovart、LiblibAI及立刻mv等热门工具。同时整理了各软件在文生视频、图生视频、时长限制、画质表现及免费额度等方面的差异对比,助您快速选对适合创作需求的AI视频生成工具。

2026.09.16

140

9

ai生成视频的工具免费版合集
ai生成视频的工具免费版合集

本专题汇总了当前免费AI生成视频工具的排行榜与推荐清单,涵盖seko、讯飞智作、AniShort及剧云、Lovart等多模型集成平台。同时整理了各工具的免费额度、输出时长、水印政策及适用场景差异,助您快速选择合适工具开启AI视频创作。

2026.09.16

60

10

Pandas时间序列分析与可视化报表
Pandas时间序列分析与可视化报表

本专题整理Pandas日期转换、时间索引、重采样、滚动窗口、时区处理、plot绘图、Styler表格样式和报表输出方法。

2026.09.16

60

23

Pandas数据筛选索引与清洗处理
Pandas数据筛选索引与清洗处理

本专题整理Pandas中的loc、iloc、条件筛选、query查询、缺失值处理、重复值删除、类型转换和字符串列清洗方法。

2026.09.16

40

25

Pandas数据读取导入与文件导出处理
Pandas数据读取导入与文件导出处理

本专题整理Pandas读取CSV、Excel、JSON、SQL、Parquet等文件的方法,以及to_csv、to_excel、to_sql和to_parquet等常用数据导出流程。

2026.09.16

40

27

GDB怎么设置断点
GDB怎么设置断点

本专题介绍GDB按照函数名、源代码行号和文件位置设置断点的方法,详细说明run、continue、next、step等命令的配合使用,帮助定位程序崩溃、逻辑异常及代码未按预期执行的问题。

2026.09.11

360

28

GDB怎么查看变量值
GDB怎么查看变量值

本专题介绍GDB调试过程中查看变量值的具体方法,涵盖局部变量、函数参数、数组、结构体和指针内容查询,同时整理变量持续显示、格式化输出及无法读取变量时的排查思路。

2026.09.11

120

22

GDB C++程序怎么调试
GDB C++程序怎么调试

本专题围绕GDB调试C++程序的实际过程,详细说明程序编译、调试器启动、命令行参数传入、断点命中和程序继续运行等步骤,并介绍条件断点、临时断点和观察点的设置方法,方便开发者跟踪复杂代码的执行状态。

2026.09.11

120

20

Iris框架MVC架构与依赖注入合集
Iris框架MVC架构与依赖注入合集

本专题讲解Iris框架MVC开发模式,包含控制器注册、方法命名与路径映射、By参数绑定、BeforeActivation自定义路由,以及依赖注入容器注册、数据库依赖注入、返回值序列化及MVC下WebSocket与gRPC整合实践。

2026.09.11

80

15

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程