Xcode 4 在新行上带有左大括号

2024-03-24

似乎新的 Xcode 4 不适用XCCodeSenseFormattingOptions不再了。至少对于我来说 :(

不管怎样,你知道如何将左大括号放在新行中以在 Xcode 4 中自动完成吗?我曾经在终端中输入此内容,但它不适用于新的 Xcode。

defaults write com.apple.Xcode XCCodeSenseFormattingOptions -dict BlockSeparator "\\n" PreMethodDeclSpacing ""

XCode 4 使用“代码片段”进行自动完成,并附带一个内置的代码片段库:您可以通过单击{ }库窗格中的图标,该图标可能位于 XCode 主窗口的右下角。

XCode 4 的所有内置代码片段都将左大括号与语句放在同一行 - 这是 XCode 4 的代码片段if声明,例如:

if (<#condition#>) {
  <#statements#>
}

因此,如果您希望 XCode 4 像这样自动完成:

if (<#condition#>) 
{
  <#statements#>
}

...然后您必须相应地编辑代码片段。这反过来又导致两个问题:

  1. XCode 4 中内置了 44 个代码片段,您必须单独编辑每个代码片段。
  2. XCode 4 不允许您编辑内置代码片段。

这些问题比简单的问题更具挑战性defaults write在 XCode 3 中有效的命令 – 但它是possible,如果您有决心并且可以编辑属性列表,深入研究 XCode 4 的内部并一一更改这些代码片段。

/Developer/Library/Xcode/PrivatePlugIns/IDECodeSnippetLibrary.ideplugin/Contents/Resources/SystemCodeSnippets.codesnippets包含 XCode 4 的内置代码片段库。这可能是不言而喻的,但您应该在充电和进行编辑之前备份该文件 - 之后您应该进行另一个备份,并留出一份包含新的和改进的代码片段的文件副本,因为您将几乎肯定会覆盖的内容/Developer/Library/Xcode当您安装 XCode 4 的下一版本时。(Apple 也有可能会更改此文件的格式、添加新的代码片段或执行任何其他可能导致此答案无效的操作。)

如果您直接从 App Store 安装了 Xcode 4.3 或更高版本,则所有内容都位于 Xcode.app 捆绑包内。 SystemCodeSnippets.codesnippets 的路径是/Applications/Xcode.app/Contents/PlugIns/IDECodeSnippetLibrary.ideplugin/Contents/Resources/SystemCodeSnippets.codesnippets.

不管怎样,你会发现上面的文件包含几个像这样的条目:

<dict>
    <key>IDECodeSnippetVersion</key>
    <integer>1</integer>
    <key>IDECodeSnippetCompletionPrefix</key>
    <string>if</string>
    <key>IDECodeSnippetContents</key>
    <string>if (&lt;#condition#&gt;) {
  &lt;#statements#&gt;
}</string>
    <key>IDECodeSnippetIdentifier</key>
    <string>D70E6D11-0297-4BAB-88AA-86D5D5CBBC5D</string>
    <key>IDECodeSnippetLanguage</key>
    <string>Xcode.SourceCodeLanguage.C</string>
    <key>IDECodeSnippetSummary</key>
    <string>Used for executing code only when a certain condition is true.</string>
    <key>IDECodeSnippetTitle</key>
    <string>If Statement</string>
    <key>IDECodeSnippetCompletionScopes</key>
    <array>
        <string>CodeBlock</string>
    </array>
</dict>

这是自动完成的代码片段if陈述。编辑IDECodeSnippetContents将左大括号放在新行上,保存您的工作,然后重新启动 XCode 4;如果一切顺利,您应该能够输入if声明并查看结果。

您需要进行至少六次编辑才能涵盖最常见的自动完成功能(for, while等),如果您想要彻底,则需要进行大约 40 次单独的编辑。这是很多工作,但如果你真的really如果希望 XCode 4 的自动完成功能将左大括号放在单独的行上,这是可以做到的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Xcode 4 在新行上带有左大括号 的相关文章

随机推荐

  • 我应该使用 URLDownloadToFile 吗?

    我正在寻找用 C 下载文件的最简单方法 在 Windows 上 URLDownloadToFile 听起来很棒 并且不需要我使用curl 或其他我不需要的胖库 这个函数有什么要求 它将在哪些 Windows 上运行 Thanks http
  • 基于 JavaScript 的开源客户端 2D 数据绘图?

    我想知道是否有任何使用 JavaScript 在客户端运行的 2D 图形绘制库 基本思想是 您可以在浏览器中放置一个绘图 用户可以更改 X 和 Y 比例和限制 放大和缩小等内容 而无需不断地从服务器重新加载网页 数据本身将通过 AJAX 获
  • 尝试在空对象引用上调用虚拟方法“androidx.navigation.NavGraph androidx.navigation.NavDestination.getParent()”

    我创建了一个 Android 应用程序 并从图库中添加了 导航抽屉活动 删除并重命名了菜单项 启动应用程序后 当我单击抽屉活动中的任何菜单项时 出现以下错误 java lang NullPointerException Attempt to
  • 布局位于状态栏和软键下方

    我不确定我是如何得到这个的 而且我找不到类似的东西 但我的软件导航和状态栏是在我的布局上绘制的 而不是我的布局适合它们之间 如何让我的布局绘制在它们之间而不是下面 Edit 看来这就是罪魁祸首 位于样式中
  • 为什么“change_protection”在将大量数据加载到 RAM 时会占用 CPU?

    我们建立了一个内存数据库 单个数据库占用约 100 150G RAMVec https doc rust lang org std vec struct Vec html 其填充如下 let mut result Vec with capa
  • 如何镜像 UIBezierPath?

    我有一个UIBezierPath我想得到它的镜像 我怎样才能做到这一点 Method for generating a path UIBezierPath myPath self generateAPathInBounds bounding
  • byte[] 转灰度 BitmapImage

    我从 128 x 128 双精度数组开始 然后将其转换为每个双精度值具有比例值的一维字节数组 然后我获取这个字节数组并将其转换为内存流 dataStream下面 并尝试将其放入BitmapImage像这样 imgScan Width 128
  • Android:启动时在后台进行应用程序登录

    我有一个VOIP应用程序 我需要在设备启动时在后台登录应用程序 目前我的应用程序的初始化已完成UI Active onCreate 我心里有以下几点 谁能帮我解答一下我的疑惑 服务设计是必须完成这个任务吗 Which Service Rem
  • Raphael JS 组合路径

    我对 SVG 和 Raphael 还很陌生 但我已经使用 Illustrator 多年了 所以我对其工作原理有一些假设 我想组合两个应该返回单个元素的路径 我需要制作一个对话气泡 但它实际上可以是任何东西 在这种情况下 我尝试制作两个rec
  • Linux 内核 dentry 和 inode

    是否可以从给定的 dentry 和 inode 构造绝对路径 谢谢大家 如果你有一个struct path 或者可以构造一个 看看 tomoyo 是如何做到这一点的 http lxr linux no linux v2 6 37 secur
  • 为什么 JavaScript 中的 Boolean() 这么慢?

    根据 ECMAScript 规范 两者一元逻辑 NOT 运算符 http www ecma international org ecma 262 5 1 sec 11 4 9 and the Boolean 功能 http www ecma
  • 从 Firebase 查询更新变量值?

    我目前正在尝试使用从 firebase 中提取项目的值once 并使用该值填充 varitemsList 但是 尽管 itemsList 已正确填充在once调用时 它在调用外部记录为未定义 我认为这可能与 Firebase 的异步特性有关
  • Kendo UI:TabStrip HtmlHelper 添加部分视图

    在 MVC 3 中的 Kendo UI 内部 我需要为每个选项卡添加部分视图作为该选项卡的内容 这是如何完成的 文档似乎没有显示任何方法 var partialData Html Partial Views Templates p myVi
  • 对象属性随分配变量的值动态变化

    由于我是新手 这可能是一个非常基本的问题 我正在从构造函数创建一个对象 我希望将对象的属性之一链接到变量 因此 如果变量值发生变化 属性的值也应该发生变化 示例 我正在使用kineticjs并从构造函数创建一个对象Rect 我想要房产的价值
  • 使用 Symfony 插件的 PhpStorm 中缺少 Twig 模板

    PhpStorm version 9 0 2 Symfony Plugin version 0 11 109 Symfony version 3 0 1 模板引用对于放置在下面的模板文件效果很好app Resources views但不适用
  • NET Core 3.1 MVC 授权/身份验证,使用在单独的 Net Core 3.1 Web Api 中从外部获取的令牌 (JWT)

    我有3个项目 Net Core 3 1 MVC 项目 使用 JWT 身份验证的 Net Core 3 1 Web Api 项目 gt 通过实体框架连接到数据库 Xamarin 应用程序还使用 Web API 进行身份验证和数据检索 我不想从
  • Ansible:将命令参数作为列表传递

    我想将多个参数作为列表存储在变量中 vars my args verbose quiet verify 然后将列表作为带引号的参数传递给命令 最明显的是join过滤器没有按我的预期工作 它生成包含所有列表元素的单个单词 而不是每个列表元素一
  • Visual Studio 2017 - 无法初始化 powershell 主机

    Day 1 System Windows 10 Microsoft Visual Studio Community 2017 Version 15 5 5 VisualStudio 15 Release 15 5 5 27130 2026
  • 为 Visual Studio 编写解决方案分析器

    所以我需要的是为什么要为 Visual Studio 编写一个解决方案分析器 它可以 检测移动类和移动方法重构 在 Visual Studio 中显示建议的重构 应用重构 我有一个控制台应用程序可以执行此操作 使用 Roslyn 编译器 但
  • Xcode 4 在新行上带有左大括号

    似乎新的 Xcode 4 不适用XCCodeSenseFormattingOptions不再了 至少对于我来说 不管怎样 你知道如何将左大括号放在新行中以在 Xcode 4 中自动完成吗 我曾经在终端中输入此内容 但它不适用于新的 Xcod