mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-24 16:42:05 +00:00
34 lines
844 B
Perl
34 lines
844 B
Perl
|
#!/usr/bin/perl
|
||
|
|
||
|
use strict;
|
||
|
|
||
|
# Find double whitespace such as "a, b, c" that looks very ugly and annoying.
|
||
|
# But skip double whitespaces if they are used as an alignment - by comparing to surrounding lines.
|
||
|
|
||
|
my @array;
|
||
|
|
||
|
while (<>)
|
||
|
{
|
||
|
push @array, $_;
|
||
|
}
|
||
|
|
||
|
my $ret = 0;
|
||
|
|
||
|
for (my $i = 1; $i < $#array; ++$i)
|
||
|
{
|
||
|
if ($array[$i] =~ ',( {2,3})[^ /]')
|
||
|
{
|
||
|
# https://stackoverflow.com/questions/87380/how-can-i-find-the-location-of-a-regex-match-in-perl
|
||
|
|
||
|
if ((substr($array[$i - 1], $+[1] - 1, 2) !~ /^[ -][^ ]$/) # whitespaces are not part of alignment
|
||
|
&& (substr($array[$i + 1], $+[1] - 1, 2) !~ /^[ -][^ ]$/)
|
||
|
&& $array[$i] !~ /(-?\d+\w*,\s+){3,}/) # this is not a number table like { 10, -1, 2 }
|
||
|
{
|
||
|
print(($i + 1) . ":" . $array[$i]);
|
||
|
$ret = 1;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
exit $ret;
|