0

xcode で .js ファイルを操作する場合、メソッド ブラウザーが機能し、従来の関数が一覧表示されます。そのような:

function OBj (e){
        for (var i in e) {
            enyo.log("element ", i, " is ", e[i])
        }
    };

また...

var OBj = function(e) {
        for (var i in e) {
            enyo.log("element ", i, " is ", e[i])
        }
    };

しかし、他のパターンはどうですか?...次のような:

Obj.method({

    init: function() {},
    data: function() {},

})

これは、私にとって xcode が足りないところです。そこで、この Q&A 投稿では、私が使用した JavaScript パターン タイプに必要なタイプのメソッド ナビゲーションを提供するために、私が作成したシェル スクリプトを紹介します。xcodeのマーカー???機能を利用して、シェル スクリプトは、指定されたフォルダー内のすべての .js ファイルを単純にループし、パターン マッチングによって、パターンに準拠するすべてのメソッドを探し出します。

init: function() {},

コメント付きの一致マーカーが挿入されるため、のようになります。

Obj.method({

//???:init
    init: function() {},
//???:data
    data: function() {},

})

xcodeのメソッドドロップダウンリストに喜んで表示されます:

ここに画像の説明を入力


質問への回答部分としてスクリプトを提供しました。コピーしてファイルに貼り付けるだけです。そのファイルを、JS ファイルが配置されているフォルダー内に配置します。ターミナルcdからそのフォルダーに移動し、シェル スクリプトを実行します。./scriptname

ゴールデン!!!

4

1 に答える 1

0
#!/bin/bash
# ***WARNING: BACK UP YOUR FILES BEFORE RUNING THIS SCRIPT ON THEM

# JS function pattern
v1=': function'

# Change these to point to the paths of your own JS files
temp_file='/Users/.../Documents/.../www/.../'
jsfolder='/Users/.../Documents/.../www/.../'


# Do not change anything below unless you know what you doing,
# as it will likely break the script.   
v2="\/\/\?\?\?\:"
temploc='temp_file'
for i in "${jsfolder}"*.js
do
sed -e  's/'"${v2}"'.*//' -e 's/ *\([^: ]*\)'"${v1}"'.*/'"${v2}"'\1\
&/' $i > $temp_file$temploc
mv $temp_file$temploc $i
done
于 2012-11-11T19:52:15.417 に答える