繁体   English   中英

emacs中的Objective-C缩进

Objective-C indentation in emacs

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我正在使用Emacs来编辑我的Objective-C代码。 默认缩进如下所示:

    NSTimer *timer =
        [NSTimer timerWithTimeInterval:1.0
                 target:self
                 selector:@selector(callback:)
                 userInfo:nil 
                 repeats:YES];

我希望Emacs像XCode一样缩进代码,即与冒号对齐:

    NSTimer *timer =
        [NSTimer timerWithTimeInterval:1.0
                                target:self
                              selector:@selector(callback:)
                              userInfo:nil 
                               repeats:YES];

有没有希望实现这一目标?

3 个回复

我已经对此进行了一段时间的攻击并且已经接近了,但它还没有完全正常运行。 我的解决方案是在align-rules-list添加一个条目,这样一个简单的Mx align就可以了。 问题是你必须运行两次align才能使它工作。

(obj-c-colons
 (regexp . "^\\(\\s-*[^:]+\\):")
 (justify . t)
 (repeat . t)
 (modes obj-c-mode)) ;; <= Replace with actual name of major mode

我实际上并不知道objective-c模式的名称是什么,所以你必须用实际调用的模式替换obj-c-mode 您可以将此添加到align-rules-list

(add-to-list 'align-rules-list
             '(obj-c-colons
               (regexp . "^\\(\\s-*[^:]+\\):")
               (justify . t)
               (repeat . t)
               (modes obj-c-mode)))

现在,你必须执行两次align ; 第一次只排列如下:

 NSTimer *timer =
        [NSTimer timerWithTimeInterval:1.0
                              target:self
                            selector:@selector(callback:)
                            userInfo:nil
                             repeats:YES];

请注意,冒号是左边两个字符。 第二个align将纠正这一点。 不要问我为什么。

使用align命令可以进行很多操作,因此很难搞清楚它。 希望有人想出一个改进的方法。 无论如何,请查看相关的EmacsWiki页面以获取有关对齐的更多信息。

在c-offsets-alist中,ob -c-method-call-colons的c-lineup-ObjC-method-call-colons是否有问题?

还有,做这样的目标C模式在这里

下面是它看起来

3 Objective-C中的下标

我正在使用iPhone应用程序,并且具有UITableView的单元格。 我希望某些单元格具有下标“ f”和“ 0”。 无论如何,也许使用unicode或其他方法来做到这一点? ...

4 Objective-c中的memoryWarning

我有一个应用程序,它有很多视图,大约20个视图,可从两个主菜单访问,每个视图的背景图像上都有标签,文本字段和按钮。 作为数据,我有一个全局类和一些由xml文件填充的数组。 如果出现memoryWarning,我应该释放不必要的内容,但是如果您处于一个视图中,则另一个视图中的所有视图都已被 ...

6 Objective-C中的BDD

我最近开始学习Objective-C并使用与Xcode捆绑在一起的OCUnit编写我的测试。 我是一个很长时间的Ruby程序员,我习惯了RSpec和Cucumber - 很好的BDD框架。 在Objective-C中是否有一个像样的BDD框架? 我想念我的'应该':) ...

7 #Objective-C中的语句

我遇到了以下代码,并想知道#statement的含义,以及是否有什么好的地方可以学习如何使用语法: ...

8 在objective-c中的urldecode

我正在处理objective-c中的urlencoded字符串。 是否存在实际反转urlENCODING的基础功能? 收到的字符串如下:K%FChlschrank但应该在解码Kühlschrank之后 ...

9 在Objective-C中绘图

我知道您可以使用CoreGraphics在视图中绘制。 但这仅限于drawRect函数。 我想知道您是否可以使用一个具有两个按钮(上,下,左,右)的应用程序。 而且,当用户选择按钮时,它会从原始点沿刚刚选择了20像素的按钮方向绘制一条线。 例如 : 假设用户点击了右键: ...

10 Objective-C中的@synchronized

当我调试这些代码.at首先它运行第1行,然后转到第2行。没关系,但在此之后,它再次转到第1行,然后转到第2行,然后跳出@synchronized 。 但是当我打印runningOperations时,第一次运行第2行代码时,Object不会添加到self.runningOperations中 ...

暂无
暂无

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

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