私はすべてのIDEブロットウェア(私の目的と比較して複雑すぎて不便です)にうんざりして、IDEの代わりに良いエディタを使用する方が良いかもしれないと思いました。
プロジェクトも必要なく、ビルド管理も必要なく(コマンドラインから手動でビルドしてビルドスクリプトを直接作成することを好む)、パースペクティブ、ワークスペース、モジュールなども必要ありません。
私は必要です(重要度は降順)
美しいGUI。 (これは最優先で申し訳ありませんが、私の好みではないと不便で非生産的なようです。)VIM(GUIなし)または[X]EMACS(醜いGUIを含む)を提供しないでください。奇妙なキースキーム(VIMなど)、コマンドモード(またはオプションで有効になっており、エディタの使用には重要ではありません)などはありません。
手動で定義された縮小可能領域(C#と同様)(特殊マクロとして定義され、コメントにエスケープされます(すべての言語))すべての言語。これが最も重要な要件です。最初の編集者と同時にこれを実現した編集者を見つけたらうれしいです。私が覚えている限り、WindowsではUltraEditにこの機能がありましたが、わかりません(更新:UExをインストールしたため、その機能が見つかりません)。
シンプルでスイスの時計のように信頼できるリファクタリングで、「マルチファイル検索とステロイドの置き換え」でよりよく説明されています。
構文強調。
対応する左/右角括弧/中括弧/ラベル/引用符/など。ペアが強調表示されました。
オートコンプリート。シンプルで事前ベースです。ポイントをクリックしてCtrl + Spaceを押すと、クラスメンバが表示されるIDEとして機能することをお勧めしますが、1〜4つの機能があると、この機能が不足する可能性があります。
コードスライス/マクロ。
ポイント2の説明:
C#に精通している人は#region/#endregionディレクティブを知っているでしょう。コードの任意の場所に配置でき、エディタは区切りブロックを1行に縮小し(タイトルを開始ディレクティブ引数として指定)、必要に応じて拡張するオプションを提供します(ほとんどの最新エディタと同様に、ブロックを使用して実行します。することができます)。言語と同様に、関数の本文も同様ですが、必要な特定のコードブロックを使用してこれを実行できるようにしたいです。
IMHOはすべての言語で簡単に実装できます(エディタでは言語ブロックのコード折りたたみがすでに実装されています)、言語解析は必要ありません。領域定義ディレクティブ構文は、言語のコメント行構文を介してこれらのディレクティブをエスケープすることによってエディタによって提供できます。
たとえば、NetBeans IDEにはJava用の機能があり、ここで詳しく説明します。 http://wiki.netbeans.org/FaqCustomCodeFolds しかし、残念ながら、NetBeansでは、これはScalaなどの言語ではなく、Java(または他の一部)の言語でのみ機能します。
私は主にScalaコードを書いていますが、それを書いている間、これが言語に拘束されていない機能で利用できない理由を望んでいますが、私は見ません。行に「(何でも)#region」が含まれている場合 - それは可能な行に「#region」の後に何かがある場合は折りたたまれた領域の始まりです - これは領域のタイトルであり、行に「(any)#endregion」が含まれていますされた場合 - これは領域の終わりです。始点とその終点を見つけて縮小します。ユーザーは「(any)」を言語固有のコメント記号に置き換えることができます。
更新:答えが見つかりました(より豊富な形式で回答をまとめて共有するためにここに含めました):
良いアドバイスがたくさんあります。 (私はSciTEを試してみて、気分が良くなったときにEMACSとVIMを学びようとしています)。私もグーグルして面白い事実を見つけました。電子テキストエディタ(オープンソースのwxWidgetsベース(クロスプラットフォームを意味し、正常に構築およびインストールされました)Fedora 10からそしてUbuntu 9.04で)マイクテキストコンパニオンWindowsクローン)。
ところで今答えを見つけましたね。ありがとうベルシュミット 提案、はいケイト。
Scalaのポイント#2(上記の質問)を取得するには(私が説明したように他の言語にも簡単に適用できます)、「/usr/share/kde4/apps/katepart/」に構文2行を追加します。スカラー.xml":
<RegExpr attribute="Decimal" context="#stay" String="//#region.*$" beginRegion="Region1"/>
<RegExpr attribute="Decimal" context="#stay" String="//#endregion.*$" endRegion="Region1"/>
このアイデアはC#構文定義ファイルcs.xmlから得られました。唯一の秘密は、アノテーション支援核が機能するためには、この行を言語アノテーションを定義する行の前に配置する必要があるということです。
驚くべきことに、Kateは以前考えたほど多くのKDEライブラリに頼っていません。クラシック(Gnome)Ubuntu 10.10の「apt-get install kate」は、単純な(MiB未満)パッケージのみをダウンロードします。
答え1
あなたがファンキーなショートカットを望んでいないと言ったことを知っていますが、あなたが望むものはGVIMの機能リストのように聞こえます。vimtutor
(G)vimがなぜそのように機能するのかを理解するのに使用する価値があるかもしれません。私も最初は怖かったのですが、今は帰りたくありません。
答え2
答え3
Ultra Editが気に入ったら、Linuxバージョンを試してみてはいかがでしょうか?それ以外の場合はKateを試してみてください。あなたの要件を満たしているかどうかはわかりませんが、これまで見た中で最も豊富で構成可能な最新のGUIエディタです(明示的に望ましくないEmacsを除く)。