問題タブ [macros]

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 投票する
6 に答える
336 参照

c++ - C ++ファイルでステートメントパターンを見つける

次のようなマクロがあります。

ここで、ods() は cout と同様に動作するクラスであり、VERBOSITY_SETTING はグローバル変数です。さまざまな詳細設定用にこれらのいくつかがあり、コードを次のようにすることができます。

このフレームワークには、冗長性などを設定する機能があります。ただし、次のようなもので中括弧を使用しないと、明らかなパターンが壊れます。

マクロのため、次のようになります。

これは、if ステートメントの意図した機能ではありません。

今、私はこのマクロを適切に修正してこの問題を引き起こさないようにする方法を理解していますが、コードの監査を実行して、「if (...) coutError < < ...; else" を使用して、これが発生する他のケースがあるかどうかを確認し、マクロを修正するときに実際に正しい機能になることを確認します。

これを見つけるために任意の言語/ツールを使用できます。それを行う最善の方法を知りたいだけです。

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

text - Komodo Edit: キーバインドとツールバーによるマクロの実行

質問: Komodo Edit に精通していて、このマクロを解明できる人はいますか? ツール パネルから呼び出されたときにマクロでバッファ テキストを選択する方法を理解する必要があります。

問題: Komodo Edit JavaScript に非常に単純なマクロがあり、期待どおりに動作しますが、カスタム キーバインドを介して呼び出された場合のみです。ユーザーが標準の「ツール パネル」からこれを呼び出そうとすると、selectWordLeft 呼び出しは何も実行しません。私の推測では、編集バッファーにフォーカスがないことが失敗の原因であると思われますが、マクロに明示的にバッファーにフォーカスを与えるように指示することはうまくいくと考えていたでしょう。

背景: Komodo Edit、バージョン 5.0.2、ビルド 2604、プラットフォーム win32-x86。2008 年 11 月 19 日水曜日 18:33:41 に作成。

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

editor - Komodo Edit: これらの基本的なマクロおよびスニペット操作のいくつかを行う方法は?

Komodo Edit でこれらの基本的なマクロとスニペット操作を行う方法 (またはドキュメントの場所) を知りたいです。

  • 1) FILE/IO: Komodo JavaScript マクロ内から一時ファイルに文字列を書き込みます

  • 2) FILE/IO: テキスト ファイルの内容を komodo JavaScript マクロ内の文字列に読み込みます

  • 3) INCLUDES: マクロ内のローカル javascript "include" ライブラリ、または #script src="~/mylocal_javascript_addons.js" と同等のものを相互参照するので、マクロ コードを統合できます。

  • 4) SNIPPET_OUTPUT: ユーザー定義の JavaScript 関数またはマクロの出力を返すスニペット補間プレースホルダーを作成します。

    例えば:

    [[%(myscript:SayHelloWorld())]]

    [[%(foomacro-MyAgeInMilliseconds)]]

  • 5) MACRO_OUTPUT:現在のバッファで複数行の選択を取り、それをローカル スクリプトまたはバッチ ファイルに渡し、選択を出力結果に置き換えるマクロ。(Linuxだけでなく、MSFT Windowsでこれを行う方法が必要です)。

Javascript の代わりに Python を使用してこれらの 1 つ以上に回答できる場合、それは素晴らしいことですが、Python のドキュメントは非常に TODO のように思われるため、サンプル コードまたはそのリンクを含めてください。

0 投票する
5 に答える
117669 参照

c++ - エラー: マクロ名は #ifdef 0 を使用した識別子でなければなりません

C++ で記述されたアプリケーションのソース コードがあり、次のようにコメントしたいだけです。

そして、私はこのエラーが発生します

エラー: マクロ名は識別子でなければなりません

なぜこうなった?

0 投票する
3 に答える
780 参照

php - Php とマクロ (lisp スタイル)?

こんにちは、LISP を学んでいて、一日中 php をプログラムして生計を立てているので、php.net をいじっていて、eval 関数を見つけました... それで、いじり始めました!

