Hi Ovidiu,
I'm cc'ing Philippe Charles, the main author of LPG, in case he has something to add.
I think you need to use a modified copy of the LexerBasicMapF.gi include file to effect the case-folding you're looking for.
Specifically, to fold everything to lower-case, find the letter-related entries in the tokenKind[] array that look like:
$sym_type.$prefix$A$suffix$, // 065 0x41 $sym_type.$prefix$B$suffix$, // 066 0x42 $sym_type.$prefix$C$suffix$, // 067 0x43 ...
and replace them with their lower-case equivalents:
$sym_type.$prefix$a$suffix$, // 097 0x61 $sym_type.$prefix$b$suffix$, // 098 0x62 $sym_type.$prefix$c$suffix$, // 099 0x63 ...
I haven't actually tried this myself, but I believe it should work.
On Mar 29, 2011, at 9:26 AM, Ovidiu Diac wrote: Hi, I'm currently working on an ide for a Java-like scripting language. The problem i have is that this script is supposed to be case-insensitive. I managed to make the keywords case-insensitive by using the KWLexerFoldedCaseMapF.gi include in KWLexer but i don't know what to do about identifiers. - i'm using the lpg parser Any help is much appreciated. Thanks, Ovidiu Diac _______________________________________________ imp-dev mailing list imp-dev@xxxxxxxxxxxhttps://dev.eclipse.org/mailman/listinfo/imp-dev
-- Cheers, -- Bob -------------------------------- Robert M. Fuhrer Research Staff Member Programming Technologies Dept. IBM T.J. Watson Research Center IMP Team Lead ( http://www.eclipse.org/imp) X10: Productivity for High-Performance Parallel Programming ( http://x10-lang.org)
|