On 20 August 2011 03:40, Dimitar Zhekov <dimitar.zhe...@gmail.com> wrote: > On Fri, 19 Aug 2011 18:10:42 +0200 > Colomban Wendling <lists....@herbesfolles.org> wrote: > >> Hi, >> >> I'm trying to address bug 3386129 [1], and I'd like comments & reviews >> about my fix, because the whole thing don't look obvious at all... >> >> We already have 2 ways of determining what a "word" is: a manual one >> using GEANY_WORDCHARS or a caller-given list of wordchars, and one that >> uses Scintilla's word boundaries. > > 3? Shoudn't we have symbolchars for the current programming language > ([A-Za-z_] if unknown), and wordchars that match the current > locale? They don't have much in common.
By wordchars we mean symbolchars, this confusion has existed from the beginnings of C at least, and we ain't gonna change it now. :-) Locale/human language word ends are not as simple as sets of characters so lets not go there, we would need something like IIUC to do that. > >> The former seems to make more sense when the caller code knows the kind >> of characters it wants (e.g. tags lookups), but the latter is better >> when getting the word to search for. Shouldn't the tags be using the same definition of word chars as Scintilla's highlighting? I don't trust "knowing" stuff in two places, they will never match :-) I understand that it might be a bit of work to hack tagmanager into line though. [...] > There is always a SCI_SETWORDCHARS... Hmmm, we even use it to set the > sci wordchars to the filetype wordchars if we don't know the exact > lexer or something? Well, I guess it's really non-trivial. We should be always setting Scintilla's wordchars from the filetype file, although IIUC a few lexers think they know better and ignore them. > >> So in the attached patch, I added a alternative way to get the the >> current word (that uses the same algorithm as the word selection) and >> tries to use it whenever the word was fetched for a search. > > Makes sense to me. Though I'm not sure about that SCI_SETWORDCHARS we > use in highlighting:styleset_common(). > Required, to make highlighting match word definitions (assuming lexer cooperation). [...] Nothing else suspicious, at least > from a first sight. > +1 Maybe everything should use the filetype wordchars definition, with GEANY_WORDCHARS moved to filetypes.common as the default. Cheers Lex _______________________________________________ Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel