問題タブ [simbl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1472 参照

macos - OS X ターミナルに TerminalColours がロードされない

SIMBL をインストールして TerminalColors をダウンロードし、このバンドルを SIMBL/Plugins の Plugins ディレクトリにコピーしました。ターミナルを起動するたびに、次のメッセージが表示されました。

ターミナル 2.3 (v309) は、プラグイン TerminalColours (null) (v1.0) でテストされていません。念のため、ロードされていません。詳細については、プラグイン開発者にお問い合わせください。

いくつかの検索の後、他のユーザーが同じ問題を抱えていることがわかり、Info.plistを変更してMaxBundleVersion文字列値を同じバージョンの端末に設定することで解決しました。私の場合、それは 309 または v309 になります。私は両方をテストしました。

ターミナルを起動すると、メッセージは表示されなくなりました。ただし、[設定] の [テキスト] タブの [その他] ボタンは表示されません。

誰かが解決策を知っているか、提案がありますか?

注: システムを再起動しました。

0 投票する
1 に答える
477 参照

objective-c - スーパークラスとリンクせずにObjective-Cクラスをサブクラス化しますか?

Spotlight 用のSIMBLプラグインを作成しており、内部 Spotlight タイプのサブクラスを作成しようとしています。class-dumpを使用して実行可能ファイルからヘッダーを直接取得できますが、リンクする静的ライブラリがないため、それらの内部クラスの 1 つのサブクラスをコンパイルすると失敗します (実行時にクラスが使用可能になる場合でも)。実行時のクラスのサブクラス化に関する Mike Ash の指示に従っていますが、かなり不便です。リンク時にスーパークラスを使用せずに、Objective-C クラスのサブクラスを作成する方法はありますか?

0 投票する
0 に答える
87 参照

objective-c - リンカ コマンドが終了コード 1 カテゴリで失敗しました

ターミナル用の SIMBL プラグインを作成しようとしています。カテゴリを TTView に追加しようとすると、次のようになります。

同じファイルに TTView と MySimplePlugin の 2 つのクラスがあります (両方のインターフェイスが .h ファイルにあり、両方の実装が .m ファイルにあります)。インターフェイス ファイルには、TTView が次のように定義されています。

実装は、カテゴリを追加しようとする場所です。

MySimplePlugin は、ファイルの名前であり、ファイル内の他のクラスでもあります。私の間違いがどこにあるのかわかりません。

0 投票する
1 に答える
465 参照

macos - SIMBL インストールエラー? フォルダなし Library/Applications Support/SIMBL

ターミナルは「インストール成功」を返しましたが、フォルダーを検索するとLibrary/Applications Support/SIMBL存在しません。

インストールされていないということですか?アンインストールしなければならないのでしょうか、それともそのまま再インストールしてみてはいかがでしょうか。

エラーは返されませんでした。

0 投票する
1 に答える
28 参照

objective-c - Cocoa は SIMBL プラグインの現在の実行パスを取得します

上のサードパーティのホスト アプリケーションによってロードされる SIMBL プラグインに取り組んでいますmacOS。ほぼ完全に記述されてC++おり、目的の c コンポーネントは最小限しかありません。(UI の大部分は、ホスト アプリへの API 呼び出しによって提供されます。) 要件の 1 つは、プラグイン バンドルを異なるサブディレクトリから複数回ロードできることです。これは Lua インタープリターであり、ホスト アプリケーションの個別のメニューに表示される Lua スクリプトの異なる構成を各インスタンスでホストすることが目標です。サード パーティは、このプラグインをスクリプトのカスタム構成にバンドルすることができ、アプリのプラグイン メニューに個別の項目として表示されます。

私が抱えているこの問題は次のとおりです。プラグインが実行されているディレクトリを見つける必要があります。次の名前の特別なクラスを作成してMY_BUNDLE_ID_CLASS使用できます。

正しい を取得したらNSBundle、ファイル パスを取得するのは簡単です。

問題は、バンドルの複数のインスタンスが (異なるフォルダーから) ロードされた場合、クラスMY_BUNDLE_ID_CLASSが複数の場所で定義されていると Cocoa が文句を言い、どの場所が使用されたかを保証しないことです。他の同様のクラスの場合、これは私のプラグインには問題ありません。私の固有のクラス名は、バージョン番号を含むマングル名と同等のマクロであるためですが、この場合は問題ありません。同じバージョンの複数のインスタンスである可能性があります。プラグイン コードが実行されているフォルダを見つける他の方法はありますか? 単純な要求のように思えますが、私は空っぽです。提案を歓迎します。