問題タブ [flymake]
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.
emacs - flymake と flyspell の両方に 1 つのキーを使用する
私はpyflakesでflymakeを使用してpythonコードをチェックし、flyspellを使用して文字列とコメントをチェックしています。次のエラーに進むか、現在エラーが発生している場合はエラーに関する情報を表示する関数が 1 つ必要です。この関数をどのように記述しますか?
python - Emacs: Pymacs が Carbon Emacs でropemacs をロードしない
ここで説明されているように、flymake 構文チェックのために、rope/ropemacs で Pymacs を使用しようとしています。 http://www.enigmacurry.com/2009/01/21/autocompleteel-python-code-completion-in-emacs/
Carbon Emacs を「通常どおり」起動すると、次のエラーがスローされます。
エラー: Pymacs がropemacsを読み込んでいます...失敗しました
Carbon Emacs を使用して OSX 10.5 でこれを動作させましたが、10.6 では失敗します。ただし、「ターミナル」emacs、Aquamacs をロードするとき、または「/Applications/Emacs.app/Contents/MacOS/Emacs」を使用してコマンドラインから Carbon Emacs を開くと機能します。これはある種のパスエラーだと思いますが、私の人生では理解できません。
私のセットアップはOSX 10.6.2で、macports python 2.6.4を使用しています。
ありがとう!
php - PHPの未使用変数(Emacs内)を特定するにはどうすればよいですか?
EmacsのPHPファイルで未使用の変数を特定することはどういうわけか可能ですか?
他の言語では、Flymakeなどのツールを使用してこれを行うことができます。
私はすでにFlymakeを有効にしてPHPファイルの構文エラーをその場で表示していますが、それでもPHPロジックエラーが次のような状況に起因することがあるのはイライラします。
foo
開発者の頭痛と彼/彼女の法外なコーヒーの使用に寄与する$のタイプミスに注意してください。
Pascal とviam0Zahによるヒントの後、php.iniファイルにこれを設定しました。
コマンドラインから実行するとphp
、未定義の変数(-lオプションの有無にかかわらず)に関する通知を確認できるようになりました。
これは私が現在.emacsファイルで使用しているものです。解析エラーでは完全に正常に機能しますが、通知を一致させることはできません:(
Gaborの構成も試しましたが、同じ結果になりました。エラーの場合は問題ありませんが、通知の場合は問題があります。
コマンドラインから、解析エラーは次のようになることに注意してください。
通知が一致しない理由がわかりません。正規表現を個別に試しましたが、正しく一致しているようです。
(C-x C-e
行の終わりにジャンプします)。
最後に、通知は元々次のように報告されていたため、今のところXdebugを無効にしました。
したがって、複数行のエラーに一致するように正規表現を少し変更する必要があると思います。これについて何かヒントはありますか?
c++ - Emacs:迷惑なFlymakeダイアログボックス
私の中には次の行があります~/.emacs.d/init.el
同じフォルダーに適切なMakefileがあるC++ファイルを開くと、オンザフライでコンパイルとエラー報告が行われます(Flymakeは構文をチェックし、コード編集中にエラーと警告を報告します)。
Makefileにはcheck-syntax
ターゲットがあります:
問題は、対応するMakefileがない.ccファイルを開くと、flymakeが無効になっていることを警告する迷惑なダイアログボックスが表示されることです。
したがって、emacs *.cc
20個のC ++ファイルを含むフォルダーで起動すると、[...]のビルドファイルが見つかりませんのような20個のモーダルダイアログボックスが表示されます。Flymakeはオフになります。
その警告を無効にするために使用できるフックはありますか?サンプルのelispコードと、適切なフックを見つけた方法についての説明を提供できますか?
javascript - Flymakeは、js2モードでロードした直後に終了します
.jsファイルを開くと、js2-mode、続いてflymake-jsが自動的に読み込まれます。しかし、flymakeはメッセージとともにすぐにアンロードします
flymake-modeをオフに切り替えます。明示的な引数を渡す方がよいでしょう。
ただし、を使用して手動で有効にすると、M-x flymake-mode
アクティブのままになります。誰かが同様の動作に遭遇し、それを修正しましたか?
私のセットアップ: emacswiki の指示に従って、少し変更を加えて最新のjs2モードで動作するようにFlymakeをセットアップしました。
それ以外の
python - emacsでflymakeとtrampを使ってリモートでpyflakesを実行していますか?
ここで提案されているように、私はflymakeを使用してpyflakesを実行しようとしています
これはローカルファイルでは問題なく機能し、少し調整を加えたリモートファイルでもほとんど機能しますが、flymake / pyflakesが実行時にバッファを「変更」するという問題が残ります(実際には何も変更されていないようですが)。実際には少し役に立たない(たとえば、ファイルを保存すると、すぐにバッファを再度変更するflymakeが実行されます)。
これが私がほとんどそれを機能させるためにしたことです:
- リモートボックスにpyflakesをインストールしました。
- 変数をカスタマイズして
tramp-remote-process-environment
、そのPATHでpyflakesを見つけられるようにしました - 上記のwikiリンクからのコードの変形を使用しました。明らかに、リモートバッファに対してそれを無効にするチェックを除外しました。また、
(when (load "flymake" t) ...)
構成が期待どおりに機能していないように見えましたが、それほど心配していません。 - 関数を再定義して(テスト目的で、これを機能させることができればアドバイスは問題ありません)、
flymake-start-syntax-check-process
関数を(機能しないstart-file-process
)代わりに(トランプで機能する)使用するようにしstart-process
ます。
#4での変更は、ローカルファイルの処理時に問題を引き起こすようには見えませんが、これにより、flymakeがリモートファイルのリモートpyflakesを実行できるようになります(エラーは予想どおりに強調表示されます)が、この場合、バッファーは「変更」されます。 flymakeが実行されるときはいつでも。
リモートstart-file-process
プロセスの場合、ローカルプロセスでは発生しない追加の戻り値/データが生成されると思います。
誰かが洞察/アドバイスを持っていますか?
- Ubuntu上のEmacs23.1および23.2
- Python 2.4.6
- Pyflakes 0.4.0(easy_install経由)
emacs - Emacsを無効にする方法-HTMLモードのFlymake
これが.emacsファイルでの私のflymakeのセットアップです:
flymakeを.pyファイルにのみ使用したい。残りは無効にします。ただし、常に有効になっています。たとえば、htmlファイルを開くと、常に次のエラーが発生します。エラー(flymake):Flymake:args(val /home/huseyin/vipsatis/templates/cancellation/base_flymake.html)を使用して構文チェックプロセス'xml'を起動できませんでした:検索中プログラムの場合:そのようなファイルやディレクトリはありません、xml。Flymakeはオフになります
だから私はpyファイル以外はオフにしたい。出来ますか?
(同じ問題を抱えている人のために、エラーメッセージを説明したいと思います:Flymakeはxmlとhtmlの検証にxmlstarletを使用します。それを「xmlval ......」と呼ぼうとしますが、次のように呼び出す必要があります。 "xmlstarlet val ...."これを修正するには、flymake.elファイルを見つけて、xmlstarletでxml呼び出しを変更する必要があります。)
emacs - flymake CFGERR問題
openSuse 11 の emacs 22.3.1 で flymake を使用しようとしていますが、次のエラーが発生しました。
エラーは、C++ コードに構文エラーがある場合にのみ表示されます
私のメイクファイルは問題ないようです:
.emacs もきれいにしようとしました
debugging - flymakeモジュールでemaceselispのスピンをデバッグするコツはありますか?
C#flymakeモジュール内のemaceselispでCPUスピンが発生しています。(Flymakeは、定期的にビルドを実行し、現在のバッファー内の構文エラーまたは警告を強調表示するemacsのモジュールです。)
スピンが発生する可能性のあるスポットを探すために、コードに足を踏み入れようとしています。
私がそれにいる間、誰かがスピンを理解するための提案がありますか?emacsに実行を停止して、どこで停止したかを確認できるものはありますか?
c# - emacs:flymakeとcsharpでこの自動ロード順序の問題を解決するのを手伝ってください
起動時間(= autoload)を最小限に抑え、ユーザーのemacs.elへの影響を最小限に抑えて、flymakeのパッチ適用が必要なモジュールを提供するにはどうすればよいですか?
私はflymake-for-csharpモジュールに取り組んでいます。これはflymakeで動作し、C#コードファイルをより柔軟にする方法を教えます。たとえば、makefileを使用するだけでなく、flymake-for-csharpは.csprojファイルを使用することも、csc.exeを直接呼び出すこともできます。
モジュールは正常に動作します。現在、正しく自動ロードできるようにしようとしています。
これが課題です。
どの言語がflymakeされるかを定義するために、flymake.elには、ファイル拡張子(.java、.cs、.cなど)のリストと、それらの各言語のinitおよびcleanupルーチンが含まれています。デフォルトのflymake.elにはC#のエントリがありますが、前述したように、デフォルトのC#の動作は十分に柔軟ではありません。より柔軟にするには、flymakeリストのC#エントリを置き換えて、flymake-for-csharpモジュールの新しいinit/cleanupロジックを指すようにする必要があります。私と一緒に?
実行時にアリストにパッチを適用することは問題ありません。次のようになります。
長期的な解決策は、flymakeとemacsの作成者に、現在flymake-for-csharpにあるロジックを受け入れるように説得することです。次に、アリストはより柔軟な初期化/クリーンアップルーチンを取得し、おじさんをボブします。
しかし今のところ、flymake-for-csharpを既存の(組み込みの)flymake.elで動作させたいと思います。そこに問題があります。アリストにパッチを適用しながら、flymake-for-csharpを自動ロードするにはどうすればよいですか?
理想的には、ユーザーのemacs.elを次のように表示します。
...おそらく小さな(eval-after-load ..
セクションで。
ただし、C#の新しいエントリを含めるためにflymake alistにパッチが適用された 後でのみ、関数flymake-for-csharp-init
が呼び出されます。
この鶏が先か卵が先かという状況を回避する方法はありますか?
私が考えた1つのアプローチは(require 'flymake-for-csharp)
、の代わりに使用することでしautoload
た。そのflymake-for-csharpモジュール内で、パッチロジックのみを実行してから、残りの関数に何らかの方法でautoloadを使用します。これは良い考えでしょうか?これには、flymake-for-csharpを2つの異なるファイルで配信する必要がありますか?
私が考えたもう1つのアプローチはeval-after-load
、onflymake.elを使用することでした。その中で、パッチ機能を提供することができました。これといくつかの質問:
これは、flymakeが自動ロードされている場合にのみ機能しますか?(外部の)eval-after-loadが評価されたときに、すでにロードされているモジュールのeval-after-load内のロジックはどうなりますか?
ユーザーのemacs.elに影響を与えずにこれを行うにはどうすればよいですか?
要約すると、起動時間(= autoload)を最小限に抑え、ユーザーのemacs.elへの影響を最小限に抑えて、flymakeのパッチ適用が必要なモジュールを提供するにはどうすればよいですか?