========== 通常の編集 ========== オートセーブ ============ IntelliJ を新しく使い始めた人にとって一番意外なのは自分で保存できないように見えることだろう。たしかに、 IntelliJ は一定時間が経過するか(初期値は何もしないで 15 秒)、幾つかのクリティカルな部分(フォーカスが外れたときや、何かを実行したときなど)において自動的に保存を行う。 多くの人がこれを初めて見たときにとても奇妙思うだろうけど、次第に好きになるはずです。もしそうならなければ、 ``Settings`` -> ``Appearance & Behaviour`` -> ``System Settings`` から無効に出来ます。もしあなたが変更を元に戻したい場合、 `Local History `_ 機能が使えます。 補完 ==== あなたがタイピングしているとき、 Cursive は現在のタイピングされているシンボルに対して自動補完をサジェストします。シンボル、キーワード、ネームスペース、などに対して自動補完を行います。関数のパラメーターとその関数がどのネームスペースから提供されるのかを補完リストの中で見ることができます。タブを押すと、ハイライトされているオプションを選び(もし何も選択していなければ一番上のオプション)現在のシンボルをそれに置き換えます。エンターを押すと、ハイライトされているオプションを選び、現在のシンボルを削除することなくダイレクトに文字列を挿入します。 Cursive は補完文字列の何処にでもあなたがタイプした文字列を一致させるので、先頭文字から入力する必要はありません。 .. TODO: gif here クラス補完 ========== まだインポートされていないクラス名をあなたが補完入力した場合、 Cursive はそれをインポートします。 Cursive がクラス名を入力するのを見つけられなかった場合 [#]_ 、それをインポートするか尋ねます。 .. TODO: gif here REPL の中でも同様の動作をします。 .. TODO: gif here Coming Soon: 将来的に Clojure のシンボルを自動で require する機能を提供します。 リネーム ======== また Cursive は Shift + F6 を使うことでシンボルのリネームをすることができます。これは定義と使用されている全ての箇所をリネームします。 .. TODO: gif here ファイルをまたいでいる場合も同様です。 .. TODO: gif here メソッドの実装とオーバーライド ============================== Java のインターフェイスを実装するもしくは、クラスを ``proxy`` で継承する場合、 Cursive はあなたが作成する特定のクラスに必要なメソッドをスタブとして埋めることができます。これらにはメソッドを実装する、またはメソッドをオーバーライドする、というふたつのオプションがあります。通常、実装する場合は特定のクラスに必要な、実装する必要のある全てのメソッド(インターフェイスメソッドと基底クラスの抽象メソッド)一覧にします。そして、オーバーライドした基底クラスのメソッド(プロキシの基底クラスか Object )から選択してオーバーライドすることができます。この機能は現在 ``proxy``, ``reify``, ``defrecord`` と ``deftype`` をサポートしています。 .. TODO: gif here Coming Soon: ``protocols`` のための実装機能を提供します。 使い方から関数を作成する ======================== Cursive は同様に関数のスタブを使い方の例から作成できます。これは同じファイル内でも違うネームスペースでも機能します。 .. TODO: gif here .. [#] つまり、補完で入力せずに全て手動でインプットするか、コピー & ペーストを行った場合