3

是否有快速修复/检查以确保标题注释中的文件名实际上与文件名匹配?

我刚刚进行了巨大的重构/约定更改,发现有些我忘记更新某些文件的标题注释。

我知道关于标题注释的另一个问题。但我不想更改任何模板。我喜欢Xcode 给我的模板。我只是想确保它匹配。


例子

//
//  XXShim.h
//  ProjectX
//
//  Created by Me Myself on 3/15/12.
//  Copyright (c) 2012 My Company Ltd. All rights reserved.
//

#import <CoreData/CoreData.h>

@interface YYProxy : NSObject

看,XXShim现在是YYProxy在一个文件中现在调用YYProxy.h但标题注释仍然是错误的。

4

1 回答 1

0

我整理了一条至少可以帮助您找到它们的单线。

find . -iname "*.[mh]" -exec sed -n "2s|^//  ||p" "{}" \; -exec basename "{}" \; | uniq -u

您需要打开终端窗口并打开cd项目的根目录。在它们不匹配的情况下,您将在实际文件名上方打印的注释中获得带有文件名的成对行。

编辑:这个脚本(确保你有备份)实际上应该将每个文件的第二行更新为正确的注释:

find . -iname '*.[mh]' -print0 | while IFS= read -r -d '' file; do basename=`basename "$file"`; sed -i '' "2s|//  .*\$|//  $basename|" "$file"; done
于 2015-08-12T23:24:26.613 回答