Notepad ++での便利な開発

始める前に、この記事ではIDEの代わりにNotepad ++を使用することを提案しないことをすぐに明確にしたいと思います。 その目的のために研ぎ澄まされたIDEは、ほとんどがJavaで書かれており、2ギガバイト以上のRAMがゴブアップし、一般にめちゃくちゃ遅いにもかかわらず、通常のテキストエディタよりも常に優れています。 ただし、IDEとバージョン管理システム、デバッガ、「定義に移動」機能などとの深い統合により、IDEは不可欠になります。
この記事では、IDEが単に存在しないシステムで深刻な何かを開発する必要がある場合を考えたいと思います。 私の場合、これはFOnlineゲームエンジン用のスクリプトの開発であり、ハブ上で既に何度も記述されています。

FOnlineエンジンに関する少しの情報:

現在、スクリプトを記述するプロセスは、次の手順で構成されています。

もちろん、このような状況では、何かを開発することは非常に難しく、テストを実行するための既製のフレームワーク(TDDなし)もデバッガーもありません。
ただし、Notepad ++にはいくつかの制限がありますが、いくつかの利便性を実装できます。

もちろん、これは便利な開発には十分ではありませんが、少なくとも何かです。
さらにこの記事では、これらすべてをメモ帳++で実装する方法について詳しく説明しますが、不必要な質問が出されないようにするために、まずnppに表示したい機能がありますが、実装できない機能について説明します。

順番に。

構文の強調表示

メモ帳++の基本機能。 npp自体のインターフェースを含めて構成されます。

一般に、nppのユーザー定義言語を柔軟にカスタマイズする機能は非常に長い間存在していましたが、この機能がUDL 2.0と呼ばれるまったく新しいレベルに最近移行したことを誰もが知っているわけではありません
主な機能:キーワードのリストの作成、ブロックの構文の定義、これらのブロックの折りたたみ、数値形式の定義、そしてもちろんこれらすべてのスタイルの個別設定。

注:
nppの実行中にUDL設定を手動で編集しようとしないでください。プログラムを終了すると、すべての変更が消去されます。

自動補完

また、nppの基本機能ですが、インターフェースでは編集できなくなりました。今回は、xmlを手動で編集する必要があります。
主な機能:予約語と予約語のオートコンプリート、それらの説明の作成、関数パラメーターのヒント、戻り値に関する情報。 さらに、オーバーロードされた関数がサポートされています。
設定の詳細はこちら。

注:
オートコンプリートを正しく機能させるには、xmlの行をアルファベット順に正しく並べ替える必要があります(特殊文字と数字を考慮した並べ替えの詳細は、公式Wikiのどこかにありました)。 私は認めなければなりません、この瞬間は非常に迷惑です、xmlインターフェースがない場合、あなたは本当にそれを手動で編集しなければなりません(生成のためにあなたの自転車を書くことはなんとなく怠け者です)。

スマートコンパイラの出力処理

スクリプトの構文チェックのためにFOnlineスクリプトを開発するための環境の実装を始めたばかりのとき、スクリプトへのパスを渡す通常のバッチファイル呼び出しを長い間使用していました。 ただし、コミュニティのメンバーの1人が、EditOnをFOnlineと連携するように構成する方法についての指示を投稿しました。 このエディタでは、コンパイラの出力を解析する可能性が最初にあることが判明しました。 当時は、そのような機会はIDEにのみ存在し、テキストエディターのこの機能をだれも台無しにすることはないと確信していました。 ただし、EditPlusにそのような機能がある場合、N ++プラグインをもう一度使用することにしました。 驚いたことに、メモ帳++のソリューションが見つかりました: NppExecプラグイン。
設定は非常に柔軟です。プロセスについては説明しませんが、すべてが非常に単純であり、結果を表示するだけです:


ご注意
このプラグインでは、ツールバーでコンパイラを起動するボタンを追加できませんが、カスタムツールバープラグインはこれを実行します。

定義関数とエンティティリストの表示に移動

つまり、 SourceCookifierプラグインはこの目的に適しています。
機能:

しかし、私たちがより詳細に話すと、短所について言うことはできません:

注:
  1. SourceCookifierについてはまだ十分に理解していないことに注意してください。また、上記が100%真実であることを保証することはできません。 誰かがエラーに気付いた場合、私は情報を喜んで受け取ります
  2. 多かれ少なかれよく知られている言語の「定義に行く」機能が必要な場合は、 TagsJumpプラグインを確認する必要があります。

文書マップ

最近、このファッショナブルな機能は、n ++ですぐに使用できます。
動作します。

前のカーソル位置へのクイックジャンプ

場所ナビプラグイン。
単一のファイル内で機能します。
さらに、n ++の開始以降に発生した保存済みおよび未保存のファイル変更を強調表示します。

注:
このプラグインの主な機能は、上記のSourceCookifierプラグインで実装されていることに注意してください。

括弧、引用符...

二重引用符と閉じ括弧の配置は、XBrackets Liteプラグインによって行われます。 解決策は理想からはほど遠いですが、少なくともいくつかはあります。

注:
bare n ++の設定では、ペアの文字の自動置換を有効にすることもできますが、この機能は非常に不器用に実装されており、より面倒です。

あとがき


現時点では、これは私が古き良きNotepad ++から絞り出したほとんどすべてのものです。
もちろん、Notepad ++はWindowsにのみ存在し、崇高はNotepad ++よりもはるかに優れていると不満を言うことができます。 EditPlusまたは本格的なIDE(もちろん、必要な機能のほとんどを自分で実装する必要があります)への切り替えをアドバイスできます。 Geanyの機能を拡張するためのかなりの機能を思い出してください。 ただし、個人的な経験に基づいて、メモ帳++は上記のタスクに最適です。 たぶん私は間違っている、私は上記がすでにあまりにも多くのコストなしでSublimeで実装されていると仮定することさえできます。 しかし、メモ帳++の場合のように、この機能はすべて、多くのプラグインとさまざまなドキュメントに散在しています。 もしそうなら、私はそれらについてもっと読みたいです。
ご清聴ありがとうございました。

Source: https://habr.com/ru/post/J220081/


All Articles