2012-09-09 26 views
11

Khi sử dụng leiningen REPL, có cách nào để tạo một tệp hoặc ns tự động tải lại trong repl trên lưu tệp. Hiện tại tôi tải lại ns bằng cách gõ như sau trong repl - (use 'sample.ns :reload-all).Làm thế nào để tải lại một không gian tên trên tập tin lưu trong Leiningen REPL

Tuy nhiên tôi có thể tự động tải lại khi lưu tệp không?

+3

Bạn đang sử dụng các emacs? Bởi vì nếu có, đây là tính năng được hỗ trợ của slime/swank: http://stackoverflow.com/questions/2596222/how-to-reload-files-upon-save-when-using-swankleiningenemacs – noahlz

Trả lời

0

Clojure-Watch thư viện thực hiện những gì bạn cần. Nó quan sát một tập tin và thực hiện một số hành động. Trong trường hợp của bạn, một hành động sẽ là tải lại một không gian tên từ tệp đó. Ngoài ra, nó đòi hỏi phải viết một số mã ban đầu để khởi chạy người quan sát.

Cách này có vẻ hơi phức tạp đối với tôi. REPL đồng bằng được đưa ra trực tiếp từ Lein không phải là cách hiệu quả để phát triển. Bạn nên sử dụng một số trình chỉnh sửa thân thiện với Clojure như Emacs hoặc Lightable.

0

Hầu hết các trình chỉnh sửa chính hỗ trợ các liên kết phím nóng tùy chỉnh và có một plugin Clojure cho phép bạn kết nối với REPL hoạt động qua mạng (thông qua "nREPL"). Cá nhân, tôi sử dụng vim và do đó sử dụng vim-fireplace cho mục đích này.

Điều này có nghĩa là bạn có thể có phím nóng tùy chỉnh để tải lại bất kỳ tệp nào bạn đang chỉnh sửa khi bạn chỉnh sửa. Từ đó, nó thường tầm thường để thêm một móc tùy chỉnh tiết kiệm mà tải lại.

Các vấn đề liên quan