jjmccollum / teiphy

A Python package for converting TEI XML collations to NEXUS, BEAST 2.7 XML, and other formats
MIT License
11 stars 3 forks source link

docs for command line flags #42

Closed rbturnbull closed 2 years ago

rbturnbull commented 2 years ago

Hi @jjmccollum - in the docs you have shown examples with this convention for the CLI:

-t"reconstructed" -t"defective" -t"orthographic" -t"subreading" I think it might be more common to use this convention with spaces between the tag and the input.

-t reconstructed -t defective -t orthographic -t subreading This way we don't need to have the quotes. Both work equally well but this might be clearer and more standard. What do you think?

jjmccollum commented 2 years ago

@rbturnbull For some reason, I thought that this wasn't working with the spaces before, but when I try it now, it seems to be working fine. So yeah, it would be better to use the quoteless version with quotes in the docs.

jjmccollum commented 2 years ago

@rbturnbull Actually, now I know why I was having problems before: If I try to specify * as a suffix for first-hand witnesses via

-s *

I get an error because Typer is interpreting the asterisk as a wildcard just like the command line would. The problem is, while I could escape this in the command as \* or "*" or '*', Typer doesn't escape the character like the command line does. I'm not sure how to fix this, but I'm hoping that there's a way to do this with Typer, since * is a pretty standard suffix for first-hand witnesses.

rbturnbull commented 2 years ago

This command seems to be working for me:

teiphy -t reconstructed -t defective -t orthographic -t subreading example/ubs_ephesians.xml example.nexus -s "*"

It might be a shell issue on Windows. I think we can say in the docs that if -s "*" doesn't work for you, then you can use -s"*".

rbturnbull commented 2 years ago

are you using powershell?

jjmccollum commented 2 years ago

I was just using Command Prompt. It looks like -s"*" works, but -s "*" does not. So that should be clarified in the docs.

jjmccollum commented 2 years ago

@rbturnbull Okay, I'm nearly finished updating the docs. I've also updated the sections on supported formats and updated the XML examples to reflect the simplified ubs_ephesians.xml example file. The only question I have concerns the example command at the end of advanced.rst:

teiphy -t reconstructed -t defective -t orthographic -t subreading -m lac -m overlap -s"*" -s T -s /1 -s /2 -s /3 --fill-correctors --states-present --verbose example\ubs_ephesians.xml ubs_ephesians.nxs

Will this command only work in the poetry shell? In other words, will poetry run teiphy be required in place of teiphy if the user is entering the command on the command line, or will the installation of teiphy set up a teiphy command that can be invoked from the command line?

Also, now that the PyPI project has been launched, is the following sufficient to replace the installation notes in readme.rst?

The software can be installed using ``pip``

.. code-block:: bash

    pip install teiphy