Tôi đang sử dụng rlwrap, nhưng tôi không có tab hoàn thành, và các ký tự có dấu bị xao lãng. Đây là trên OSX 10.6 trong Terminal.app.Cách được khuyến nghị để chạy REPL clojure độc lập là gì?
Trả lời
Sử dụng cờ -f
để rlwrap để bật hoàn thành tab. Nó sẽ được hoàn thành tĩnh mặc dù, dựa trên một danh sách các biểu tượng tĩnh trong một số tập tin bạn chỉ định. Nếu bạn muốn hoàn thành động (dựa trên bất kỳ biểu tượng nào hiện đang được xác định trong REPL đang chạy của bạn), bạn nên thử Emacs + SLIME hoặc tương đương.
Trong mọi trường hợp, đây là một cách để tạo danh sách các biểu tượng để hoàn thành tab. Bạn sẽ phải tạo lại tệp này theo thời gian vì các biểu tượng mới được thêm vào lõi của Clojure trong mọi phiên bản. (Mã này làm việc với chảy máu cạnh clojure-contrib; clojure.contrib.io
được gọi duck-streams
trong các phiên bản trước đó.)
user> (use 'clojure.contrib.io)
nil
user> (with-out-writer "/home/user/.clj-tabcompletion"
(doseq [[sym _] (ns-publics 'clojure.core)]
(println sym)))
nil
Sau đó:
$ rlwrap -f ~/.clj-tabcompletion java -jar clojure.jar
Clojure 1.2.0-master-SNAPSHOT
user=> def<TAB>
definline defmacro defmethod defmulti defn defonce defprotocol defstruct deftype
user=> def
Nếu thiết bị đầu cuối của bạn được mangling ký tự có dấu, bạn có thể có một mã hóa hoặc vấn đề địa phương. Việc này ổn với tôi. Tôi không sử dụng OS X và không biết bạn sử dụng thiết bị đầu cuối nào, vì vậy tôi không thể trợ giúp. Trong Konsole trong Linux, bên trong rlwrap:
user=> (println "àèìòùáéíóúäëïöüâêîôûãõñ")
àèìòùáéíóúäëïöüâêîôûãõñ
nil
user=> (println "牛が牧場で草を食べている。")
牛が牧場で草を食べている。
nil
ClojureX cố gắng trở thành những gì bạn muốn cho người dùng OS X. Tôi đã không có kinh nghiệm với nó bản thân mình (tôi là một người dùng Linux), nhưng tôi theo ấn tượng rằng các ClojureX folks sẽ sẵn sàng giúp đỡ bạn nếu bạn chạy vào các vấn đề lạ (nhân vật mangling? Tôi không nhận được rằng, có hoặc không có rlwrap ...).
Cập nhật: Dưới đây là một liên kết đến an announcement on the Clojure group lại: một số thay đổi gần đây trong ClojureX ...
Có một lựa chọn thứ hai cho các chức năng readline giống như trong giao diện điều khiển ứng dụng JVM-based - jline. Sử dụng một cái gì đó như
java -cp $CLASSPATH jline.ConsoleRunner clojure.main
(với jline.jar bao gồm trong $CLASSPATH
, tất nhiên) nếu bạn muốn dùng thử.
Ngoài ra, tôi không nghĩ rằng tôi đã từng nghe về hoàn thành tab trong REPJs Clojure độc lập. Hầu hết mọi người sử dụng Emacs/Aquamacs + SLIME, Vimclojure hoặc một số Java IDE với một plugin Clojure cho những thứ như thế.
Vâng, một số người khác đã nghe về nó không sao (xem câu trả lời của Brian). Và tôi đã tìm thấy this description về cách thiết lập hoàn thành tab bằng jline. Và Tôi đã kiểm tra các nguồn cho ClojureX - nó đã thiết lập hoàn thành tab cho bạn. Điều đó làm cho phần này của câu trả lời ban đầu của tôi hơi sai lầm, tôi đoán ... Nhưng thực tế vẫn là ClojureX là một cược rất an toàn, có thể giúp bạn tránh được rắc rối khi tự cấu hình mọi thứ.
- 1. Cách được khuyến nghị để triển khai Yesod là gì?
- 2. Cách được khuyến nghị để có được winhttp.h là gì?
- 3. Các cách được khuyến nghị để gỡ lỗi chức năng Clojure?
- 4. là SICP vẫn được khuyến nghị?
- 5. Cách khuyến nghị làm ngày giờ trong Perl là gì?
- 6. Cách được khuyến nghị nhiều hơn để chuyển hướng 301 trong asp.net là gì?
- 7. Cách được khuyến nghị để bỏ qua các ứng dụng GUI của Python là gì?
- 8. bài được khuyến nghị/giấy tờ về nghề lập trình
- 9. Cách được khuyến nghị để móc Win32 API cho một ứng dụng thương mại là gì?
- 10. Cách được khuyến nghị để kết nối với MySQL từ Go là gì?
- 11. Cách được khuyến nghị để giảm chỉ mục bằng Mongoose là gì?
- 12. Cách được khuyến nghị để mã hóa trong Oracle là gì?
- 13. Cách tiếp cận được khuyến nghị để tạo kiểu cho SlickGrid là gì?
- 14. COM + vẫn được khuyến nghị?
- 15. Phong cách mã hóa được khuyến nghị cho PowerShell là gì?
- 16. Cách được khuyến nghị lặp lại vùng chứa trong C++ 11 là gì?
- 17. Khuyến nghị cho C Profilers?
- 18. Cách tiếp cận được khuyến nghị để tải tệp hình ảnh nhị phân độc quyền vào NSImage?
- 19. Giao diện R được khuyến nghị cho tích hợp Perl là gì?
- 20. Phương pháp được khuyến nghị để thoát HTML trong Java
- 21. Chuỗi công cụ độc lập là gì?
- 22. Cách được khuyến nghị hiện tại để thực hiện cập nhật một phần bằng API Web là gì?
- 23. Cách được khuyến nghị để hỗ trợ nhiều ngôn ngữ trong chương trình C# của tôi là gì?
- 24. Cách được khuyến nghị để quản lý cặp khóa tên mạnh cho một dự án mã nguồn mở là gì?
- 25. Clojure REPL không khởi chạy tại dấu nhắc lệnh Windows
- 26. Symfony2 và Vim khuyến nghị
- 27. Khuyến nghị cho Java + OpenPGP?
- 28. khuyến nghị cách để khởi tạo biến trong nếu khối
- 29. Nhóm regex độc lập là gì?
- 30. Django Facebook Connect App Khuyến nghị