История изменений
Исправление Nervous, (текущая версия) :
Подсветит varr как переменную?
Да, если сконфигурировать линтер (clj-kondo
), который clojure-lsp
использует под капотом (можно использовать его отдельно, например, в конвейере CI). Унихвай, понемаешь.
Изначально в этом коде
(ns dev.1brc)
(defmacro mydef [a v]
`(def ~a ~v))
(mydef varr 123)
varr
все упоминания varr
будет подчёркнуты как ошибка по причине clj-kondo [unresolved-symbol]: Unresolved symbol: varr
Если добавить правило в конфиг линтера (на уровне системы, пользователя или проекта) — ошибка пропадёт:
;; my-project/.clj-kondo/config.edn
{:lint-as {dev.1brc/mydef clojure.core/def}}
Кладём конфиг в гит, профит. (clojure-lsp
автоматически находит и применяет эти конфиги для зависимостей, в которых они есть.)
Исправление Nervous, :
Подсветит varr как переменную?
Да, если сконфигурировать линтер (clj-kondo
), который clojure-lsp
использует под капотом (можно использовать его отдельно, например, в конвейере CI). Унихвай, понемаешь.
Изначально в этом коде
(ns dev.1brc)
(defmacro mydef [a v]
`(def ~a ~v))
(mydef varr 123)
varr
все упоминания varr
будет подчёркнуты как ошибка по причине clj-kondo [unresolved-symbol]: Unresolved symbol: varr
Если добавить правило в конфиг линтера (на уровне системы, пользователя или проекта) — ошибка пропадёт:
;; my-project/.clj-kondo/config.edn
{:lint-as {dev.1brc/mydef clojure.core/def}}
Кладём конфиг в гит, профит.
Исходная версия Nervous, :
Подсветит varr как переменную?
Да, если сконфигурировать линтер (clj-kondo
), который clojure-lsp
использует под капотом (можно использовать его отдельно, например, в конвейере CI). Унихвай, понемаешь.
Изначально в этом коде
(ns dev.1brc)
(defmacro mydef [a v]
`(def ~a ~v))
(mydef varr 123)
varr
все упоминания varr
будет подчёркнуты как ошибка по причине clj-kondo [unresolved-symbol]: Unresolved symbol: varr
Если добавить правило в конфиг линтера (на уровне системы, пользователя или проекта) — ошибка пропадёт:
{:lint-as {dev.1brc/mydef clojure.core/def}}