Skip to content

Commit 349c8bf

Browse files
author
Steve Purcell
committed
Really stupid simple linter executable
1 parent dcf1bca commit 349c8bf

File tree

1 file changed

+21
-0
lines changed

1 file changed

+21
-0
lines changed

bin/sqlint

+21
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
#!/usr/bin/env ruby
2+
3+
require 'pg_query'
4+
5+
ARGV.each do |filename|
6+
contents = File.read(filename)
7+
begin
8+
PgQuery.parse(File.read(filename))
9+
rescue PgQuery::ParseError => e
10+
offset = e.location
11+
before_error = contents[0...(offset-1)]
12+
lines = before_error.split("\n")
13+
line_number = lines.size
14+
column_number = lines.last.size
15+
message_lines = e.message.split("\n")
16+
puts [filename, line_number, column_number, message_lines.shift].join(":")
17+
message_lines.each do |line|
18+
puts " " + line
19+
end
20+
end
21+
end

0 commit comments

Comments
 (0)