From d3cd6a63a0fff7cc77f26b319d61ba256aae680c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?John=20Ankarstr=C3=B6m?= Date: Sun, 7 Aug 2022 22:22:38 +0200 Subject: Add showtodo script. --- showtodo | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 showtodo (limited to 'showtodo') diff --git a/showtodo b/showtodo new file mode 100644 index 0000000..475e492 --- /dev/null +++ b/showtodo @@ -0,0 +1,27 @@ +#!/usr/bin/env perl + +use strict; +use warnings; + +# Note that this script only supports /* C-style */ comments. + +while (my $f = glob("c/*.*")) { + open my $fh, "<", $f; + my $line; + while (<$fh>) { + $line++; + next if not m{TODO:}; # Skip fast. + + next if not m{^\s*/?\*.*\s(TODO:.*)\s*(\*/)?}; + print "$f:$line: $1\n"; + next if $2; + + # Continue text if comment is not finished. + my $pad = " " x length("$f:$line: "); + while (<$fh>) { + (my $text = $_) =~ s{^\s*\*?\s*|\s*\*/}{}g; + print "$pad$text"; + last if m{\*/}; + } + } +} -- cgit v1.2.3