Hi
I think current project management is really suck. It annoy more then help at least for my needs.
Why do I need project management in the first place: 1) Ability to run build commands aka make from base project path 2) Ability to use custom run command for project 3) Ability to have tags for files in project (make Go to Tag Definition/Declaration works) 4) Ability to share project with other people who also work on project
I belive current project manager fails completely on 3, 4
Also it is just me but I have to work with a lot of small projects and all this "Open/Close" commands are annoying.
That is the problem.
Now about solution:
For example we have 2 projects "a", "c" and file without project plans.txt:
~/projects/a/a.c ~/projects/a/.geanyprj ~/projects/a/nested/b.c ~/projects/c/c.c ~/projects/c/.geanyprj ~/plans.txt
If you try to open ~/projects/a/nested/b.c geany will find ~/projects/a/.geanyprj and load it as currebt project since file b.c belong to project.
.geanyprj should contains information about project base dir, and files that in project for example for "a":
[project] base_dir=./ run_cmd=./a [files] file0=./*.c:recursive file1=./*.h:recursive
if you open or change current tab to ~/projects/c/c.c geany will close project "a" and open ~/projects/c/.geanyprj as current project.
if you open plans.txt it should just close current project.
Switching projects should regenerate and load TAGS for all project files. (killer feature "Go to Tag" should work for all files in project not for just opened ones)
I am going to implement this as plugin. Any comments?
Best regards, Yura Siamashka