繁体   English   中英

Textmate上的列缩进指南

[英]Column Indentation Guide on Textmate

我想知道Textmate中是否有捆绑软件或偏好设置,以便获得Sublime的白色虚线列定界符。 看截图。

在Textmate中查看此PHP函数

textmate屏幕截图
(来源: darwinsantos.com

现在在Sublime中查看它。

精彩截图
(来源: darwinsantos.com

如果仔细观察,请注意,在Sublime中,大括号的开头和结尾均由白色虚线包围,让您知道两个大括号都在同一列中对齐。

有没有办法在Textmate中获得此功能?

更新(5/2016) :TextMate已获得缩进指南! 从2.0-beta.9.2版本开始, View -> Show Indent Guides 它们正在进行中,但是可以使用。


更新 :如果您能够使此工作正常进行,并且愿意按照官方说明构建您自己的textmate,那么您可能会对我的折叠指南启用的TextMate2版本有所了解(甚至有所贡献)。 没有构建,并且还没有准备好引入TextMate2,因为它缺少禁用指南的设置。


这是开发中的一项功能,完成后它的功能将比我将要描述的更加智能。 新版本最终问世时,将遵循该语言的缩进规则,而不是简单地填充成对的空格/制表符。

就是说,我使用它来确保无数行模板是完美的。

该方法已更新,但其他方面与Cocabits针对Textmate1所述的方法相同。

您最终将得到如下结果: 折叠指南演示 请注意倒数第二行,缺少空白来触发行。 新版本将更接近Sublime的

首先,我们将需要教TextMate如何识别在每一行代码之前使用的制表符和空格。

我创建了折叠指南捆绑包,但这是我第一次给出折叠指南捆绑包 ,我很害怕它对您不起作用,请尝试一下。

如果它不起作用,则需要手动添加这些规则,我将向您展示如何使其成为自己的捆绑软件,但您可以将其直接添加到您喜欢的任何语言中。

从Bundles-> Edit Bundles创建一个包,然后,File-> New,选择bundle并为其命名,然后File-> New并创建一个语法。 语法应具有以下代码:

{   patterns = (
        {   include = '#leading-spaces'; },
        {   name = 'meta.leading-tabs';
            begin = '^(?=\t)';
            end = '(?=[^\t])';
            patterns = (
                {   match = '(\t)(\t)?';
                    captures = {
                        1 = { name = 'meta.odd-tab'; };
                        2 = { name = 'meta.even-tab'; };
                    };
                },
            );
        },
    );
    repository = {
        leading-spaces = {
            begin = '^(?=\s\s)';
            end = '(?=[^\s\s])';
            patterns = (
                {   match = '(\s\s)(\s\s)?';
                    captures = {
                        1 = { name = 'meta.odd-tab'; };
                        2 = { name = 'meta.even-tab'; };
                    };
                },
            );
        };
    };
}

检查员应如下所示:

注入器设置为*的语法

现在我们只需要一个主题规则来匹配“ meta.even-tab”和“ meta.odd-tab”,因此只需将其添加到当前主题即可:

{name = 'Alternating Tabs';
    scope = 'meta.even-tab';
    settings = {
        background = '#232323';
        };
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM