Re: ctags(1): missing space between tag and line number

2017-10-10 Thread Anton Lindqvist
Ping

On Thu, Oct 05, 2017 at 10:41:09AM +0200, Anton Lindqvist wrote:
> Hi,
> Running `ctags -x` on a file including a tag which satisfies strlen(tag)
> >= 16 and line number >= 1000 corrupts the output since there's no space
> between the tag and line number. Therefore, add a space between them
> just like ectags and uctags in ports does.
> 
>   $ ctags -x /sys/dev/usb/umass.c | grep dump # before
>   umass_bbb_dump_cbw1830 /sys/dev/usb/umass.c umass_bbb_dump_cbw(struct 
> umass_softc *sc, struct umass_bbb_cbw *cbw)
>   umass_bbb_dump_csw1850 /sys/dev/usb/umass.c umass_bbb_dump_csw(struct 
> umass_softc *sc, struct umass_bbb_csw *csw)
>   umass_dump_buffer1867 /sys/dev/usb/umass.c umass_dump_buffer(struct 
> umass_softc *sc, u_int8_t *buffer, int buflen,
>   $ ./obj/ctags -x /sys/dev/usb/umass.c | grep dump # after
>   umass_bbb_dump_cbw 1830 /sys/dev/usb/umass.c umass_bbb_dump_cbw(struct 
> umass_softc *sc, struct umass_bbb_cbw *cbw)
>   umass_bbb_dump_csw 1850 /sys/dev/usb/umass.c umass_bbb_dump_csw(struct 
> umass_softc *sc, struct umass_bbb_csw *csw)
>   umass_dump_buffer 1867 /sys/dev/usb/umass.c umass_dump_buffer(struct 
> umass_softc *sc, u_int8_t *buffer, int buflen,
> 
> Comments? OK?
> 
> Index: print.c
> ===
> RCS file: /cvs/src/usr.bin/ctags/print.c,v
> retrieving revision 1.7
> diff -u -p -r1.7 print.c
> --- print.c   4 Mar 2012 04:05:15 -   1.7
> +++ print.c   5 Oct 2017 08:39:54 -
> @@ -99,7 +99,7 @@ put_entries(NODE *node)
>   printf("%s %s %d\n",
>   node->entry, node->file, (node->lno + 63) / 64);
>   else if (xflag)
> - printf("%-16s%4d %-16s %s\n",
> + printf("%-16s %4d %-16s %s\n",
>   node->entry, node->lno, node->file, node->pat);
>   else
>   fprintf(outf, "%s\t%s\t%c^%s%c\n",



ctags(1): missing space between tag and line number

2017-10-05 Thread Anton Lindqvist
Hi,
Running `ctags -x` on a file including a tag which satisfies strlen(tag)
>= 16 and line number >= 1000 corrupts the output since there's no space
between the tag and line number. Therefore, add a space between them
just like ectags and uctags in ports does.

  $ ctags -x /sys/dev/usb/umass.c | grep dump # before
  umass_bbb_dump_cbw1830 /sys/dev/usb/umass.c umass_bbb_dump_cbw(struct 
umass_softc *sc, struct umass_bbb_cbw *cbw)
  umass_bbb_dump_csw1850 /sys/dev/usb/umass.c umass_bbb_dump_csw(struct 
umass_softc *sc, struct umass_bbb_csw *csw)
  umass_dump_buffer1867 /sys/dev/usb/umass.c umass_dump_buffer(struct 
umass_softc *sc, u_int8_t *buffer, int buflen,
  $ ./obj/ctags -x /sys/dev/usb/umass.c | grep dump # after
  umass_bbb_dump_cbw 1830 /sys/dev/usb/umass.c umass_bbb_dump_cbw(struct 
umass_softc *sc, struct umass_bbb_cbw *cbw)
  umass_bbb_dump_csw 1850 /sys/dev/usb/umass.c umass_bbb_dump_csw(struct 
umass_softc *sc, struct umass_bbb_csw *csw)
  umass_dump_buffer 1867 /sys/dev/usb/umass.c umass_dump_buffer(struct 
umass_softc *sc, u_int8_t *buffer, int buflen,

Comments? OK?

Index: print.c
===
RCS file: /cvs/src/usr.bin/ctags/print.c,v
retrieving revision 1.7
diff -u -p -r1.7 print.c
--- print.c 4 Mar 2012 04:05:15 -   1.7
+++ print.c 5 Oct 2017 08:39:54 -
@@ -99,7 +99,7 @@ put_entries(NODE *node)
printf("%s %s %d\n",
node->entry, node->file, (node->lno + 63) / 64);
else if (xflag)
-   printf("%-16s%4d %-16s %s\n",
+   printf("%-16s %4d %-16s %s\n",
node->entry, node->lno, node->file, node->pat);
else
fprintf(outf, "%s\t%s\t%c^%s%c\n",