6

Apple 的示例项目除了类型规范/通用代码缩进外,通常还对齐变量名称:

  NSUInteger        level;
  double            fadeSpeed;
  CGPoint           ballPosition;
  int               keyOffset;

相对于:

  NSUInteger level;
  double fadeSpeed;
  CGPoint ballPosition;
  int keyOffset;

有没有捷径可以做到这一点?(我不知道它会叫什么,否则我可以在文档中搜索它。)

4

4 回答 4

3

听起来您正在寻找Uncrustify。我自己并没有在愤怒中使用它,但功能列表似乎包括您的要求:

特征

  • 标识代码,对齐括号,分配等
  • 对齐 '=' 和变量定义
  • 对齐结构初始化器
  • 对齐 #define 东西
  • 对齐反斜杠换行符
  • 重新格式化评论(一点点)
  • 修复字符间距
  • 在 return 语句中添加或删除括号
  • 在单语句 if/do/while/for 语句上添加或删除大括号
  • 支持嵌入式 SQL 'EXEC SQL' 东西
  • 高度可配置 - 自 0.59 版起有 412 个可配置选项
于 2012-05-28T13:57:48.713 回答
1

流行的漂亮打印机uncrustify至少有十几个不同的可变对齐参数,您可以在其配置文件中指定它们。Tony Arnold 的项目向您展示了如何将其uncrustify用作自动化服务(这意味着您可以从 Xcode 或任何其他编辑器访问它)。Robert Payne 建议从可以合并到构建过程中的 shell 脚本中使用它。

我的猜测是,Appleuncrustify在发布之前通过或其他一些漂亮的打印机运行它的示例,以便它们都使用通用样式进行格式化。如果您想完全复制 Apple 的风格,可能需要一些麻烦,但至少应该很容易让您的变量声明以您想要的方式对齐。自从我使用所有选项以来已经有一段时间了,但我会先查看align_var_def_spanalign_var_def_threshalign_var_def_gap设置。

于 2012-05-28T13:56:34.577 回答
0

我不知道是否已经有一个快捷方式,但是您可以创建一个程序,它接受一个大字符串作为输入(变量),输出将是这个的对齐版本。编写这个程序应该不会引起太多问题。

于 2012-05-28T13:19:12.100 回答
-1

Xcode 中没有内置函数可以自动执行此操作,但是您可以轻松地将变量名与tab. 您必须tab在键入多次后按并对齐到相同的宽度。

于 2012-05-28T13:32:06.203 回答