すべてのIDEブロートウェア(私の目的では、それらはすべて非常に複雑で不便です)に悩まされて、私はおそらくIDEよりも優れたエディターを使用したほうがよいと思いました。
プロジェクトは必要ありません。ビルド管理も必要ありません(コマンドラインから手動でビルドし、ビルドスクリプトを自分で作成することをお勧めします)。パースペクティブ、ワークスペース、モジュールなどは必要ありません。
必要です(重要度は降順)
素敵なGUI。 (これを最優先と言って申し訳ありませんが、それが私の好みです。それがないと、不快に感じて非生産的になります)。 VIM(GUIなし)または[X] EMACS(醜いGUIあり)を提供しないでください。VIM has)のような奇妙なキースキームはありません。コマンドモードなし(またはオプションでエディターの使用において有効で重要ではない)など。
手動で定義可能な折りたたみ可能領域(c#のように)(特別なマクロによって定義され、(任意の言語の)コメントによってエスケープされます)任意の言語。これは最も重要な要件です。最初の編集者と一緒にこの点に会う編集者を見つけたら、私はすでに幸せです。 Windowsでは、私が覚えている限り、UltraEditにはこの機能がありましたが、よくわかりません(更新:UExをインストールしたので、そのような機能は見つかりませんでした)。
シンプルですが、スイスの時計仕掛けで信頼できるリファクタリングです。「ステロイドのマルチファイル検索と置換」のようなものです。
構文の強調表示。
対応する開き/閉じ括弧/中括弧/タグ/引用符など。ペアの強調表示。
オートコンプリート。おそらく単純な、辞書ベース。ドットを入れてCtrl + Spaceを押すとクラスのメンバーが表示され、IDEとして機能することができれば非常に便利ですが、1〜4個の機能がある場合はこの機能が不足する可能性があります。
コードスニペット/マクロ。
ポイント2の説明:
C#に精通している人は、おそらく#region /#endregionディレクティブを知っています。コード内のどこにでも配置でき、エディターは、区切られたブロックを1行に折りたたんで(開始ディレクティブ引数としてタイトルを指定して)、オンデマンドで展開するオプションを提供します(最近のエディターのほとんどが言語で実行できるように)たとえば関数本体のようなブロックですが、必要な特定のコードブロックでこれを実行できるようにしたいと思います)。
私見では、どの言語でも(言語ブロックのコード折り畳みをすでに実装しているエディターで)非常に簡単に実装でき、言語構文解析は必要ありません。ディレクティブ構文を定義する領域は、言語のコメント行構文によってそれらのディレクティブをエスケープして、エディターによって提供できます。
たとえば、NetBeans IDEにはJava用のこの機能があり、ここで詳しく説明されています: http://wiki.netbeans.org/FaqCustomCodeFolds しかし、NetBeansでは、残念ながらこれは、Java(およびおそらく他の)言語でのみ機能し、たとえばScalaでは機能しません。
私は主にScalaをコーディングしていますが、私が書いたように、言語に依存しない機能として利用できるようにできない理由はわかりません-行に「(whatever)#region」が含まれている場合-行の「#region」の後に何かがある場合、これは折り畳み可能な領域の開始です-行に「(whatever)#endregion」が含まれている場合、これは領域のタイトルです-これは領域の終了です。スタートとそれに対応するフィニッシュを見つけて折ります。ユーザーは「(何でも)」を特定の言語のコメント記号に置き換えることができます。
更新:回答が見つかりました(回答をより有益な形式で要約して共有するために、ここに含めます):
たくさんの良い提案があります(私はSciTEを試して、EMACSとVIM適切な気分になったときに)を学んでみます)。自分自身をグーグルで検索すると、興味深いものも見つかりました E-TextEditor (オープンソースのwxWidgetsベース(クロスプラットフォームを意味し、それを構築してインストールするための成功した努力がありました Fedora 1 および buntu 9.04 =)Macの TextMate Windows用のクローン)。
しかし、今のところ、 fschmitt'ssuggestion のおかげで見つかった答えは、 Kate です。
Scala(私が説明した方法で他の言語に簡単に適応できる)のポイント#2(上記の質問)を取得するには、 "/ usrに2行追加するだけで済みました。 /share/kde4/apps/katepart/syntax/scala.xml ":
<RegExpr attribute="Decimal" context="#stay" String="//#region.*$" beginRegion="Region1"/>
<RegExpr attribute="Decimal" context="#stay" String="//#endregion.*$" endRegion="Region1"/>
私はC#構文定義ファイルcs.xmlからアイデアを取り入れました。唯一のトリックは、このコメント支援ハックが機能するために、これらの行を言語のコメントを定義する行の前に配置することです。
そして、そこに嬉しい驚きがあります。Kateは、私が以前想定していたように、大量のKDEライブラリに依存していません。
Ultra Editがお好きなら、Linuxバージョンを試してみませんか?そうでなければ、あなたはケイトを試すかもしれません。それがあなたの要件を満たしているかどうかはわかりませんが、これは私が今まで見た中で最も機能が豊富で構成可能な最新のGUIエディターです(明示的に望まないEmacsを除く)。
ファンキーなホットキーは必要ないとおっしゃっていましたが、必要なことからすると、GVIMの機能リストのように聞こえます。 vimtutor
を使用して、(G)vimがそのように機能する理由を学ぶ価値があるかもしれません。最初は怖かったけど、今は帰りたくない。
さて、NetBeansにはScala用のプラグインがいくつかあることがわかりました。他の多くの言語でも利用できるプラグインがあります。多分あなたはそれを試してみることができます。
試してください Notepad ++ with Wine (Windowsエミュレーションレイヤー)
NP ++は、数十の言語の構文強調表示をサポートしています。
そのクリーンで高速かつ効率的で、大きなスクリプトを処理できます。 IDEスタイルのブロートウェアはありません。
これは古い質問ですが、 Sublime はプラグインをサポートする非常に優れたコードエディタであることに注意してください。 LinuxとMac、そしてWindowsで動作し、その周りに素晴らしいコミュニティが構築されています。まだnotepad ++などを使用している場合は、チェックする価値があります。