RegX 发布,专治代码强迫症的 Xcode 插件

简介:

RegX 是一款非常实用的 Xcode 插件,由中国的 iOS/Mac 开发者 Lex Tang 使用 Swift 和 Objective-C 编写。其用于对齐特定源代码的元素,使得代码更易读和易理解。你可以在这里获取源码。

screenshot

###安装:

  1. $ git clone git@github.com:kzaher/RegX.git
  2. 在 Xcode 中构建(构建方案会自动将编译好的插件 bundle 安装到 Xcode 能够找到的地方
  3. 重启 Xcode

如果 RegX 没有正常工作,请检查一下启动 Xcode 时 Console.app 中的输出信息,并且找到错误消息。这有可能是因为你的 Xcode 版本的 DVTPlugInCompatibilityUUID 还没有被指定在 >> Info.plist 文件。为了解决该问题,请向 Info.plist 文件中添加 DVTPlugInCompatibilityUUID 条目。

RegX 如何工作?

RegX 使用正则表达式对列中的文本进行分组,然后对齐这些列。每个正则表达式分组都会创建一个垂直对齐的列。你可以自己为列指定额外的设置。

定制

所有正则表达式以及针对正则表达式的设置都被定义在名为 Configuration.swift 的文件中。

比如:

static let assignments = "^" +
        "   (?# lvalue GROUP)" +
        "       ([^=]*)" +
        "   (?# = GROUP)" +
        "       (\\=) " +
        "   (?# expression GROUP)" +
        "       ((?:[^/] | (?:/(?!/)) )*)" +
        "   (?# comments GROUP)" +
        "       (//.*)?" +
        "$"
RegularForm(name: "Assignments",                            // name in Edit -> RegX menu
         pattern: Patterns.assignments,                     // grouping regular expression
        shortcut: String(UnicodeScalar(NSF4FunctionKey)),   // shortcut key
        modifier: NSEventModifierFlags.CommandKeyMask,      // shortcut modifier
        settings: [                                         // each setting controls start and end padding
                GroupSettings(nil, 0),                      // nil means keep existing padding
                GroupSettings(1,   1),                      // value means ensure padding
                GroupSettings(0,   0),
                GroupSettings(1,   0),
            ]
        )

文章转载自 开源中国社区 [http://www.oschina.net]

相关文章
|
Web App开发 JavaScript iOS开发
Xcode9用Safari调试模拟器JS代码显示“无可检查的应用程序”的原因
Xcode9用Safari调试模拟器JS代码显示“无可检查的应用程序”的原因
1132 0
|
iOS开发
Xcode插件
Xcode插件
733 0
Xcode插件
|
iOS开发 开发者
iOS开发- 注释插件VVDocumenter-Xcode in Xcode8
iOS开发- 注释插件VVDocumenter-Xcode in Xcode8
93 0
iOS开发- 注释插件VVDocumenter-Xcode in Xcode8
|
iOS开发 开发者
iOS开发-新版Xcode在Appdelegate中通过代码控制跳转,不使用系统默认跳转到默认ViewController
iOS开发-新版Xcode在Appdelegate中通过代码控制跳转,不使用系统默认跳转到默认ViewController
265 0
iOS开发-新版Xcode在Appdelegate中通过代码控制跳转,不使用系统默认跳转到默认ViewController
|
IDE API 开发工具
Xcode低版本运行高版本代码的适配问题
最近升级到Xcode13后,发现机子发热量过大,卡顿量,于是做好适配iOS15后,再安装Xcode12,把Xcode12作为开发IDE
403 0
|
iOS开发
iOS 统计Xcode项目代码行数
iOS 统计Xcode项目代码行数
294 0
|
IDE Apache 开发工具
盘点开发者最喜爱的十大开源Xcode插件
Xcode IDE拥有着诸如导航、重构、校准等众多非常高大上的工具,而予以辅助的插件更是在Xcode的基础上对相关功能进行改进与扩展。在应用开发过程中,通过开源包管理器Alcatraz对插件进行安装管理,打造最为强大的开发环境,早已成为开发者们的必备功课。本文总结介绍了备受开发者喜爱的10款开源Xcode插件,涉及代码编辑、注释、管理等各个方面。
896 0
盘点开发者最喜爱的十大开源Xcode插件
|
iOS开发 开发者
Code Pilot:一个键人必备的 Xcode 插件
Code Pilot是一个Xcode的扩充套件,可以让开发者更快的找到之前曾写过的代码,并拿出来重复使用。在之前,Code Pilot是一套价值14.95美元的产品。最近Code Pilot CEO Zbigniew Sobieck不仅宣布解决了Code Pilot在Xcode5上面的使用问题,也把Code Pilot的代码开源了,让更多的开发者可以改进这个套件并增强其功能。它使用模糊查询匹配(fuzzy query matching)去计算出一个根据相关性排序好结果列表;通过少许的按键你就可以跳到你想要查找的方法了。
1918 0
Code Pilot:一个键人必备的 Xcode 插件
|
网络安全 开发工具 git
|
iOS开发
Xcode断点没有跳到断点的代码行
不知道是什么原因改变设置了,打断点时没有自动跳到断点的代码行上。 打一个断点 结果跳到了debug视图(汇编代码) 解决办法: Always Show Disassemly 取消Always Show Disassemly 跳到代码行 Always Show Disassemly  这玩意是什么,汇编看来不学是用不到了 - 如果有什么疑问,可以在评论区一起讨论; - 如果有什么不正确的地方,欢迎指导! > 注:本文首发于iHTCboy's blog,如若转载,请注明来源。
1310 0