allow linting from stdin

This commit is contained in:
Andrey Listopadov 2025-03-06 01:21:28 +03:00 committed by Phil Hagelberg
parent 9881e0d9ad
commit e229f93fc1
2 changed files with 11 additions and 5 deletions

View File

@ -33,7 +33,10 @@
server (doto {} initialize)]
(var should-err? false)
(each [_ filename (ipairs filenames)]
(let [file (files.get-by-uri server (.. "file://" filename))]
(let [uri (case filename
"-" :stdin
_ (.. "file://" filename))
file (files.get-by-uri server uri)]
(lint.add-lint-diagnostics server file)
(each [_ {: message : range : severity} (ipairs file.diagnostics)]
(set should-err? true)

View File

@ -13,10 +13,13 @@ in the \"server\" object."
(λ read-file [server uri]
(case (?. server.preload uri)
preload {: uri :text preload}
_ (case (io.open (utils.uri->path uri) "r")
file (let [text (file:read :*a)]
(file:close)
{: uri : text}))))
_ (case uri
:stdin (let [text (io.read :*a)]
{: uri : text})
_ (case (io.open (utils.uri->path uri) "r")
file (let [text (file:read :*a)]
(file:close)
{: uri : text})))))
(λ get-by-uri [server uri]
(or (. server.files uri)