Hi, Let me chime in late on this.. On Monday, 2011-10-24 23:28:09 +0200, Christoph Noack wrote:
As far as I know, it is currently not possible to know the characters in advance, because the valid characters are influenced by localization settings and some other stuff. We may only know that "something" is wrong - any input has to be evaluated by the expression parser.I think I already implemented somenthing in this direction. I think the Add and the modify button are only enabled if the name is valid. I still think that allowing all characters and showing a warning that some characters are not allowed is better than too much magic that nobody understands.Do we know the characters being not allowed in advance? In my statement above, I guessed we don't know them ... that was my understanding in Munich.
The allowed characters are defined in ODF OpenFormula 5.11 Named Expressions http://docs.oasis-open.org/office/v1.2/cs01/OpenDocument-v1.2-cs01-part2.html#__RefHeading__1017964_715980110 with the 'Identifier' EBNF and actually do not depend on localization or separators used. However, showing a list of characters that are not allowed is way out of the possible, as it would encompass hundreds (or thousands?) control characters and separators of the Unicode range. Provide a positive list similar to the EBNF definition (but just saying "Allowed are letters, digits and underscore and the name must not represent a cell address" or some such for simplicity), or/and dynamically display the first invalid character encountered.
Invalid entries in the expression line are much harder to detect. I think these errors can only be detected if we compile the formula.How long does that take usually / worst-case? (just curious, I need to learn some new aspects)
I think this was already mentioned elsewhere, but in case it was not: just compiling the expression for syntactical correctness isn't problematic, we already do that. Eike P.S. @all: please don't Cc my *@erack.de accounts on LibO topics anymore, use erack@redhat.com instead so I get all LibO related mails bundled on one account, thanks. -- LibreOffice Calc developer. Number formatter stricken i18n transpositionizer. GnuPG key 0x293C05FD : 997A 4C60 CE41 0149 0DB3 9E96 2F1A D073 293C 05FD
Attachment:
pgp_3TWQMurdF.pgp
Description: PGP signature