As mentioned in my previous posting, I have spent some time to try 0.13 new project features. While starting to test, I've found to smaller glitches.
* vcdiff: if the CVS access uses SSH, the passphrase entry is invible. If I call geany from the shell, I'm able to enter the passphrase there.
* enforce the extension of the project file. I've edit the filename first, and forgot the extension. After this, ".geany" got lost.
* opening a project automatically closes all files from outside the the project, if the file was loaded previously to the project. After closing the project, these file got loaded again.
Now I load the project first, and than the "other file". After closing the project, the "other file" is closed too. This is also the case, if Geany is closed with the project and the "other file" open. After the new start, all files are open. But again, closing the project will close the "other file" too!
Is this a bug?
But now the notes on the project management.
* I need to switch between different projects. It would be good to have a sidebar with all projects listed. The project properties should have a checkbox to hide a (inactive) project in the sidebar. It therefore must be visible in the "open project" dialog.
All files from outside these projects can be automatically added to an "virtual" project 'unmanaged'. So the user can fast toggle between a project and the "other" files.
* The tabs with the opened files and the "documents" sidebar allways shows the loaded files of the current project. To make access even easier, the "documents" sidebar could hold all of todays used projects as special entries (i.e. as bold text). Maybe this highlighting could be used for the "projects" sidebar to.
* The "projects sidebar" or the main toolbar should have a "drop down" box with a list of "release flavours". The list can be fix or may be part of the project properties. The handling of these "flavours" is done in the makefile. To make the change of a flavour visible, Geany should remove a flag file in the project director. This file should be defined in the project properties. As default .build-stamp can be used. Without this file, a "make clean & make" is performed (by the makefile) to force a rebuild.
The only thing Geany has to do: (1) if the project properties defines a "stamp file", this file must be removed when switching the "flavour". (2) The project properties must be extended to hold configurable list of "flavour" stings. (3) The selected flavour must available as macro for the make command (of the project). So it will be passed to make, which will do all the work. This means there is no makefile generator.
I personally use the flavours "DEBUG", "BETA" and "FINAL". I pass them as variable RELEASE to make (i.e. make RELEASE=DEBUG). This is handled inside the Makefile.
* one last thing for now ;-) My old Laptop has a screen resolution of 1024x768. It would be great to have icons instead of text as lables for the tabs of the sidebar.
Hi
On Fri, 2008-02-29 at 22:02 +0000, Joerg Desch wrote:
As mentioned in my previous posting, I have spent some time to try 0.13 new project features. While starting to test, I've found to smaller glitches.
- vcdiff: if the CVS access uses SSH, the passphrase entry is invible. If I call geany from the shell, I'm able to enter the passphrase there.
I think you should use public key authentication for ssh. Entering password is boring anyway.
http://sial.org/howto/openssh/publickey-auth/
Yura Siamashka <yurand2@...> writes:
Hi Yura.
I think you should use public key authentication for ssh. Entering password is boring anyway.
That's right. But if it isn't setup (like here on my laptop), geany / vcdiff looks like crashed.
Thanks for the link.
I've made a mistake and posted this message on the wrong list.
Please post followups to geany-users instead.
Mea Cupla...
On Fri, 29 Feb 2008 22:02:58 +0000 (UTC) Joerg Desch joerg.desch@googlemail.com wrote:
[...]
- enforce the extension of the project file. I've edit the filename
first, and forgot the extension. After this, ".geany" got lost.
I agree, we should do this.
opening a project automatically closes all files from outside the the project, if the file was loaded previously to the project. After closing the project, these file got loaded again.
Now I load the project first, and than the "other file". After
closing the project, the "other file" is closed too. This is also the case, if Geany is closed with the project and the "other file" open. After the new start, all files are open. But again, closing the project will close the "other file" too!
Is this a bug?
It was done like this to make implementing the session support easier, but maybe it could be made a preference whether to distinguish between files under the project tree and files outside it.
Sometimes you might want a file from some other API to be stored in the project session.
But now the notes on the project management.
- I need to switch between different projects. It would be good to have a sidebar with all projects listed. The project
We were thinking this could be handled with a Recent Projects menu. [...]
All files from outside these projects can be automatically added to an "virtual" project 'unmanaged'. So the user can fast toggle between a project and the "other" files.
Maybe this could be part of the grouping in the Documents sidebar tab (probably this will be delayed if the folder tree is being implemented).
[...]
- The "projects sidebar" or the main toolbar should have a "drop
down" box with a list of "release flavours". The list can be fix or
I think this will be handled by remembering make commands with a setting for the current command to use. See my Custom build commands mail.
[...]
- one last thing for now ;-) My old Laptop has a screen resolution of 1024x768. It would be great to have icons instead of text as lables
for the tabs of the sidebar.
I think we need text labels for clarity. You can still scroll the sidebar notebook.
Regards, Nick
Nick Treleaven <nick.treleaven@...> writes:
Now I load the project first, and than the "other file". After closing the project, the "other file" is closed too. This is also the case, if Geany is closed with the project and the "other file" open. After the new start, all files are open. But again, closing the project will close the "other file" too!
Is this a bug?
It was done like this to make implementing the session support easier, but maybe it could be made a preference whether to distinguish between files under the project tree and files outside it.
Sometimes you might want a file from some other API to be stored in the project session.
But than I must have control over this feature. I most cases I don't want to have the "other" files in the session of my current project. May be it's a way to manually tag it as "stick to project" (project menu entry?).
But now the notes on the project management.
- I need to switch between different projects. It would be good to have a sidebar with all projects listed. The project
We were thinking this could be handled with a Recent Projects menu. [...]
"Recent Projects" would be nice. But with an sidebar, someone can add features like "CVS Release" or "CVS chekcout" (if the project base in no longer available).
All files from outside these projects can be automatically added to an "virtual" project 'unmanaged'. So the user can fast toggle between a project and the "other" files.
Maybe this could be part of the grouping in the Documents sidebar tab (probably this will be delayed if the folder tree is being implemented).
Hm. Is this the right place? What kind of "view" is the "documents sidebar"? Currently it show all loaded files. After switching the project, all "other" files are closed. So what is it good for?
Geany works with files. The files are mainly organized in projects. Projects are defined as a directory hierarchie. So IMO we need a more project centric view of things. If we allow all "other" files to be a "loosly project", we have them in the project view too. This "loosly project" is a stripped down project without own properties. So the internal handling is not changed. Only the not existing project view need to know this "special project".
That do you think about that?
Whats your way of working with projects / files?
- The "projects sidebar" or the main toolbar should have a "drop
down" box with a list of "release flavours". The list can be fix or
I think this will be handled by remembering make commands with a setting for the current command to use. See my Custom build commands mail.
Do you mean I have to change the build command for that?
I think we need text labels for clarity. You can still scroll the sidebar notebook.
Symbols, Documents and Files? IMO scrolling with the mouse is much more time consuming than remember the icon. IMO the hover text is help enough. ;-)
On Mon, 3 Mar 2008 18:07:07 +0000 (UTC), Joerg Desch joerg.desch@googlemail.com wrote:
Nick Treleaven <nick.treleaven@...> writes:
Now I load the project first, and than the "other file". After closing the project, the "other file" is closed too. This is also the case, if Geany is closed with the project and the "other file" open. After the new start, all files are open. But again, closing the project will close the "other file" too!
Is this a bug?
It was done like this to make implementing the session support easier, but maybe it could be made a preference whether to distinguish between files under the project tree and files outside it.
Sometimes you might want a file from some other API to be stored in the project session.
But than I must have control over this feature. I most cases I don't want to have the "other" files in the session of my current project. May be it's a way to manually tag it as "stick to project" (project menu entry?).
IMO this would be just overhead to what most users will need. I don't see the problem, if you don't want a certain file in your session, close it. If you need it, open it.
All files from outside these projects can be automatically added to an "virtual" project 'unmanaged'. So the user can fast toggle between a project and the "other" files.
Maybe this could be part of the grouping in the Documents sidebar tab (probably this will be delayed if the folder tree is being implemented).
Hm. Is this the right place? What kind of "view" is the "documents sidebar"? Currently it show all loaded files. After switching the project, all "other" files are closed. So what is it good for?
Geany works with files. The files are mainly organized in projects. Projects are defined as a directory hierarchie. So IMO we need a more project centric view of things. If we allow all "other" files to be a "loosly project", we have them in the project view too. This "loosly project" is a stripped down project without own properties. So the internal handling is not changed. Only the not existing project view need to know this "special project".
That do you think about that?
"Geany works with files" is the key message. Please be aware of what project support in Geany was designed for and what it is: simple. This is not a limitation but a feature. Geany is a (file) editor. I remember me using Eclipse where you can't simply open a file quickly to edit it. You always have to create a project and then add a file to the project. I hate that.
Whats your way of working with projects / files?
Me personally: No projects, files only. All what I personally need regarding project support can be done (and is done) with Makefiles.
Regards, Enrico
On Mon, 3 Mar 2008 20:50:48 +0100 Enrico Tröger enrico.troeger@uvena.de wrote:
Hi Enrico.
Sometimes you might want a file from some other API to be stored in the project session.
But than I must have control over this feature. I most cases I don't want to have the "other" files in the session of my current project. May be it's a way to manually tag it as "stick to project" (project menu entry?).
IMO this would be just overhead to what most users will need. I don't see the problem, if you don't want a certain file in your session, close it. If you need it, open it.
That's exactly my opinion. But why is every file that is opened while a "project session" is active put in the session list of this project?
For example: I'm sitting in my office working with a bundle of files of my project. A colleague is coming, asking my something about an old project. So I open a (old) file answer the question and and than continue to work. Now I have a file from an old project in my project list. Ok, I can close it, but after playing with 0.13, there are situations, where these "other" files appears / disappears together the projects in a way I had not expected. It's not really a problem, it is a little confusing. At least to me. ;-) May be I have to use 0.13 for a longer timer....
"Geany works with files" is the key message. Please be aware of what project support in Geany was designed for and what it is: simple. This is not a limitation but a feature. Geany is a (file) editor. I remember me using Eclipse where you can't simply open a file quickly to edit it. You always have to create a project and then add a file to the project. I hate that.
Ok, that is a statement. ;-) But than I have the question, why do you implement sessions in the core application? Wouldn't it be better to move this into a plugin? So the user can decide to have this "lightweight project sessions", or a future project plugin. Are there ways (for a plugin) to disable the current project implementation?
I found this on the homepage of "geanyprj":
.----------------------- | geanyprj can't work together with Geany internal project support | and try to disable it as best as it can, It will close any Geany | project and make Project menu invisible. `-----------------------
Whats your way of working with projects / files?
Me personally: No projects, files only. All what I personally need regarding project support can be done (and is done) with Makefiles.
As I posted earlier, I'm working this way too. On my office PC I'm using Emacs with ECB (and speedbar). Here I have the symbol view, the file browser and the document view. Like with Geany. But what I'm really missing is the possibility to either switch between projects in an fast way (may be with recent projects) or to have more than one open project at the same time. For Emacs I'm using gnuserv to have multiple main windows, but this is more a work-a-round than a good solution.
With the current situation, I end up with an endless list of opened files. ;-) Ok, it's not that hard, but I'm currently using Geany only for small projects in my spare time.
On Tue, 4 Mar 2008 08:41:19 +0100, Joerg Desch jd.vvd@web.de wrote:
On Mon, 3 Mar 2008 20:50:48 +0100 Enrico Tröger enrico.troeger@uvena.de wrote:
Hi Enrico.
Sometimes you might want a file from some other API to be stored in the project session.
But than I must have control over this feature. I most cases I don't want to have the "other" files in the session of my current project. May be it's a way to manually tag it as "stick to project" (project menu entry?).
IMO this would be just overhead to what most users will need. I don't see the problem, if you don't want a certain file in your session, close it. If you need it, open it.
That's exactly my opinion. But why is every file that is opened while a "project session" is active put in the session list of this project?
For example: I'm sitting in my office working with a bundle of files of my project. A colleague is coming, asking my something about an old project. So I open a (old) file answer the question and and than continue to work. Now I have a file from an old project in my project list. Ok, I
Yes, there is no way to get around this. Geany doesn't know anything about files belonging to a project or not. Geany only knows about the current open files and the current open project. All files which are open together with a project are saved as project' session files when closing the project or closing Geany.
can close it, but after playing with 0.13, there are situations, where these "other" files appears / disappears together the projects in a way I had not expected. It's not really a problem, it is a little confusing. At least to me. ;-) May be I have to use 0.13 for a longer timer....
Hmm, might be there is a bug with project session support. If you could give more details and ideally a way to reproduce it, we could probably fix it :D.
"Geany works with files" is the key message. Please be aware of what project support in Geany was designed for and what it is: simple. This is not a limitation but a feature. Geany is a (file) editor. I remember me using Eclipse where you can't simply open a file quickly to edit it. You always have to create a project and then add a file to the project. I hate that.
Ok, that is a statement. ;-) But than I have the question, why do you implement sessions in the core application? Wouldn't it be better to move this into a plugin? So the user can decide to have this "lightweight
The pure session support in the core was one of the first features, long before any project management code was written. Between 0.12 and 0.13, project session support was added(by re-using most of the non-project session support code). Users can decide whether to use session support in general (non-project related) and whether to use project-based session support. So, both can be disabled.
project sessions", or a future project plugin. Are there ways (for a plugin) to disable the current project implementation?
Not really. At least, there is no code to explicitly disable Geany's project management support. If this really is an issue and Yura need anything specific for his geanyprj plugin to be disabled or something, we can add it.
Whats your way of working with projects / files?
Me personally: No projects, files only. All what I personally need regarding project support can be done (and is done) with Makefiles.
As I posted earlier, I'm working this way too. On my office PC I'm using Emacs with ECB (and speedbar). Here I have the symbol view, the file browser and the document view. Like with Geany. But what I'm really missing is the possibility to either switch between projects in an fast way (may be with recent projects) or to have more than one open project at the same time. For Emacs I'm using gnuserv to have multiple main
More than one open project at the same time isn't support on purpose. We didn't want to support this. You can use a second instance instead and open another project in it.
Regards, Enrico
Hi
On Tue, 2008-03-04 at 13:58 +0100, Enrico Tröger wrote:
Not really. At least, there is no code to explicitly disable Geany's project management support. If this really is an issue and Yura need anything specific for his geanyprj plugin to be disabled or something, we can add it.
Before doing anything else every callback function in geanyprj close native geany project if it is opened. Also I hide "Project" menu on plugin load. This is current disable code.
The main reason why I can't stand using native project manager is Project session support (IMHO, it is annoying to have all opened files nuked on project close). But since it can be disabled I think it will be nice to split geanyprj in 2 part.
1) Add "go to tag def/decl" code to geany native project. 2) Extract rest part "auto switch project based on current file" in separate plugin.
If you have no objection about tracking project files independent from project session I will start writting code.
On Tue, 04 Mar 2008 23:12:51 +0200 Yura Siamashka yurand2@gmail.com wrote:
[...]
The main reason why I can't stand using native project manager is Project session support (IMHO, it is annoying to have all opened files nuked on project close). But since it can be disabled I think it will be nice to split geanyprj in 2 part.
- Add "go to tag def/decl" code to geany native project.
- Extract rest part "auto switch project based on current file" in
separate plugin.
I think this sounds good, but I haven't had a chance to test the geanyprj plugin yet. It would be cool to have (1) in the core, but I'm not sure how much code it is or how much extra memory would be used typically. Memory probably isn't an issue so long as there's a preference not to load tags from unopen files under the project base dir, and IMO it should be off by default.
Enrico, should this be in the core?
If you have no objection about tracking project files independent from project session I will start writting code.
I'm not sure what you mean. Project session support can be disabled, and the user can still use projects for build support, etc.
Regards, Nick
On Wed, 5 Mar 2008 16:35:40 +0000, Nick Treleaven nick.treleaven@btinternet.com wrote:
On Tue, 04 Mar 2008 23:12:51 +0200 Yura Siamashka yurand2@gmail.com wrote:
[...]
The main reason why I can't stand using native project manager is Project session support (IMHO, it is annoying to have all opened files nuked on project close). But since it can be disabled I think it will be nice to split geanyprj in 2 part.
- Add "go to tag def/decl" code to geany native project.
- Extract rest part "auto switch project based on current file" in
separate plugin.
I think this sounds good, but I haven't had a chance to test the geanyprj plugin yet. It would be cool to have (1) in the core, but I'm not sure how much code it is or how much extra memory would be used typically. Memory probably isn't an issue so long as there's a preference not to load tags from unopen files under the project base dir, and IMO it should be off by default.
Enrico, should this be in the core?
Depends on the way of implementation. I don't like what geanyprj is doing currently. I didn't have a deeper look but Yura, you call reload_project() on every document-activate event? So, everytime a user switch between files, the plugin searches for ".geanyprj" and checks the type of the current project. I really don't like this. Disk-IO on every tab change. Furthermore, I don't like the .geanyprj files at all. But of course, some kind of cache is necessary. I'm not sure.
And just while testing the plugin a little bit, it crashed away ;-). Backtrace is attached, steps to reproduce: - open geany with an open project and some project session files - load the geanyprj with the plugin manager - Tools->Project->New - Name: "tmp" Location: "/tmp" Base path: "/tmp" Generate files: yes Type: All -> crash on Create.
Regards, Enrico
On Wed, 2008-03-05 at 17:58 +0100, Enrico Tröger wrote:
On Wed, 5 Mar 2008 16:35:40 +0000, Nick Treleaven nick.treleaven@btinternet.com wrote: I don't like what geanyprj is doing currently. I didn't have a deeper look but Yura, you call reload_project() on every document-activate event? So, everytime a user switch between files, the plugin searches for ".geanyprj" and checks the type of the current project. I really don't like this. Disk-IO on every tab change.
You are correct. But this stuff is going to be in separate plugin that will handle geany native projects (2). It is really very useful for me. No need to bother with open/close projects, with this approach all I care are files. I think it is geany way of doing things. ;-)
Why don't you like Disk-IO on document-activate? Most time it is just access check and it is really quick (no lag in interface). On ftp or sshfs it can takes time (didn't check). Is this is the reason?
As a first step I suggest to write patch that will add "Generate files" and "Type" to project properties.If you have better idea how tag management should be handled lets discuss it.
Furthermore, I don't like the .geanyprj files at all. But of course, some kind of cache is necessary. I'm not sure.
And just while testing the plugin a little bit, it crashed away ;-). Backtrace is attached, steps to reproduce:
- open geany with an open project and some project session files
- load the geanyprj with the plugin manager
- Tools->Project->New
- Name: "tmp" Location: "/tmp" Base path: "/tmp" Generate files: yes Type: All
-> crash on Create.
Thanks, fixed in git.
On Thu, 06 Mar 2008 13:30:42 +0200, Yura Siamashka yurand2@gmail.com wrote:
On Wed, 2008-03-05 at 17:58 +0100, Enrico Tröger wrote:
On Wed, 5 Mar 2008 16:35:40 +0000, Nick Treleaven nick.treleaven@btinternet.com wrote: I don't like what geanyprj is doing currently. I didn't have a deeper look but Yura, you call reload_project() on every document-activate event? So, everytime a user switch between files, the plugin searches for ".geanyprj" and checks the type of the current project. I really don't like this. Disk-IO on every tab change.
You are correct. But this stuff is going to be in separate plugin that will handle geany native projects (2). It is really very useful for me. No need to bother with open/close projects, with this approach all I care are files. I think it is geany way of doing things. ;-)
Why don't you like Disk-IO on document-activate? Most time it is just access check and it is really quick (no lag in interface). On ftp or sshfs it can takes time (didn't check). Is this is the reason?
Remote filesystems are one reason, another reason is that this is IMO just unnecessary disk-IO which should be avoided. Think of hard drive life times and maybe it can be also a performance issue on older systems with older hard drives or when the hard drive is quite busy. I really don't like this, it can cause heavy load when switching between several times quickly.
As a first step I suggest to write patch that will add "Generate files" and "Type" to project properties.If you have better idea how tag management should be handled lets discuss it.
Not yet, I need to play a bit more with your code. Just wait a few days, no need to hurry and do things twice :D.
Regards, Enrico
Hi
On Thu, 2008-03-06 at 17:11 +0100, Enrico Tröger wrote:
Remote filesystems are one reason, another reason is that this is IMO just unnecessary disk-IO which should be avoided. Think of hard drive life times and maybe it can be also a performance issue on older systems with older hard drives or when the hard drive is quite busy. I really don't like this, it can cause heavy load when switching between several times quickly.
IMHO, you are wrong about heavy load. It is just 1-3 access() call when you switch tab. It is not like geanyprj nuke disk every second or on every editing operation.
reload_project() is probably bad function name. It doesn't actually reload project every time. This happen only if path to project file is changed.
And don't forgot about cache. Currently geanyprj store all projects ever opened in cache (read waste RAM) ;-). I was planing to add option how many projects should be stored but get lazy. This way switching between files that belong to different projects happend almost instantly. And no disk IO at all.
On Thu, 06 Mar 2008 22:40:47 +0200 Yura Siamashka yurand2@gmail.com wrote:
Hi
On Thu, 2008-03-06 at 17:11 +0100, Enrico Tröger wrote:
Remote filesystems are one reason, another reason is that this is IMO just unnecessary disk-IO which should be avoided. Think of hard drive life times and maybe it can be also a performance issue on older systems with older hard drives or when the hard drive is quite busy. I really don't like this, it can cause heavy load when switching between several times quickly.
IMHO, you are wrong about heavy load. It is just 1-3 access() call when you switch tab. It is not like geanyprj nuke disk every second or on every editing operation.
reload_project() is probably bad function name. It doesn't actually reload project every time. This happen only if path to project file is changed.
I think reading a project file on disk when switching to a document that 'belongs' to another project is OK (so long as it's not read more than necessary). After all, people who use the 'auto switch project based on current file' plugin would want that behaviour. Maybe projects could be cached, but personally I don't think a big cache is needed. Even a cache of just the previous project would reduce disk reads quite a lot.
Also Geany has to read the disk quite regularly anyway (default every ~30s) to see if the current file has been modified outside Geany, so IMO disk access for a good reason is OK.
Regards, Nick
On Fri, 7 Mar 2008 13:13:16 +0000, Nick Treleaven nick.treleaven@btinternet.com wrote:
On Thu, 06 Mar 2008 22:40:47 +0200 Yura Siamashka yurand2@gmail.com wrote:
Hi
On Thu, 2008-03-06 at 17:11 +0100, Enrico Tröger wrote:
Remote filesystems are one reason, another reason is that this is IMO just unnecessary disk-IO which should be avoided. Think of hard drive life times and maybe it can be also a performance issue on older systems with older hard drives or when the hard drive is quite busy. I really don't like this, it can cause heavy load when switching between several times quickly.
IMHO, you are wrong about heavy load. It is just 1-3 access() call when you switch tab. It is not like geanyprj nuke disk every second or on every editing operation.
reload_project() is probably bad function name. It doesn't actually reload project every time. This happen only if path to project file is changed.
I think reading a project file on disk when switching to a document that 'belongs' to another project is OK (so long as it's not read more than necessary). After all, people who use the 'auto switch project based on current file' plugin would want that behaviour. Maybe projects could be cached, but personally I don't think a big cache is needed. Even a cache of just the previous project would reduce disk reads quite a lot.
Hmmm ok, if I can disable it all is fine ;-).
Also Geany has to read the disk quite regularly anyway (default every
This is one of things I don't like (even though I wrote it ;-)). But there isn't a good alternative (except using FAM or something like this but it would require additional dependencies).
Regards, Enrico
On Thu, 06 Mar 2008 22:40:47 +0200, Yura Siamashka yurand2@gmail.com wrote:
Hi
On Thu, 2008-03-06 at 17:11 +0100, Enrico Tröger wrote:
Remote filesystems are one reason, another reason is that this is IMO just unnecessary disk-IO which should be avoided. Think of hard drive life times and maybe it can be also a performance issue on older systems with older hard drives or when the hard drive is quite busy. I really don't like this, it can cause heavy load when switching between several times quickly.
IMHO, you are wrong about heavy load. It is just 1-3 access() call when you switch tab. It is not like geanyprj nuke disk every second or on every editing operation.
Sure. Maybe I'm a bit too nitpicking on this. But it happens to me that I'm often switching tabs in rather short time when searching something or so. And yes, there are disk caches and stuff. I just wanted to bring it on so maybe it can be optimized in future.
Regards, Enrico
20080303134923.7e07478c.nick.treleaven@btinternet.com loom.20080303T174435-599@post.gmane.org 20080303205048.7824264c.enrico.troeger@uvena.de 20080304084119.1297a009@anene 20080304135850.2926a56c.enrico.troeger@uvena.de 1204665171.2798.30.camel@yura 20080305163540.85c8773c.nick.treleaven@btinternet.com 20080305175857.6a9ae40f.enrico.troeger@uvena.de 1204803042.2805.24.camel@yura 20080306171118.0dbfd5c4.enrico.troeger@uvena.de 1204836048.2801.24.camel@yura 20080307151601.fca3f665.enrico.troeger@uvena.de Message-ID: 6bfdf1cae59ea7eb2debebfbe9c3e172@localhost X-Sender: h.aling@home.nl Received: from madcap.xs4all.nl [82.93.196.225] with HTTP/1.1 (POST); Mon, 10 Mar 2008 12:46:59 +0100 User-Agent: RoundCube Webmail/0.1-svn Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit
On Fri, 7 Mar 2008 15:16:01 +0100, Enrico Tröger enrico.troeger@uvena.de wrote:
On Thu, 06 Mar 2008 22:40:47 +0200, Yura Siamashka yurand2@gmail.com wrote:
Hi
On Thu, 2008-03-06 at 17:11 +0100, Enrico Tröger wrote:
Remote filesystems are one reason, another reason is that this is IMO just unnecessary disk-IO which should be avoided. Think of hard drive life times and maybe it can be also a performance issue on older systems with older hard drives or when the hard drive is quite busy. I really don't like this, it can cause heavy load when switching between several times quickly.
IMHO, you are wrong about heavy load. It is just 1-3 access() call when you switch tab. It is not like geanyprj nuke disk every second or on every editing operation.
Sure. Maybe I'm a bit too nitpicking on this. But it happens to me that I'm often switching tabs in rather short time when searching something or so. And yes, there are disk caches and stuff. I just wanted to bring it on so maybe it can be optimized in future.
I've been using the geanyprj plugin for a few weeks now, and I really, really like it!
However: * Loading and closing the first or last file in project takes a while and only has a status message on completion. * Geanyprj also indexes hidden (.svn) files
Feature requests: * 'Find usage' support * include/exclude folders support
Configuration example:
Base path: /var/www/project
Include: include sites/all/modules sites/default/settings.php
Exclude *.svn-base
-H-
On Mon, 2008-03-10 at 12:46 +0100, Harold Aling wrote:
I've been using the geanyprj plugin for a few weeks now, and I really, really like it!
Thanks.
However:
- Loading and closing the first or last file in project takes a while and
only has a status message on completion.
I think loading time can be reduced, if I use idle time function to parse project files, but not all 'jumps' will be available at the very start time (need to play with this idea). Nothing can be done with close time, it takes a while to free tagmanager structures.
- Geanyprj also indexes hidden (.svn) files
hm, I will add option for hidden files.
Feature requests:
- 'Find usage' support
added to TODO list
- include/exclude folders support
I don't think it is going to be made unless someone write patch (read I will not do it myself), it is too much work and I personally don't need this feature.
As work around I suggest you disable "regenerate file list" option and use preselected project file list. You can use prgen.py script to create initial .geanyprj file. Use git version:
http://repo.or.cz/w/geanyprj.git?a=blob_plain;f=prgen.py;hb=2e2c22a8b3129925...
modify extensions in it to suit your needs.
On Mon, 3 Mar 2008 13:49:23 +0000, Nick Treleaven nick.treleaven@btinternet.com wrote:
On Fri, 29 Feb 2008 22:02:58 +0000 (UTC) Joerg Desch joerg.desch@googlemail.com wrote:
[...]
- enforce the extension of the project file. I've edit the filename
first, and forgot the extension. After this, ".geany" got lost.
I agree, we should do this.
Really? I don't like this. This reminds me of the ugly ".txt" problem with Windows Notepad. In Windows XP(maybe also in versions before) you can't save a file with Windows Notepad without the .txt extension. This was driving me crazy several times and I really don't want to add anything similar to Geany. Additionally, there is no need to enforce the extension of Geany project files to ".geany". Users can and should be able to choose any extension they like or no extension.
opening a project automatically closes all files from outside the the project, if the file was loaded previously to the project. After closing the project, these file got loaded again.
Now I load the project first, and than the "other file". After
closing the project, the "other file" is closed too. This is also the case, if Geany is closed with the project and the "other file" open. After the new start, all files are open. But again, closing the project will close the "other file" too!
Is this a bug?
It was done like this to make implementing the session support easier, but maybe it could be made a preference whether to distinguish between files under the project tree and files outside it.
I think this would make it more confusing than it would help.
Regards, Enrico
On Mon, 3 Mar 2008 21:02:48 +0100 Enrico Tröger enrico.troeger@uvena.de wrote:
On Mon, 3 Mar 2008 13:49:23 +0000, Nick Treleaven nick.treleaven@btinternet.com wrote:
On Fri, 29 Feb 2008 22:02:58 +0000 (UTC) Joerg Desch joerg.desch@googlemail.com wrote:
[...]
- enforce the extension of the project file. I've edit the
filename first, and forgot the extension. After this, ".geany" got lost.
I agree, we should do this.
Really? I don't like this. This reminds me of the ugly ".txt" problem with Windows Notepad. In Windows XP(maybe also in versions before) you can't save a file with Windows Notepad without the .txt extension. This was driving me crazy several times and I really don't want to add anything similar to Geany. Additionally, there is no need to enforce the extension of Geany project files to ".geany". Users can and should be able to choose any extension they like or no extension.
Maybe. But it makes finding a project file in the open dialog easier if it has the .geany extension.
- opening a project automatically closes all files from outside
the the project, if the file was loaded previously to the project. After closing the project, these file got loaded again.
Now I load the project first, and than the "other file". After closing the project, the "other file" is closed too. This is also the case, if Geany is closed with the project and the "other file" open. After the new start, all files are open. But again, closing the project will close the "other file" too!
Is this a bug?
It was done like this to make implementing the session support easier, but maybe it could be made a preference whether to distinguish between files under the project tree and files outside it.
I think this would make it more confusing than it would help.
It would be confusing going from not using a project with a number of related files open to opening a project, as these files wouldn't be closed. But for switching between projects it might be useful if someone had a general TODO file open or another file they wanted to look at whenever they were using Geany. But I'm not sure if it's really needed.
Regards, Nick
On Tue, Mar 4, 2008 at 7:31 AM, Nick Treleaven nick.treleaven@btinternet.com wrote:
On Mon, 3 Mar 2008 21:02:48 +0100 Enrico Tröger enrico.troeger@uvena.de wrote:
On Mon, 3 Mar 2008 13:49:23 +0000, Nick Treleaven nick.treleaven@btinternet.com wrote:
On Fri, 29 Feb 2008 22:02:58 +0000 (UTC) Joerg Desch joerg.desch@googlemail.com wrote:
[...]
- enforce the extension of the project file. I've edit the
filename first, and forgot the extension. After this, ".geany" got lost.
I agree, we should do this.
Really? I don't like this. This reminds me of the ugly ".txt" problem with Windows Notepad. In Windows XP(maybe also in versions before) you can't save a file with Windows Notepad without the .txt extension. This was driving me crazy several times and I really don't want to add anything similar to Geany.
Right. Secretly adding filename extensions is weird behaviour. However, you could always just have the dialog prompt the user to add the extension if they forgot it.
Additionally, there is no need to enforce the extension of Geany project files to ".geany". Users can and should be able to choose any extension they like or no extension.
Maybe. But it makes finding a project file in the open dialog easier if it has the .geany extension.
Allowing any extension for Geany project files is probably just configurability for configurability's sake. It's not really that much of a bother for users to use a specific filename extension for a very specific sort of file, IMO.
---John
On Tue, 4 Mar 2008 07:45:28 -0500, "John Gabriele" jmg3000@gmail.com wrote:
Additionally, there is no need to enforce the extension of Geany project files to ".geany". Users can and should be able to choose any extension they like or no extension.
Maybe. But it makes finding a project file in the open dialog easier if it has the .geany extension.
Allowing any extension for Geany project files is probably just configurability for configurability's sake. It's not really that much of a bother for users to use a specific filename extension for a very specific sort of file, IMO.
Hmmm, we have the default extension ".geany" for Geany project files. So, specific extension for a specific filetype. It is just changeable by an user who wants to change it. As long as the user don't change it, it will be ".geany" and it will be shown in the project open dialog (and even if not, the file filter can still be changed to "All files"). In other words: why should we NOT allow the user to choose any other extension if he wants to? The extension doesn't have any deeper meaning at this point. So, why limit the user in his will?
Regards, Enrico
On Tue, 4 Mar 2008 12:31:58 +0000, Nick Treleaven nick.treleaven@btinternet.com wrote:
On Mon, 3 Mar 2008 21:02:48 +0100 Enrico Tröger enrico.troeger@uvena.de wrote:
On Mon, 3 Mar 2008 13:49:23 +0000, Nick Treleaven nick.treleaven@btinternet.com wrote:
On Fri, 29 Feb 2008 22:02:58 +0000 (UTC) Joerg Desch joerg.desch@googlemail.com wrote:
[...]
- enforce the extension of the project file. I've edit the
filename first, and forgot the extension. After this, ".geany" got lost.
I agree, we should do this.
Really? I don't like this. This reminds me of the ugly ".txt" problem with Windows Notepad. In Windows XP(maybe also in versions before) you can't save a file with Windows Notepad without the .txt extension. This was driving me crazy several times and I really don't want to add anything similar to Geany. Additionally, there is no need to enforce the extension of Geany project files to ".geany". Users can and should be able to choose any extension they like or no extension.
Maybe. But it makes finding a project file in the open dialog easier if it has the .geany extension.
Sure, and it has the ".geany" extension by default and when typing a project name, the filename is adjusted and the extension is still there. It only gets lost if the user removes it. So, the user has to explicitly remove or change the extension and I think then he should be aware of that the file maybe won't be found "automatically" as project file. Anyway, the project open dialog offers to change the file filter to "All files".
Regards, Enrico
On Fri, 29 Feb 2008 22:02:58 +0000 (UTC), Joerg Desch joerg.desch@googlemail.com wrote:
As mentioned in my previous posting, I have spent some time to try 0.13 new project features. While starting to test, I've found to smaller glitches.
- vcdiff: if the CVS access uses SSH, the passphrase entry is invible. If I call geany from the shell, I'm able to enter the passphrase there.
CVS is old and there are lots of newer and better SCMs out there ;-). SSH with pubkey authentication is encouraged because it's much more convenient, more secure and easy to set up.
- one last thing for now ;-) My old Laptop has a screen resolution of 1024x768. It would be great to have icons instead of text as lables for the tabs of the sidebar.
Any ideas for icons to be used?
Regards, Enrico
Enrico Tröger wrote:
Joerg Desch wrote:
My old Laptop has a screen resolution of 1024x768. It would be great to have icons instead of text as lables for the tabs of the sidebar.
Any ideas for icons to be used?
What if you could specify a maximum width for the text tabs, so you would only see:
[Sym|Doc|Fil]
Or even:
[S|D|F]
- Jeff
On Mon, 3 Mar 2008 14:49:33 -0600, "Jeff Pohlmeyer" yetanothergeek@gmail.com wrote:
Enrico Tröger wrote:
Joerg Desch wrote:
My old Laptop has a screen resolution of 1024x768. It would be great to have icons instead of text as lables for the tabs of the sidebar.
Any ideas for icons to be used?
What if you could specify a maximum width for the text tabs, so you would only see:
[Sym|Doc|Fil]
Or even:
[S|D|F]
I like this idea, much better than icons. Hidden pref or better popup menu to the notebook tabs of the sidebar?
Regards, Enrico
On Mon, 3 Mar 2008 21:02:44 +0100 Enrico Tröger enrico.troeger@uvena.de wrote:
CVS is old and there are lots of newer and better SCMs out there ;-). SSH with pubkey authentication is encouraged because it's much more convenient, more secure and easy to set up.
Yes, that's right. But CVS is easy to install, even on old server hardware. SVN needs Apache2 and WebDAV and Bazaar is written in Python. Hm. For me the main reason is, that CVS is the default either in our company (for hundreds of years now ;-)), and all of my stuff at sourceforge or berlios uses CVS.
- one last thing for now ;-) My old Laptop has a screen resolution of 1024x768. It would be great to have icons instead of text as lables
for the tabs of the sidebar.
Any ideas for icons to be used?
The hardest job of the world. ;-)
The "silk icons" are a good source of icons or ideas. (http://www.famfamfam.com/lab/icons/silk/)
I've attached a small PNG with three icons for "symbols". The top most is normally used for tags. The middle one is something like a class diagram. Both icons are out of the silk icon package. The last is a stock icon (as far as I know...)
On Tue, 4 Mar 2008 09:25:44 +0100, Joerg Desch jd.vvd@web.de wrote:
On Mon, 3 Mar 2008 21:02:44 +0100 Enrico Tröger enrico.troeger@uvena.de wrote:
CVS is old and there are lots of newer and better SCMs out there ;-). SSH with pubkey authentication is encouraged because it's much more convenient, more secure and easy to set up.
Yes, that's right. But CVS is easy to install, even on old server hardware. SVN needs Apache2 and WebDAV and Bazaar is written in Python.
That isn't true. Subversion does NOT need Apache and webdav. You can run it also via SSH (svn+ssh://...) or directly via svnserve (svn://...).
Hm. For me the main reason is, that CVS is the default either in our company (for hundreds of years now ;-)), and all of my stuff at sourceforge or berlios uses CVS.
Sure. I didn't mean you have to use anything else but at least should consider it. And the problem itself also exists when using subversion with SSH and without pubkey authentication. So, the easiest solution would be to setup pubkey authentication which is more secure and much more convenient (no password typing at all).
- one last thing for now ;-) My old Laptop has a screen resolution of 1024x768. It would be great to have icons instead of text as lables
for the tabs of the sidebar.
Any ideas for icons to be used?
The hardest job of the world. ;-)
The "silk icons" are a good source of icons or ideas. (http://www.famfamfam.com/lab/icons/silk/)
Thanks. Alternatively, what do you think about the idea of shortened labels suggested by Jeff. I would prefer this over icons because it would work always. Icons tend to be installed in the wrong place, conflict with the user's icon theme or whatever ;-).
Regards, Enrico
On Tue, 4 Mar 2008 14:00:18 +0100 Enrico Tröger enrico.troeger@uvena.de wrote:
Yes, that's right. But CVS is easy to install, even on old server hardware. SVN needs Apache2 and WebDAV and Bazaar is written in Python.
That isn't true. Subversion does NOT need Apache and webdav. You can run it also via SSH (svn+ssh://...) or directly via svnserve (svn://...).
Ok, that's a new info for me. I only use the client from time to time. I've tried to install a svn server and the only thing I could find (a few years ago) was something like this (debian package):
libapache2-svn - Subversion server modules for Apache
I think I'll give it a try on my server at home....
So, the easiest solution would be to setup pubkey authentication which is more secure and much more convenient (no password typing at all).
You are the second one you told me that. ssh-agent is already running, so I only have to read the manual how to add my key.
Alternatively, what do you think about the idea of shortened labels suggested by Jeff. I would prefer this over icons because it would work always. Icons tend to be installed in the wrong place, conflict with the user's icon theme or whatever ;-).
That's your decision. I would prefer icons with hover text, but shortened labels are OK. Is there a way to cut off the strings depending on the space needed? I think the mentioned "single character" labels are to hard....
On Tue, 4 Mar 2008 14:32:31 +0100, Joerg Desch jd.vvd@web.de wrote:
On Tue, 4 Mar 2008 14:00:18 +0100 Enrico Tröger enrico.troeger@uvena.de wrote:
Yes, that's right. But CVS is easy to install, even on old server hardware. SVN needs Apache2 and WebDAV and Bazaar is written in Python.
That isn't true. Subversion does NOT need Apache and webdav. You can run it also via SSH (svn+ssh://...) or directly via svnserve (svn://...).
Ok, that's a new info for me. I only use the client from time to time. I've tried to install a svn server and the only thing I could find (a few years ago) was something like this (debian package):
libapache2-svn - Subversion server modules for Apache
I think I'll give it a try on my server at home....
If you can use SSH you don't need a subversion at all because you can tunnel the svn commands through a SSH connection (svn+ssh). I think Frank can explain it in more detail since he used it already this way. And of course, you can use svnserve with (x)inetd or as standalone server. Have a look at the svnbook, it's all explained there. Can be found with your favourite search engine ;-).
So, the easiest solution would be to setup pubkey authentication which is more secure and much more convenient (no password typing at all).
You are the second one you told me that. ssh-agent is already running, so I only have to read the manual how to add my key.
Hehe. One could interpret the missing password entry box in the plugin as a feature which should encourage users to use pubkey authentication ;-).
Alternatively, what do you think about the idea of shortened labels suggested by Jeff. I would prefer this over icons because it would work always. Icons tend to be installed in the wrong place, conflict with the user's icon theme or whatever ;-).
That's your decision. I would prefer icons with hover text, but shortened labels are OK. Is there a way to cut off the strings depending on the
I'm not sure. Maybe we can do some tricks with gtk_label_set_ellipsize () which cuts text by some criteria and add "...". It's just my first thought without any verification ;-).
space needed? I think the mentioned "single character" labels are to hard....
Yes, single characters can be ambiguous.
Regards, Enrico