mickey695 <mickey...@gmail.com> added the comment:

Well, it has been more than the 2 weeks I promised however now I finally have 
time to look into this.

I did some fuzzing to build a list quickly and the following ASCII characters 
can not be used as part of the argument name:
exclamation mark(!)
period(.)
colon(:)
opening square bracket([)
opening/closing curly brackets({})

also, the argument name may not start with digits from zero to nine(0-9)

Basically what needs to be changed is arg_name under the section "Format String 
Syntax" in \Doc\library\string.rst

Problem is, I really don't understand the syntax of the Python/sphinx formal 
language.

The following expression is what I came up with:
arg_name ::= [^`decinteger`] [<any character except "!" | "." | "[" | "{" | 
"}"> | `integer` ]+

If anyone from the documentation team could look into it I would be grateful.

Moreover, I think attribute_name should probably be changed as it does not have 
to be a valid identifier. In fact, it can be any text. Eric V. Smiths' example 
can be used with any text as the attribute name. A comment should be added to 
the aforementioned section explaining that normally only valid identifiers are 
accepted, however by implementing your own __getattr__ this can be changed.

----------
components: +Documentation

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue31907>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to