問題タブ [slime]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
emacs - Emacs を IDE として使用する
現在、C または C++ でコーディングしているときの Emacs のワークフローには 3 つのウィンドウが含まれます。右側の最大のものには、私が作業しているファイルが含まれています。左側は 2 つに分かれており、下部はコンパイルまたは make コマンドを入力するために使用するシェルであり、上部は多くの場合、作業中に参照したいある種のドキュメントまたは README ファイルです。Emacs の専門家が何人かいることがわかったので、完全な IDE として使用する場合、機能的に役立つ Emacs が他にあることに興味があります。具体的には、ほとんどの IDE は通常、これらの機能を何らかの形で満たします。
- ソースコードエディタ
- コンパイラ
- デバッグ
- ドキュメント検索
- バージョン管理
- クラス ルックアップやオブジェクト インスペクタなどの OO 機能
これらのうちのいくつかについては、Emacs がこれらの関数にどのように適合できるかは明らかですが、残りについてはどうでしょうか? また、特定の言語に注目する必要がある場合は、C++ にすべきだと思います。
編集:あるユーザーは、「残りはどうなるか」と言ったとき、もっと具体的にすべきだったと指摘しました。主に、効率的なバージョン管理とドキュメントの検索に興味がありました。たとえば、SLIME では、Lisp 関数のハイパースペック検索を簡単に行うことができます。C++ STL ドキュメントで何かを調べる簡単な方法はありますか (たとえば、 hash_mapの正確な構文を忘れた場合)。
emacs - Slime for Schemeに最も近いものは何ですか?
私はほとんどの開発を Common Lisp で行っていますが、Scheme に切り替えたいと思う瞬間もあります ( Lisp in Small Piecesを読んでいる間、継続で遊びたいとき、または Gauche でスクリプトを作成したいときなど)。例)。そのような状況では、私の不快感の主な原因は、私がスライムを持っていないことです (はい、あなたは私を中毒者と呼ぶかもしれません)。
スライムに最も近いスキームの対応物は何ですか? 具体的には、次のことに最も関心があります。
- Emacs の統合 (この点は明白です ;))
- 適切なタブ補完 (理想的には、cwcc TAB は call-with-current-continuation に展開する必要があります)。シンボルテーブルベースでさえあるかもしれません (つまり、私が a
let
で定義した関数に一度に気付く必要はありません)。 - ミニバッファーの関数引数のヒント (入力した場合
(map |)
(カーソル位置は で示されます))、ミニバッファーで|
見たいと思います(map predicate . lists)
- 通訳者へのフォームの送信
- デバッガーとの統合。
機能を重要度の高い順に並べました。
私の選択したスキームの実装は次のとおりです。
- MzScheme
- イカルス
- ゴーシュ
- ビッグルー
- 鶏
少なくとも彼らとうまくいったなら、それは素晴らしいことです.
emacs - Lisp In A Box-なぜサーバーを起動するのですか?
関数型プログラミング全般に慣れるためにLISPに戻ることにしました(AIクラス以来使用していません)。そこで、Lisp In A Box(前のクラスで実際に使用したもの)をダウンロードしました。 CLISPとEmacs。
私がそれを実行すると、それは言います:
ポート1617で接続されています。このREPL、兄弟を連れて行ってください。
なに?そこで、Lisp In A BoxのWebページを詳しく調べて、次のことを見つけました。
SLIMEは、ネットワークソケットを介してCommonLisp実装とインターフェイスするEmacsの統合開発環境です。SLIMEに関する多くの情報は、CLikiのSLIMEノードにあります。SLIMEのマニュアルは、PDF形式でオンラインで入手できます。
私はSLIMEが何であるかをある程度理解しています(emacsのある種の拡張ですよね?)しかし、なぜ世界でテキストエディタが独自のサーバーを起動してそれに接続しているのですか?
emacs - CLISP プログラマーはどの IDE を使用していますか?
SLIME (Emacs 用の Lisp 開発パッケージ) には CLISP 用の frame-source-location 関数が付属していないことに気付きました。そのため、デバッガー内でソースの場所に自動的にジャンプすることはできません。それを考えると、CLISP ユーザーは他の IDE を使用しているに違いないと考えました (IDE はここで少し誤解を招くと思いますが、別の Emacs パッケージを使用しているだけかもしれません)。
では、CLISP プログラマーはどの IDE/Emacs パッケージを使用しているのでしょうか?
emacs - SLIME と SWANK を使い始める: Lisp 接続が予期せず閉じられました: リモート ピアによって接続が切断されました
私は、slime-connect 関数を使用して、sbcl でリモート サーバーにアクセスしようとしていました。Marco Baringerの slime.mov ムービーのすべての手順に従いましたが、slime の ssh 接続を作成するときに行き詰まりました。これは、リモート マシンで swank サーバーを既に起動した後です。私はこのようにしました:
ssh -L 4005:127.0.0.1:4005 user@server.com
そして、ローカルSLIMEで次のエラーが発生しました:
Lisp 接続が予期せず閉じられました: リモート ピアによって接続が切断されました
...そしてリモートサーバー上:
チャネル 3: オープンに失敗しました: 接続に失敗しました: 接続が拒否されました
何が間違っている可能性がありますか?
emacs - LispBox/Slime に入力したすべての関数を保存するには?
状況: Emacs で REPL を使用しているときに、いくつかの関数を入力しました。問題: 単にバッファを保存しているときに、「; 評価が中止されました」のようなジャンクがあります。私が欲しいもの: 最新のリビジョンで入力したすべての関数の明確な説明。
それをしてもいいですか?ありがとう。
lisp - SBCL の SB-SPROF 割り当てプロファイリングをどのように使用しますか?
更新: SBCL 1.0.24 にアップグレードすると問題が解決しました。(ただし、SLIME を 11-23-2008 リビジョンにアップグレードする必要もありました。安定した 2006-04-20 リビジョンと CVS のヘッドは、SBCL 1.0.24 では動作しないようです。)
SBCL 統計プロファイラーのドキュメントには、CPU 使用率に加えてメモリ割り当てをプロファイルできることが示されています。しかし、私の人生では、些細な Lisp 形式以上のプロファイルを作成することはできませんでした。何が起こるかの例を次に示します。
この時点で、通常はハングします。
誰かがこれで成功しましたか?
windows - Windows で common-lisp GUI を入手するにはどうすればよいですか?
私は CLISP と Slime で Emacs を使用しており、画面上に絵を描きたいと思っています。具体的にはグラフを描くことを考えていますが、基本的な形を描いて操作できるものなら何でも始めることができます。
windows - Emacs + Slime + Clojure + Windows のセットアップで、clojure-auto のロードに失敗する
この開発環境をセットアップするには、この非常に役立つガイドに従いました。emacs.batを実行すると、Emacs で次のエラーが発生します。
ファイル エラー: ロード ファイル、clojure-auto を開けません
残念ながら、私は Clojure と Emacs の両方にまったく慣れていないので、どこから探し始めればよいかを理解するための助けも役に立ちます。
また、補足として、ガイドの最後の手順は次のとおりです。
emacs.bat ファイルを使用して Emacs を起動します。次に、「Mx slime」と入力するだけで、REPL が表示されます。
Emacs のドキュメントによると、Mx は Meta キー + x になります。ただし、Windows の Meta キーについては不明です。Control と書いてありますが、それは C+x なので、Shift だと思います。M+もやってみた!それはシェルコマンドだと思っていましたが、うまくいきませんでした。おそらく誰かがコメントで確認できます。
更新:コメントのdfaから: "meta is Alt" が機能します。ありがとうございました。
更新: Rayne からの非常に役立つ情報:
あなたの emacs の経験が間違った方向に進んでいるなら、Clojure をあきらめないでください。Eclipse 用の IDEA Clojure-dev 用の La Clojure と、NetBeans 用の Enclojure が常にあります。
emacs - SLIME の REPL からパッケージを変更 - 壊れていますか?
私は最近 SLIME の実験を始めたばかりで、何か間違っているのか、それとも SLIME の現在のスナップショットが壊れているのか分からない問題を発見しました。
問題: (!p を使用して) パッケージを変更しようとすると、使用されているバックエンドに関係なく、常にエラーがスローされます。
SBCL からのエラーは次のようになります。
値 #("FOO" 0 3 (SWANK-IO-PACKAGE::FACE NIL)) は (OR (VECTOR CHARACTER) (VECTOR NIL) BASE-STRING SYMBOL CHARACTER PACKAGE) 型ではありません。
【TYPE-ERROR型の条件】
CLISP と CCL は同じエラーをスローしますが、言葉遣いが少し異なります。
Windowsで実行していますが、Linuxで試しても同じことが起こります。.emacs ファイルで何かを怠っているのか、SLIME の現在のバージョンに問題があるのではないかと思います。昨日からSLIMEを使い始めたばかりなので、比較できるような過去の経験がありません。
何か案は?