私は頻繁に Scala コンソールを使用して、実際にプロジェクトにコードを書き留める前にコードを評価およびテストします。変数の内容を知りたい場合は、入力するだけで scala が評価します。しかし、入力したメソッドのコードを表示する方法もありますか?
単一行を表示する UP キーがあることは知っていますが、私が探していたのは、コード全体を一度に表示することです。
私は頻繁に Scala コンソールを使用して、実際にプロジェクトにコードを書き留める前にコードを評価およびテストします。変数の内容を知りたい場合は、入力するだけで scala が評価します。しかし、入力したメソッドのコードを表示する方法もありますか?
単一行を表示する UP キーがあることは知っていますが、私が探していたのは、コード全体を一度に表示することです。
.scala_history
最近のすべての REPL 履歴を含む、という名前のホーム ディレクトリにファイルがあります。このファイルから定期的にコードをコピーして、プロジェクトのソース ファイルに貼り付けます。REPL で個々のメソッドのコードを表示するのとまったく同じではありませんが、同じ目標を達成するのに役立つ場合があります。
REPL のいくつかの関連する機能についての議論については、この号のPaul Phillips によるコメントを参照してください(履歴のグループ化ステートメント)。
ある時点でこのロジックを実装しましたが、本当の障害は jline です。最も単純な条件下では、カーソルがどこにあるかを把握するのに十分な問題があります。大きな複数行のブロックを履歴に投入し始めると、壊れてしまいます。これと SI-2547 がコミュニティによって対処されるのを楽しみにしています。
...
これもすぐに修正できると思いますが、最近の jline の作業がどれだけうまくいくかにかかっています。私はずっと前にそれを実装しましたが、表示の問題が障害です。
これらのコメントはどちらも 2 年以上前のものなので、息を止めません。
コマンドラインからすべてのコードをロードするコマンドがわかりません。あなたができることは、:load path/to/my/file.scala
いくつかの複雑なコードをロード:load
し、ファイル内のコードを変更したときにそれを再実行することです。