eval を使用してクレイジーなことを行う方法についてもっと知りたいです。これとすべてで関数を作成できることは知っています...しかし、次のコードが機能しない理由を尋ねたかったのです。

また、eval で他に興味深いものはありますか!

0 投票する
2 に答える
124 参照

asp.net - ASP.net 例外のデフォルト ページの「Visual Studio で開く」リンク

ASP.NET アプリケーションがクラッシュしたとき (既定の例外ページが表示されたとき)、ブラウザーでコール スタックの行をクリックすると、Visual Studio が指定された行のコード ファイルを開くようにしたいと考えています。

可能だと思いますか?多分マクロ/アドインで?

0 投票する
3 に答える
6017 参照

emacs - Emacs:コンパイルコマンドクエリでEnterキーを押さずにコンパイル(makeを実行)する方法は?

(x)emacs で、個別にエンターを押してデフォルトのコマンドを受け入れずに「コンパイル」コマンドを実行するにはどうすればよいですか? (「コンパイル」をキーにバインドできますが、Enterキーを個別に押さずにすべてを実行したいです)

もちろん、else コマンドでの同様の動作も問題ありません。

0 投票する
9 に答える
3802 参照

python - Pythonic マクロ構文

私は、すべての構文がマクロを介して解析される Python の代替コンパイラ フロントエンドに取り組んできました。私は最終的に、マクロが不可欠なコンポーネントである Python 言語のスーパーセットで作業を開始できるという点に到達しました。

私の問題は、pythonic マクロ定義構文を思い付くことができないことです。以下の回答に、2 つの異なる構文でいくつかの例を投稿しました。誰かがより良い構文を思い付くことができますか? 私が提案した構文を構築する必要はまったくありません。ここでは完全にオープンです。私が投稿した例を示す代替構文と同様に、コメント、提案などは役に立ちます。

私が投稿した例に見られるように、マクロ構造に関するメモ: MultiLine/MLMacro および Partial/PartialMacro の使用は、マクロがどのように適用されるかをパーサーに伝えます。複数行の場合、マクロは複数の行リストに一致します。通常、構造体に使用されます。部分的なものである場合、マクロはリストの途中のコードに一致します。通常、オペレーターに使用されます。

0 投票する
2 に答える
767 参照

c# - 誰かがC#で「マクロ」を書くにはどうすればよいですか?

MACROSについて何か知っています。ASSEMBLY言語の種類を意味するのではありません。別のプログラムで繰り返しアクションを実行するために使用できるプログラムについて話しています。私は、マウスの動きやボタンのクリックなど、コンピューター上の一連のイベントを記録して再生できるプログラムについて話しています。それらのいくつかは、あなたが指定した特定のアプリでのみ実行できるほど精巧です。

私はある種の1つを一度書いた。これは、Excelセッションを起動し、ある種の動的データ交換パイプを使用してExcelセッションスクリプトコマンドをフィードするプログラムでした。機能した。

しかし、オペレーティングシステムのレベルでの何かは、まったく別の話だと思います。

誰かがC#で「マクロ」を書くにはどうすればよいですか?

私が採用するアプローチは、開発環境に付属するスパイルーチンを使用して、適切なメッセージとパラメーター(wm_lbuttondownなど)のリストを取得し、動的データ交換を使用してそれらのメッセージをアプリに送信することだと思います。

だから私は3つの質問があります。

  1. これはこれを行うための最良の方法ですか?
  2. すでに実行されているアプリのハンドルを取得するにはどうすればよいですか?
  3. すでに実行されているアプリにユーザーのようなメッセージを送信するにはどうすればよいですか?
0 投票する
9 に答える
2271 参照

c++ - switch ステートメントのバグで #ifdef?

次のようなコードがあります。

SOMEMACRO が定義されており、値が 4 であるとしましょう。ケース 4 と 5 がスキップされ、代わりに FALSE が返されるのはなぜですか? :(

デフォルトのケースがないためですか、それとも switch ステートメントで ifdef を使用することが許可されていないためですか?