Closed pombredanne closed 3 months ago
@keshav-space can you help me there?
@keshav-space can you help me there?
- we should test if a file is source code before running any of ctags and xgettext. There is https://github.com/nexB/typecode/blob/92feb7be3a87c1b541e7034c3f9797c96bc52305/src/typecode/contenttype.py#L683 for ty=his
- we may want to keep the tests expectations flexible for various versions of the backing tools as they all seem to behave differently.
Ack, will add the necessary change in this PR.
So what about file names that have a space in it, or perhaps have a semicolon? Those are valid file names and xgettext
will happily process them and you will get something like this (I just renamed a file and then ran xgettext
):
#: fdisk:big.c:234 fdisk:big.c:2942
I am not sure how common file names with semicolons are, but file names with spaces are not uncommon.
As far as I can tell partition()
will not properly process this:
>>> _, _, bla = a.partition('#:')
>>> bla.partition(':')
(' fdisk', ':', 'big.c:234 fdisk:big.c:2942')
So what about file names that have a space in it, or perhaps have a semicolon? Those are valid file names and
xgettext
will happily process them and you will get something like this (I just renamed a file and then ranxgettext
):#: fdisk:big.c:234 fdisk:big.c:2942
I am not sure how common file names with semicolons are, but file names with spaces are not uncommon.
As far as I can tell
partition()
will not properly process this:>>> _, _, bla = a.partition('#:') >>> bla.partition(':') (' fdisk', ':', 'big.c:234 fdisk:big.c:2942')
thinking a bit more: the only certainty that you have is that the part after the last :
should be a number, so perhaps rewriting it to rpartition()
would be the cleanest way.
This PR addresses these issues:
11 though we still strip leading and trailing white spaces.
13
14
@armijnhemel FYI since you reported these!