> In other words, how pygments-parser get the symbol from pygments... pygments-parser calls pygments.lexers module. Please see the source code of the parser.
[installed] /usr/local/share/gtags/script/pygments_parser.py [in the source package] plugin-factory/pygments_parser.py.in Regards, Shigio On Fri, Jun 4, 2021 at 11:43 PM John Rama <[email protected]> wrote: > > Thanks Shigio-san for clarifying the problem in detail. > > > I think the only way to fix it fundamentally is to rewrite one of the > > parsers. > I agree. > > I personally think this is the problem on Pygments. So, would like to try to > dug into it. > > Is there any way to make pygments generate the symbol ? > > Following command generated highlighted text. > $python3 -m pygments plugin/lightline.vim > > I am wondering if there is any option to generate symbol only... > In other words, how pygments-parser get the symbol from pygments... > > John > > On 2021/06/03 20:36, Shigio YAMAGUCHI wrote: > > Hello, > > > >> Is this expected behavior ? > > > > No, it isn't. It is a bug. > > > > 'pygments-parser.la' works by combining two parsers: Pygments and Ctags. > > It seems that the parsers recognize symbols differently. > > Ctags picks up symbols with namespace but Pygments do it without namespace. > > > > Ctags lightline#highlight > > Pygments highlight > > > >> Is there any workaround on this ? > > > > You can pick up both symbols using a regular expression 'highlight$'. > > ('$' matches the end of the symbol.) > > > > $ global -x 'highlight$' > > lightline#highlight 263 autoload/lightline.vim function! > > lightline#highlight(...) abort > > ... > > > > $ global -xrs 'highlight$' > > highlight 54 autoload/lightline.vim autocmd > > SessionLoadPost * call lightline#highlight() > > highlight 56 autoload/lightline.vim \ | call > > lightline#update() | call lightline#highlight() | endif > > ... > > > > 'global -xr' does not work, since global cannot understand that > > 'lightline#highlight' and 'highlight' are in a reference relationship. > > I think the only way to fix it fundamentally is to rewrite one of the > > parsers. > > > > Regards, > > Shigio > > > > 2021年6月4日(金) 5:35 John Rama <[email protected]>: > > > >> > >> Hi, > >> > >> I keep using global/gtags for reading c/python/javascripts and it > >> works greatly. Thank you for that !! > >> > >> But when trying to create tags files for vim script, > >> GTAGS files are generated correctly, but GRTAGS files are not > >> complete. > >> > >> - Environement > >> $gtags --version > >> gtags (GNU GLOBAL) 6.6 > >> $python3 -m pip list |grep Pygments > >> Pygments 2.9.0 > >> > >> - How to duplicate the problem > >> $git clone https://github.com/itchyny/lightline.vim > >> $gtags --gtagslabel=pygments -v > >> > >> - Problem > >> For example, symbol for lightline#highlight() is generated in GTAGS > >> file, but it's not in GRTAGS. > >> So, it looks lightline#highlight symbol becomes "highlight". > >> > >> $gtags -d GTAGS |grep high > >> lightline#highlight 42 @n 263 function! @n(...) abort > >> s:suite 51 @n 1 let @n = themis#suite('highlight') > >> suite.highlight 51 @n 21 function! s:@n() > >> > >> $gtags -d GRTAGS |grep high > >> highlight 51 @n 21,19,17,16 > >> highlight 42 @n 54,2,146-1,21-1,38,7,40-1,121-1 > >> highlight 3 @n 22,2 > >> > >> - Questions > >> Is this expected behavior ? > >> Is there any workaround on this ? > >> > >> Thanks for your help. > >> John > >> > >> > > > > > > -- > > Shigio YAMAGUCHI <[email protected]> > > PGP fingerprint: > > 26F6 31B4 3D62 4A92 7E6F 1C33 969C 3BE3 89DD A6EB > > > -- Shigio YAMAGUCHI <[email protected]> PGP fingerprint: 26F6 31B4 3D62 4A92 7E6F 1C33 969C 3BE3 89DD A6EB
