2009-06-23 65 views

回答

8

Apple的XCode文檔包含一個full list of user preferences,其中很多沒有相應的UI。我沒有看到任何特定於命名空間的東西,所以我認爲你可能不走運。

但是,我想我會傳遞首選項列表以防萬一它有用。

+2

哥們,鏈接已斷開:( – 8090PZ 2014-09-10 00:16:55

4

我繞過Xcode的縮進,並有一個用戶腳本,在當前顯示的文檔上調用uncrustify

#!/bin/sh 
#echo -n "%%%{PBXSelection}%%%" 
uncrustify -q -c ~/.uncrustify/sample.cfg -l oc+ 
#echo -n "%%%{PBXSelection}%%%" 

注:

  • uncrustify必須在你的PATH
  • 您可能需要調整您的配置文件的位置
  • ,如果你想在Xcode中選擇新的代碼
  • ,取消註釋兩個回聲語句(這也可用於製作「格式選擇」腳本,而不是「格式全部」)

個腳本設置:

  • 輸入:整個文檔
  • 目錄:主目錄
  • 輸出:替換文檔內容
  • 錯誤:在警報
6

顯示我也試圖這樣做這個。

答案是,在XCode中執行代碼格式的人似乎完全沒有意識到Objective C以外的其他語言或除Apple之外的其他編碼風格。

下面是一個人們想要做的事情的列表,不能在XCode中完成。

  1. 縮進public:或private:只有一個空格。
  2. 縮進名稱空間零空格。
  3. 參數的替代縮進不是相對於左括號。

最後一個需要一點討論。有時,一個函數或方法名可能會很長,以及它的第一個參數,所以你想也能縮進這樣的:

someExcitingClass->AVeryLongMethodNameTraLaLaLaLa(
    someLongExpressionOrVariableNameGoesHere, 
    anotherNameHere); 

當然,你可能要被抽取的子表達式進行這條線較短,但在現實世界的代碼中總是出現這種情況,而創建子表達式只是爲了將所有東西都適合合理的線長度,這令人討厭。

這是一個可怕的恥辱,我真的不知道該怎麼做。我個人使用emacs編寫代碼,只是將其作爲構建系統插入到XCode中,但是: - 這不適合每個人。

4

作爲的Xcode 4.3.1沒有自定義命名空間縮進選項可供選擇,但是我通過導航到首選項 - >文本克服這種刺激編輯 - >縮進並禁用「語法感知縮進」。

3

由於Xcode壓縮器只使用詞法分析器,而不使用AST,因此可以通過定義大括號來「欺騙」格式。

我:

#define NAMESPACE_OPEN(_name) namespace _name { 
#define NAMESPACE_CLOSE(_name) } 

#define dsmsg_namespace_open NAMESPACE_OPEN(dsmsg) 
#define dsmsg_namespace_close NAMESPACE_CLOSE(dsmsg) 

即,一個通用的 'NAMESPACE_OPEN/CLOSE' 定義和具體定義我最常用的命名空間 'dsmsg'。然後,每當我想打開的命名空間,我用

dsmsg_namespace_open 

... code ... 

dsmsg_namespace_close 

醜陋的黑客攻擊,但我很喜歡具有特定的,命名爲「關閉」

相關問題