Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Projectorganizer external dirs and tagging is not compatible #330

Closed
derba opened this issue Jan 13, 2016 · 9 comments
Closed

Projectorganizer external dirs and tagging is not compatible #330

derba opened this issue Jan 13, 2016 · 9 comments

Comments

@derba
Copy link

derba commented Jan 13, 2016

When I add external directories, those are not tagged by Geany's tagger and GeanyCtags plugin. Project base path is considered only.

@techee
Copy link
Member

techee commented Jan 13, 2016

@derba This should work (I'm using it myself very often). What filetypes do you have in your project and in the external directory?

@techee
Copy link
Member

techee commented Jan 13, 2016

Just check if the file extensions you use are assigned to the right filetype under

Tools->Configuration files->filetype_extensions.conf

Also make sure the given filetype is actually parsed by Geany (not all filetypes are supported) - when the file is open, go to the Symbols tab and check if something appears there.

@derba
Copy link
Author

derba commented Jan 14, 2016

I have a C file in the project directory and several C modules in the directories I added as external directories. When I use GeanyCtags plugin, "Project/Generate tags" menu item appears. When I click that, files in external dirs are not tagged.

At Messages the following appears:

find . -not -path '*/\.*' | ctags --totals --fields=fKsSt --extra=-fq --c-kinds=+p --sort=foldcase --excmd=number -L - -f /home/username/projects/Proj.tags (in directory: /home/username/projects/Proj/)

I think find should be invoked for each directory. The command should look like this (at least on Linux/Unix):

cat <(find ...) <(find extdir1 ...) <(find extdir2 ...) | ctags ...

On the other hand, Geany's tagger finds the tags correctly and they appear at Symbols. Actually I am coding in a weird custom language, so I use ctags, as that is extensible.

@techee
Copy link
Member

techee commented Jan 14, 2016

@derba You are mixing the functionality of two different plugins - GeanyCtags has nothing to do with ProjectOrganizer and knows nothing about ProjectOrganizer's external directories.

I originally created GeanyCtags when tag management in Geany was too slow but now the speed is really good and GeanyCtags is more or less redundant. You should disable it completely and use ProjectOrganizer only. Both Geany's "goto tag definition/declaration" and ProjectOrganizer's "Project->Find project tag" should work for all the tags defined in the project directory and the external directories too.

@techee
Copy link
Member

techee commented Jan 14, 2016

Uh, "Find project tag" really doesn't seem to work for external directories. Strange, I must have introduced some regression because this (and the symlinks too) used to work. Will have a look at it (probably during the weekend).

@techee
Copy link
Member

techee commented Jan 14, 2016

OK, I just noticed what you mentioned about the custom language - to be honest I was rather considering removing the GeanyCtags plugin than extending it much since Geany's parsing speed is very good and even for big project it's fast enough. In any case I can have a look if I can fix the symlink problem for GeanyCtags too - then you'd be able to add symlinked directories into the project which should fix your problem.

@derba
Copy link
Author

derba commented Jan 14, 2016

Thank you for your efforts.

@techee
Copy link
Member

techee commented Jan 15, 2016

The "Find project tag" should work for external directories too now: 20b5450

Please test.

@derba
Copy link
Author

derba commented Feb 6, 2016

Thank you, it works.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants