[Geany] Modifying the document browser's behavior
Nick Treleaven
nick.treleaven at xxxxx
Wed Feb 27 11:57:55 UTC 2008
Hi,
On Mon, 25 Feb 2008 12:45:50 -0500
"Adam Plumb" <adamplumb at gmail.com> wrote:
> Editpad has a sidebar file browser that is a mix of Geany's Documents
> sidebar + the file browser plugin. That is, it only shows open
> documents, but it reveals which directory each file is in, like so...
>
> includes
> pdf
> - pdf.php
> - file.php
> - http.php
> - index.php
> - something.php
Sounds good, I wonder how it knows what directories to prune -
e.g. for /home/user/code/project/includes presumably all the parent
dirs are stripped. I guess it could remove any parent paths which
appear in all documents.
> So if you're working on files in different directories, it gives you a
> visual representation of that, rather than a flat list of open
> documents in the Geany Documents sidebar. And it only shows files
> that are open.
OK, so the feature would be like an enhanced Documents sidebar tab, not
for browsing the file system.
[...]
> I was wondering if this functionality already exists in either Geany
> or in a plugin. If so, I haven't been able to find it. If this
It doesn't exist, at least not in the core (and no plugin authors have
responded yet, so probably no plugins do it either).
> functionality doesn't already exist, would it be better for me to
> look into making a plugin for it? I haven't actually opened up the
Personally I think this would be nice to have in the core.
@Enrico: what do you think?
> geany code yet, so I don't know much about what is going on
> internally. But I would appreciate some steering in the correct
> direction as to the best way I could implement this.
I think this can be done by modifying the documents GtkTreeView, which
currently uses a flat GtkListStore to use GtkTreeStore. It may require
some code refactoring also. This code is in src/treeviews.c.
Please read the HACKING file for some notes about the codebase, and if
you have more questions just ask ;-)
Regards,
Nick
More information about the Users
mailing list