作業中の Clojure コード (Leiningen プロジェクト) を 1.2 から 1.3 に移植していますが、問題があります。コード自体が機能しなくなったことに加えて、次のような警告メッセージが多数表示されます。
Warning: *tooltip-width* not declared dynamic and thus is not dynamically rebindable,
but its name suggests otherwise. Please either indicate ^:dynamic *tooltip-width*
or change the name.
これは、状態を維持するために使用している変数に正しい変更を加えたように見えるにもかかわらず、発生しています。たとえば、上記のエラーの場合、コードには既に次のものが含まれています。
(def ^:dyanamic *tooltip-width* (* 1.8 *slip-width*))
これらのエラーは 2 つの場所で発生しlein swank
ます。次に、Emacs REPL から、core.clj
ファイルをコンパイルした後、 C-c C-w
.
完全に完了するために、ここに私のproject.clj
ファイルがあります:
(defproject infwb "1.0.0-SNAPSHOT"
:description "an evolving, experimental workspace for manipulating infocards"
:main infwb.core
:dependencies [[org.clojure/clojure "1.3"]
[seesaw "1.2.1"]
[org.clojars.gw666/sxqj "beta2"]
[org.clojars.gw666/piccolo2dcore "1.3"]
[org.clojars.gw666/piccolo2dextras "1.3"]
[com.miglayout/miglayout "3.7.4"]
]
:dev-dependencies [[swank-clojure "1.3.2"]
[org.clojars.weavejester/autodoc "0.9.0"]]
:autodoc {:name "Infocard Workbench (InfWb)",
:web-src-dir "https://github.com/gw666/infwb/blob"})
コードを機能させることに加えて、これらのエラーが発生する理由と、両方の場所でエラーが発生する理由を理解したいと思います。ご協力いただきありがとうございます。