問題タブ [m4]
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.
m4 - シェル コマンドの m4 でスラッシュを自動的にエスケープする
HTMLコードに数学を簡単に埋め込むために、m4でマクロを書いています。スラッシュはエスケープする必要があり、このプロセスを自動化したいのですが、まだ良い方法を見つけていません。
以下で実行m4
すると、問題が表示されます。
次の私の出力:
に置き換える\frac
と\\\frac
、望ましい結果が得られます。毎回できますが、できればこのプロセスを自動化したいです。ところで、望ましい結果は、
これは、HTML コードまたは画像を生成する別のコマンドにパイプされます (この最小限の例以外)。
私は、この問題を回避するための不十分な方法を 1 つ知っています。TeX に別の文字 (または文字の組み合わせ) を使用し、\
別のマクロを定義して自動的に置き換えることができます。私は修正せずにそのままの LaTeX コードを使用したいので、これは不十分です。3 つのスラッシュを使用するよりも大幅に単純ではありません。
ストレートな LaTeX コードを使用できるように、スラッシュを自動的に正しくエスケープするようにマクロを変更するにはどうすればよいですか?
autoconf - 動的変数名を持つ AC_SUBST
基本的に AC_CHECK_SIZEOF(type) を呼び出し、次に AC_SUBST を使用してその変数を置換用に定義する m4 マクロを作成しようとしています。したがって、次の入力が与えられます:
AX_CHECK_SIZEOF_AND_SUBST(int, 4)
@SIZEOF_INT@
のすべてのオカレンスを 4 に置き換えたい
これは私がこれまでに思いついたものですが、明らかに機能しません:
macos - m4、autoconf、automake、libtoolを正しく更新する方法は?Mac OSX
みなさん、
バージョン2.62以降が必要で、Mac OSX 10.6.8では古い2.61しか提供されていないため、autoconfを更新しようとしています。(最終的には、SAGA-GIS APIをインストールしようとしています)。
私はこれらの指示に従いました:http://www.mattvsworld.com/blog/2010/02/install-the-latest-autoconf-and-automake-on-mac-os-10-6/
しかし:私がこれらのステップを実行するときはいつでも、何もしません。
古いツールが置かれていた場所なので、ツールをusr/binにインストールしました。これは正しいです?
あなたのサポートに感謝します、私は本当にこのSAGA-GISが必要ですが、これらのツールはとにかく最新のものでなければなりません、私は推測します!
windows - $PATH または /usr5bin に使用可能な M4 がありません
Windows で code::blocks を使用するために GMP をインストールすることを最終目標とする、長くて下品な話の一部として、gmp を構成しようとしています。次のコマンドでこれを行います。
./configure --prefix=${gmp_install}
すべてが十分に始まります。数分後、少し進行すると、すべてが停止し、次のメッセージが表示されます。
configure: エラー: $PATH または /usr5bin に使用可能な M4 がありません
M4 が何なのかさえ知りませんが、ある種のマクロ プロセッサであることがわかりました。そのため、それをダウンロードし、そのフォルダーを Path 変数に追加します。その後、構成を再度開始しますが、結果は同じです。
M4 を動作させるために必要なことはありますか? 私は本当に途方に暮れています。ご協力いただきありがとうございます。
qt - AutoTrollを使用してQTおよびGNUAutotoolsを使用するにはどうすればよいですか?
AutotoolsとQT4を一緒に使いたいです。このために私はAutoTrollを使用したいと思います。ウェブサイトが言うように、それはそれを非常に使いやすいはずです。残念ながら、私はそうすることができませんでした。動作するHelloWorldの例があります。
これは私のconfigure.acがどのように見えるかです:
私のMakefile.am:
QTを使用した単純なmain.cppには次のものが含まれます。
誰かがこれでミットを手伝ってくれませんか?短いステップバイステップは非常にいいでしょう。前もって感謝します。
編集:このm4 makro(Autotroll)を構成に統合する方法がわかりません。これが、「エラー」などを提供できない理由です。ウェブサイトのは私が何をすべきかを理解するのに役立ちません。
autotools - config.h.inへの不要な出力を抑制します
AC_CHECK_HEADERSがm4_foreach_w内で呼び出されると、autoheader(2.65)は偽のテンプレートを生成するようです。例えば:
config.h.in
(仮定)AC_CONFIG_HEADERS([config.h])
にテンプレートを持たせます:
その偽のテンプレートを回避する方法はありますか?m4_foreach_w
はマクロ内で呼び出されており、実際のテキストはm4_foreach_w([hdr],[$1],
であり、m4の引用の問題があるかどうか疑問に思っていますが、問題はより根本的なものであると思われます。つまり、私は常にm4-を誤って引用したと思いますが、それはここでは問題ではないようです。むしろ、autoheader
を尊重せずにテキストをスキャンしていますm4_foreach_w
。テンプレートが問題を引き起こすことはないと思いますが、最終的には本当に奇妙に見えますconfig.h
。
autoconf - 複数のステートメントをパックする方法
[]
複数のステートメントを:で再グループ化したいのですが。
私の問題は、それを行うための最良の方法がわからないということです。使用できると思いますが、これはスクリプト;
としてはあまり慣用的ではないようです。m4sh
c - m4を使用して文字列をASCIIコードポイントに変換する
これは可能であるはずですが、私はm4の初心者なので、それをどのように実行するか、またはそのためのアルゴリズムを(m4で)作成する方法がわかりません。
編集:
とにかくそれを解決しました、とにかく将来の参照のために、私は一連の文字を持っています、それらは同等のASCIIコードポイントに変換される必要があります、例えば
m4 - foreach のような M4 複合マクロとは何ですか?
型を保存するために使用したいm4
ので、ループは間違いなく必要になります。m4
私がドキュメントを読んだとき、第6章には繰り返しのための6.4
andがあります。6.5
しかし、それはforeach
組み込みマクロ (コンポジット?) ではないようですが、どうすれば使用できますか? 例では、オプション とを指定して呼び出しm4
ていますが、このファイルは存在しないようで、次のようなエラーが表示されます。-I examples
include('foreach.m4')
どんな助けでも大歓迎です!
リー
macros - M4でマクロ定義をネストする方法は?
より多くのマクロを定義できるマクロを次のように定義したいと思います。
次に、master_macro
より類似したslave_macro
s を次のように定義するために使用できます。
なぜこれが必要なのかというと、slave_macro
M4 マクロを書くと の数と名前がわからないからです。