より良い応答

WBOY
リリース: 2016-06-23 13:17:17
オリジナル
1114 人が閲覧しました

動的言語の使用に慣れてきたら、repl でいくつかの単純なアイデアを検証するためにさまざまな試みを行うことに非常に熱心です。 Pythonのpython、rubyのirb、phpのphp -a、nodejsのnodeなど、ほとんどの動的言語にはreplが組み込まれており、haskellのような静的言語にもrepl:ghciがあります。 ただ、これらの組み込み Repl は比較的シンプルなので、より良い エクスペリエンスを提供するための代替ツール (構文の強調表示、インスタント出力、シンプルなコード補完、プロンプトなど) がいくつか存在します。

php

php デフォルトは php -a ですが、これは機能が不十分です。コンテンツを出力するにはエコーする必要があります。 boris はより良い代替手段であり、echo を入力せずに直接出力し、基本的な構文の強調表示機能もあります (出力のみが強調表示され、入力は強調表示されません)。 bolis にはコード補完がありません。

MAC に付属の php には必要なコンポーネントがいくつか欠けているため、boris を使用できなくなります。 brew: brew install php で php を使用することをお勧めします。

[1] boris> class A {[1]     *> function t(){[1]     *> return "test";[1]     *> }[1]     *> }// NULL[2] boris> $a = new A;// object(A)(//// )[3] boris> $a->t();// 'test'
ログイン後にコピー

python

Python 自体のバージョンも使いにくいですが、Python には php よりも多くの代替ツールがあり、非常に強力で、Python の repl だけでなく単独でツールとして使用できるほど強力です。

bpython は非常に優れた代替手段であり、適切な強調表示だけでなく、タブ キーのスマート補完やプロンプトも提供します。単純な実験をしたいだけの場合は、Python ではなく bpython を使用することをお勧めします。

bpython

ipython のターミナルは、構文の強調表示がないだけでなく、コード プロンプトも非常に一般的です 1 。ただし、ipython はまったく異なるツールです。詳細については、公式 Web サイトを参照してください。これは、MATLAB とよく似た機能を備えた強力な Python IDE です。 。結局のところ、ポスドクを採用できるプロジェクトは決してプール内にあるものだけではありません 2 。

ipython ノートブックは jupyter をベースにしており、豊富な機能を備えています。 Jupyter は現在、bash、haskell、julia、python、r、ruby、および scala をサポートしています。お試しください

jupyter

最近の 4.1 アップデートでは、コマンド パレットなどの崇高なテキストやアトム、より強力な検索と置換など、最新のエディターの機能がいくつか提供されています。詳細については、上記のブログ投稿を参照してください。

ruby

Ruby に付属する irb のデフォルト機能は非常に単純ですが、irbrc が設定された後は、一般的なハイライト機能やプロンプト機能も実装できます。ただし、pry は Ruby の世界でよく使用されます。pry のデフォルト設定で十分です。pry のスタイルと機能を完全にカスタマイズすることもできます。 pry はいくつかの便利なプラグインを提供します。 pry-theme のようなプロジェクトもあります。ルビーの世界における美の追求は常に比類のないものです。

pry-rails-console

nodejs

nodejs 組み込みノードに加えて、サードパーティの Repl 拡張機能もいくつかあります。ネッシュは最高の一人です。ノードの世界は最近急速に発展しており、開発者は非常に熱心で、プラグインやライブラリが際限なく登場していると言わざるを得ません。 nesh プラグイン

npm install -g nesh# Run neshnesh# Run nesh with CoffeeScriptnesh -c# Run nesh with ES6 through Babelnesh -b
ログイン後にコピー

i.js は ipython からインスピレーションを得たプロジェクトですが、jupyter に基づいたものではありません。興味のある方は試してみると良いかもしれません。

i.js のスクリーンショット

その他

しかし、Linux の世界には、sqlite3 や ftp など、コマンドを表示するという基本的な機能さえ提供していない、非常に粗雑なコマンド ライン ツールがまだたくさんあります。上矢印キーで履歴を削除すると、しばらく調子が悪くなります。交換するにはどうすればよいですか?

rlwrap はこの問題を解決するツールです。

[0] % sqlite3 production.sqlite3SQLite version 3.8.4.1 2014-03-11 15:27:36Enter ".help" for usage hints.sqlite> .tablesalbums             images             usersarticles           schema_migrationssqlite> ^[[A^[[A^[[A^[[A
ログイン後にコピー
[1] % rlwrap sqlite3 production.sqlite3SQLite version 3.8.4.1 2014-03-11 15:27:36Enter ".help" for usage hints.sqlite> .tablesalbums             images             usersarticles           schema_migrationssqlite> .tables
ログイン後にコピー

rlwrap を使用すると、矢印キーが利用可能になります。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート