問題タブ [macruby]
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.
macos - Mac App Store に提出されたアプリ内で openssl を呼び出すことは許容されますか?
App Store に提出されたアプリケーションの外部でプロセスを呼び出すという点で、ルールがどのようなものかは少しわかりません。
Cocoa と OSX ライブラリ以外の他のライブラリ/フレームワークを使用する場合は、それをアプリケーションに含める必要があることを読みました (たとえば、QT、Python、または Ruby でアプリを作成する場合)。
ただし、ストアに提出されたアプリ内から openssl を呼び出すことは可能ですか? 具体的には、Mac Ruby でアプリを作成しており、いくつかの暗号化手順に openssl を使用したいと考えています。
私の知る限り、openssl はすべての OS X マシンにインストールされていますが、Ruby プログラムから呼び出してもよいかどうかはわかりません。
cocoa - cocoa メソッドがパラメーターとしてセレクターを必要とする場合、これを ruby で表現するにはどうすればよいですか?
このcocoa でのシート プログラミングのチュートリアルでは、次のメソッドを呼び出すように指示されています。
これをルビで次のように書いたところ、
もちろん、そのdidEndSelector
部分は間違っています。コードの後半には、returnCode と contextInfo を引数として受け取るメソッド alertDidEnd があります。見てみるself.methods
と、メソッドが としてリストされていることに気付きましたalertDidEnd:returnCode:contextInfo:
。上記のサンプル コードでは、'@' を使用してセレクターをマークしています。これは、シンボルを使用して Macruby で実現されますが、この場合、シンボルには許可されていないコロンが含まれます。このメソッド名をシンボルとして表現するにはどうすればよいですか? この情報を自分で見つけることができませんでした。どこを見ればよかったのでしょうか?
ありがとう!
ruby - MacRuby: net/ssh で SSH 接続?
リモートサーバーでコマンドを実行するために、ssh を使用して接続を作成しようとしています。
次のgemでこれらのアクションを実行したかった: net/ssh.
しかし、MacRuby では動作しないようです。
あなたはそれに対して何を提案しますか?
アプリを AppStore でリリースしたいと考えています。
ruby - Rubyで高性能計算?
私の同僚は通常、高パフォーマンスの計算 (大量のデータ配列の計算) に C または Fortran を使用します。Ruby コードをコンパイル/変換して、パフォーマンスの点で最適化された C コードに近づける可能性はあるのでしょうか?
Ruby をバイトコード (Rubinius、JRuby、IronRuby、YARV?、Cardinal) にコンパイルしたり、ネイティブ コード (MacRuby、..?) にコンパイルしたりするプロジェクトは多数あります。C のパフォーマンスに近づく可能性はどのくらいですか?
また、Ruby コードを C コードに変換する非アクティブなプロジェクトとして、約 2 年間、ruby2c があります。
関連する質問:
macruby - 配布用のMacRubyアプリで、macrubyでRubyスクリプトを呼び出すNSTaskをどのように起動できますか?
MacRubyアプリを持っていますが、アプリの起動後、NSTaskを使用して2番目のプロセスを起動したいと思います。2番目のプロセスは、アプリにバンドルされているRubyスクリプトです。アプリバンドルにコンパイルされるMacRubymacrubyインタープリターを使用して起動したいと思います。どうやってやるの?
macruby - スタンドアロンのRubyスクリプトをスタンドアロンのAOTコンパイル済みmacruby実行可能ファイルにコンパイルするにはどうすればよいですか?
スタンドアロンのRubyスクリプトをスタンドアロンのAOTコンパイル済みmacruby実行可能ファイルにコンパイルするにはどうすればよいですか?
配布可能なコマンドラインツールをMacRubyで作成したいと思います。
cocoa - NSAlert が接続されているウィンドウを条件付きで閉じる標準的な方法はありますか?
設定パネルを備えた超クールなアプリを書いています。ユーザーが設定パネルを開いて設定を変更し、それらの変更を保存せずにパネルを閉じると、悲惨な結果を知らせる NSAlert が表示されます。NSAlert シートには、「OK」と「キャンセル」の 2 つのボタンがあります。ユーザーが「OK」を押すと、シートと設定パネルが閉じます。ユーザーが「キャンセル」を押すと、シートは閉じますが、設定パネルは閉じません。
問題のコードの簡略版は次のとおりです。
私は自分の超クールなアプリに必要な機能を実行させたと信じていますが、これが Apple が意図した、または私にこの機能を実装することを推奨する方法ではないことを懸念しています。ハックのように感じます。これがその方法であると明確に言われたことはありません。この解決策にたどり着く前に、私は多くのことを試しました。
お手本となるMacアプリを作りたいと思っています。これについてさらに詳しく説明しているパターンやドキュメントはありますか? NSAlertクラスに関する Apple のドキュメントと、Sheet Programming Topicsに関する記事を読みました。
ありがとう!
cocoa - Macruby ポインターが void ポインターとして渡されても存続しないのはなぜですか?
セレクターを実装しましたalertDidEnd:returnCode:contextInfo:
。最後のパラメータ contextInfo は void ポインタです。メソッドを呼び出す前に、ポインターを次のようにまとめます。
次に、メソッドを呼び出し、その本体内に次のものがあります。
私は何を間違っていますか?これは、呼び出し元のメソッド (windowShouldClose) が、このセレクターがチャンスを得る前に独自のスレッドで終了するためですか (推測のみ)?
または、ポインターをオブジェクトポインターとして作成する必要がありますか?
O'reilly Macruby Bookがこれについて述べていることを読みました。
ありがとう!
macruby - デリゲートで受信アクションメソッドをインターフェイスビルダーに認識させる方法
初心者の質問アラート!
Xcode 4.1 に新しい macruby アプリケーションがあります。
アプリケーション デリゲートに、次のメソッドを追加します。
インターフェイス ビルダーで、デリゲート オブジェクト アイコンを右クリックしても、上記のメソッドが表示されません (ポップアップに [Received Action] カテゴリがありません)。
デリゲート オブジェクトは、(新しいプロジェクト ボックスから直接) 以下も定義します。
しかし、インターフェイス ビルダーは、デリゲート オブジェクトに window という名前のアウトレットがないと文句を言います。
デリゲート オブジェクトをウィンドウのデリゲートとして設定できます。デリゲート オブジェクトに windowWillClose メソッドを含めると、呼び出されます。
インターフェイスビルダーにアウトレットと受け取ったアクションを認識させるために必要な、私が見逃している簡単なこと (命名規則?) は何ですか?
乾杯、 -- ベン
編集
これは以前に尋ねられました: Interface Builder が MacRuby でアウトレットを認識しない
cocoa - NSURL.URLByResolvingSymlinksInPath は、/tmp、/var では機能しません。回避策はありますか?
(macruby 構文のコード例)
次の URL を作成する場合:
次に、シンボリックリンクが解決された URL の作成を試みます。
/tmp に戻ります:
この NSURL (または /var または /etc) で NSDirectoryEnumerator を作成し、NSURLParentDirectoryURLKey をプリフェッチすると、返される NSURL のパスが /private/tmp/... になるため、これは問題です。
NSDirectoryEnumerator のルートに相対的なディレクトリ パスのコンポーネントを取得する必要があります。私が知っている特殊なケース (これまでのところ /tmp、/var、および /etc) のハードコーディングされた検出以外に、これを行うための堅牢な方法はありますか?
URLByResolvingSymlinksInPath が機能しない他の「特別な」ディレクトリを知っている人はいますか?