Hi,
I created a Windows build of SVN r2078.
It contains a fix for the broken Run command for Java files on Windows (as well as all other changes between SVN r2070 and r2078)
http://files.uvena.de/geany/geany-0.13svn2078_setup.exe http://files.uvena.de/geany/geany-0.13svn2078_nogtk_setup.exe http://files.uvena.de/geany/geany-0.13svn2078_win32.zip
Regards, Enrico
Enrico Tröger wrote:
Hi,
I created a Windows build of SVN r2078.
It contains a fix for the broken Run command for Java files on Windows (as well as all other changes between SVN r2070 and r2078)
I don't know exactly what changes that are, but I am now unable to load any text file that has no specific encoding. I have to set it in the open dialog, otherwise I get an error on the status message tab and the file won't open ("The file <filename> does not look like a text file or the file encoding is not supported") This happens on Delphi files that were created in the Delphi IDE and are usually Windows-1252 encoded files. Is this supposed to (not) work that way or is it a bug?
Best regards Andreas
On Mon, 03 Dec 2007 17:21:39 +0100, Andreas Tscharner andy@vis.ethz.ch wrote:
Hi,
I created a Windows build of SVN r2078.
It contains a fix for the broken Run command for Java files on Windows (as well as all other changes between SVN r2070 and r2078)
I don't know exactly what changes that are, but I am now unable to load any text file that has no specific encoding. I have to set it in the open dialog, otherwise I get an error on the status message tab and the file won't open ("The file <filename> does not look like a text file or the file encoding is not supported") This happens on Delphi files that were created in the Delphi IDE and are usually Windows-1252 encoded files. Is this supposed to (not) work that way or is it a bug?
Not a bug, just a random feature.
No, of course not. The r2070 build worked for you? There were no related changes between these to builds so I'm not sure what's going on. Can you send me one or two example files? If so, please send them compressed to keep the original encoding.
Regards, Enrico
Enrico Tröger wrote:
No, of course not. The r2070 build worked for you? There were no related changes between these to builds so I'm not sure what's going on. Can you send me one or two example files? If so, please send them compressed to keep the original encoding.
I must have been a very lucky guy to try to load exactly these two files that don't work (and they don't work for a reason). So sorry for bothering.
But I noticed something else: If I create a new file with encoding UTF-8 and mode "Win (CRLF)", and save it, say, as Pascal file ending .pas, the saved file contains a CR CR LF at the end of the line. I looked it up with a hex editor: 0D 0D 0A UltraEdit asks me if I want to convert the file to DOS mode. If I say yes, it removes one of the CR, if I say no, both CR stay (confirmed in the HEX mode in ultra edit). If I open the same file in the Delphi IDE, I always have one additional line between my code lines.
Is this intentional (the correct way respectively)? And UE does the right thing and Delphi fails? Or is it a geany speciality? ;-)
Best regards Andreas
On Wed, 05 Dec 2007 15:24:03 +0100, Andreas Tscharner andy@vis.ethz.ch wrote:
Enrico Tröger wrote:
No, of course not. The r2070 build worked for you? There were no related changes between these to builds so I'm not sure what's going on. Can you send me one or two example files? If so, please send them compressed to keep the original encoding.
I must have been a very lucky guy to try to load exactly these two files that don't work (and they don't work for a reason). So sorry
Ok no problem.
But I noticed something else: If I create a new file with encoding UTF-8 and mode "Win (CRLF)", and save it, say, as Pascal file ending .pas, the saved file contains a CR CR LF at the end of the line. I looked it up with a hex editor: 0D 0D 0A UltraEdit asks me if I want to convert the file to DOS mode. If I say yes, it removes one of the CR, if I say no, both CR stay (confirmed in the HEX mode in ultra edit). If I open the same file in the Delphi IDE, I always have one additional line between my code lines.
Is this intentional (the correct way respectively)? And UE does the right thing and Delphi fails? Or is it a geany speciality? ;-)
I'm not sure what UE does and whether it should do it ;-). But the behaviour in the Delphi IDE is probably what you should get because there _are_ additional line breaks after each line break. This was a bug in the r2070 and r2078 builds of Geany. Geany 0.12 is working fine. I introduced this unintentionally while removing some other code some weeks ago. I'm sorry. Fixed in SVN r2090.
Regards, Enrico
On Wed, 5 Dec 2007 16:25:13 +0100, Enrico Tröger enrico.troeger@uvena.de wrote:
[wrong line endings are saving files on Windows]
And here is the new build:
http://files.uvena.de/geany/geany-0.13svn_r2091_setup.exe http://files.uvena.de/geany/geany-0.13svn_r2091_nogtk_setup.exe http://files.uvena.de/geany/geany-0.13svn_r2091_win32.zip
Regards, Enrico
P.S.: I deleted the r2070 and r2078 builds and linked their filenames to the new build to keep old links working.
I have to make enfasis on compilation support for windows please. What is the use of an IDE which can not compile.
Yeah, it still being usefull for python or other interpreted languages, but even scite can run python scripts almost automatic.
Cheers. :)
2007/12/5, Enrico Tröger enrico.troeger@uvena.de:
On Wed, 5 Dec 2007 16:25:13 +0100, Enrico Tröger enrico.troeger@uvena.de wrote:
[wrong line endings are saving files on Windows]
And here is the new build:
http://files.uvena.de/geany/geany-0.13svn_r2091_setup.exe http://files.uvena.de/geany/geany-0.13svn_r2091_nogtk_setup.exe http://files.uvena.de/geany/geany-0.13svn_r2091_win32.zip
Regards, Enrico
P.S.: I deleted the r2070 and r2078 builds and linked their filenames to the new build to keep old links working.
-- Get my GPG key from http://www.uvena.de/pub.key
Geany mailing list Geany@uvena.de http://uvena.de/cgi-bin/mailman/listinfo/geany
Enrico Tröger wrote:
On Wed, 5 Dec 2007 16:25:13 +0100, Enrico Tröger enrico.troeger@uvena.de wrote:
[wrong line endings are saving files on Windows]
And here is the new build:
Line endings work again. Thank you very much!
Best regards Andreas
On Wed, 5 Dec 2007 22:02:26 -0300, "Diego Jacobi" jacobidiego@gmail.com wrote:
I have to make enfasis on compilation support for windows please. What is the use of an IDE which can not compile.
Yeah, it still being usefull for python or other interpreted languages, but even scite can run python scripts almost automatic.
Geany already can run files on Windows for a long time. The current SVN version also can compile and build files as well as executing make commands. But it needs testing to find remaining bugs. So, just test the code and report anything you notice.
Regards, Enrico
mmmm, yes, sorry for that, i double checked and it works, i have now some bug reports:
I downloaded the file: http://files.uvena.de/geany/geany-0.13svn_r2091_win32.zip and the build menu was disabled with a previously opened project ( with only a main.c file ). I have to open the main.c to compile it and run it.
In Project properties, to choose the file to be run (it shoulnd't be necessary becouse when compiling the output file should have the project name) it opens a windows open-dialog behind the properties-dialog and makes some drawing problems when moving the open-dialog. Also it starts with a filter to geany-project-files and it should be all files to select a .exe file.
Second, the open, save, paths-selection, etc. dialogs are gtk'd dialogs, i think that there should be some uniform design and in my opinion if you could make all of it as windows dialogs it will be easier and cleaner for a windows user, becouse gtk'd dialog are too diferent to windows dialog and doesn't look or adapt so well as in linux. An example. A gtk dialog can not follow shortcuts.
Third, when compiling or running a python scripts, it needs to be on the path, but the python installer doesn't place it on the path. So, there are 3 options: 1) tell to place the python folder on the windows path. 2) ask for the python folder in some config dialog. 3) ask to the OS where is python installed automatically.
I think that, if the specified path in (2) is set to something, then use it (imagine multiple versions of python in the system and the user wants to test the program on all of them), and if it is not set do method (1), if doesn't work, check for method (3).
Also the same process should be for any other interpreted language.
Cheers. Diego
2007/12/6, Enrico Tröger enrico.troeger@uvena.de:
On Wed, 5 Dec 2007 22:02:26 -0300, "Diego Jacobi" jacobidiego@gmail.com wrote:
I have to make enfasis on compilation support for windows please. What is the use of an IDE which can not compile.
Yeah, it still being usefull for python or other interpreted languages, but even scite can run python scripts almost automatic.
Geany already can run files on Windows for a long time. The current SVN version also can compile and build files as well as executing make commands. But it needs testing to find remaining bugs. So, just test the code and report anything you notice.
Regards, Enrico
-- Get my GPG key from http://www.uvena.de/pub.key
Geany mailing list Geany@uvena.de http://uvena.de/cgi-bin/mailman/listinfo/geany
Also. This is my include-path on windows: C:\GTK\INCLUDE;C:\GTK\INCLUDE\GTK-2.0;C:\GTK\INCLUDE\GLIB-2.0 ;C:\GTK\INCLUDE\PANGO-1.0;C:\GTK\INCLUDE\CAIRO;C:\GTK\INCLUDE\ATK-1.0 ;C:\GTK\INCLUDE\GTKGLEXT-1.0;C:\GTK\LIB\GTK-2.0\INCLUDE;C:\GTK\LIB\GLIB- 2.0\INCLUDE;C:\GTK\LIB\GTKGLEXT-1.0\INCLUDE;C:\GTK\INCLUDE\LIBGLADE-2.0 ;C:\GTK\INCLUDE\LIBXML2;
But seems like i have to put it by hand on a gcc command, maybe you can make a %i to be replaced for this path, or include this eviron-string automatically on the default gcc command.
Cheers.
2007/12/6, Diego Jacobi jacobidiego@gmail.com:
mmmm, yes, sorry for that, i double checked and it works, i have now some bug reports:
I downloaded the file: http://files.uvena.de/geany/geany-0.13svn_r2091_win32.zip and the build menu was disabled with a previously opened project ( with only a main.c file ). I have to open the main.c to compile it and run it.
In Project properties, to choose the file to be run (it shoulnd't be necessary becouse when compiling the output file should have the project name) it opens a windows open-dialog behind the properties-dialog and makes some drawing problems when moving the open-dialog. Also it starts with a filter to geany-project-files and it should be all files to select a .exe file.
Second, the open, save, paths-selection, etc. dialogs are gtk'd dialogs, i think that there should be some uniform design and in my opinion if you could make all of it as windows dialogs it will be easier and cleaner for a windows user, becouse gtk'd dialog are too diferent to windows dialog and doesn't look or adapt so well as in linux. An example. A gtk dialog can not follow shortcuts.
Third, when compiling or running a python scripts, it needs to be on the path, but the python installer doesn't place it on the path. So, there are 3 options:
- tell to place the python folder on the windows path.
- ask for the python folder in some config dialog.
- ask to the OS where is python installed automatically.
I think that, if the specified path in (2) is set to something, then use it (imagine multiple versions of python in the system and the user wants to test the program on all of them), and if it is not set do method (1), if doesn't work, check for method (3).
Also the same process should be for any other interpreted language.
Cheers. Diego
2007/12/6, Enrico Tröger <enrico.troeger@uvena.de >:
On Wed, 5 Dec 2007 22:02:26 -0300, "Diego Jacobi" < jacobidiego@gmail.com> wrote:
I have to make enfasis on compilation support for windows please. What is the use of an IDE which can not compile.
Yeah, it still being usefull for python or other interpreted languages, but even scite can run python scripts almost automatic.
Geany already can run files on Windows for a long time. The current SVN version also can compile and build files as well as executing make commands. But it needs testing to find remaining bugs. So, just test the code and report anything you notice.
Regards, Enrico
-- Get my GPG key from http://www.uvena.de/pub.key
Geany mailing list Geany@uvena.de http://uvena.de/cgi-bin/mailman/listinfo/geany
Diego Jacobi wrote:
Second, the open, save, paths-selection, etc. dialogs are gtk'd dialogs, i think that there should be some uniform design and in my opinion if you could make all of it as windows dialogs it will be easier and cleaner for a windows user, becouse gtk'd dialog are too diferent to windows dialog and doesn't look or adapt so well as in linux. An example. A gtk dialog can not follow shortcuts.
geany is NOT a Windows app in the first place, that's why the dialogs are all GTK dialogs. If GTK chooses to use the Windows dialogs, this will change in geany too; if it does not, I'm sure Enrico is glad to get your patches ;-)
Best regards Andreas
On Thu, 06 Dec 2007 17:20:04 +0100, Andreas Tscharner andy@vis.ethz.ch wrote:
Diego Jacobi wrote:
Second, the open, save, paths-selection, etc. dialogs are gtk'd dialogs, i think that there should be some uniform design and in my opinion if you could make all of it as windows dialogs it will be easier and cleaner for a windows user, becouse gtk'd dialog are too diferent to windows dialog and doesn't look or adapt so well as in linux. An example. A gtk dialog can not follow shortcuts.
geany is NOT a Windows app in the first place, that's why the dialogs are all GTK dialogs. If GTK chooses to use the Windows dialogs, this will change in geany too; if it does not, I'm sure Enrico is glad to get your patches ;-)
Of course ;-).
Regards, Enrico
On Thu, 6 Dec 2007 12:24:37 -0300, "Diego Jacobi" jacobidiego@gmail.com wrote:
Hi,
I downloaded the file: http://files.uvena.de/geany/geany-0.13svn_r2091_win32.zip and the build menu was disabled with a previously opened project ( with only a main.c file ). I have to open the main.c to compile it and run it.
Was the main.c opened when starting Geany or was only the project loaded without any opened files?
In Project properties, to choose the file to be run (it shoulnd't be necessary becouse when compiling the output file should have the project name) it opens a windows open-dialog behind the
No, I don't agree. Project name and executable filename are two different things.
properties-dialog and makes some drawing problems when moving the open-dialog. Also it starts with a filter to geany-project-files and it should be all files to select a .exe file.
Yes, this is a bug and will be fixed soon. Thanks. I'll also have a look at the problem of opening dialogs behind others. This happens also sometimes with the file open dialog on Windows.
Second, the open, save, paths-selection, etc. dialogs are gtk'd dialogs, i think that there should be some uniform design and in my opinion if you could make all of it as windows dialogs it will be easier and cleaner for a windows user, becouse gtk'd dialog are too diferent to windows dialog and doesn't look or adapt so well as in linux. An example. A gtk dialog can not follow shortcuts.
Please read the manual. There were the default Windows dialogs for a long time but we changed back to default GTK dialogs because there is no way(at least I don't know it) to add custom widgets to a Windows file open/save dialog. When using the Windows dialogs, all additional features of Geany's open/save dialogs are lost. If you really need them, compile Geany from source and set GEANY_USE_WIN32_DIALOG to 1 in src/geany.h (see http://geany.uvena.de/manual/index.html#compile-time-options)
Third, when compiling or running a python scripts, it needs to be on the path, but the python installer doesn't place it on the path. So, there are 3 options:
- tell to place the python folder on the windows path.
- ask for the python folder in some config dialog.
Open Build->Set Includes and Arguments and then adjust the Execute field to the path to your python executable as necessary.
- ask to the OS where is python installed automatically.
How to do that? Doesn't the $PATH variable exist exactly for that reason?
Regards, Enrico
On Thu, 6 Dec 2007 12:34:58 -0300, "Diego Jacobi" jacobidiego@gmail.com wrote:
Also. This is my include-path on windows:
where did you set it? This is not a problem of Geany but of your setup and/or gcc. To avoid passing all this on the command line I suggest to use Makefiles.
C:\GTK\INCLUDE;C:\GTK\INCLUDE\GTK-2.0;C:\GTK\INCLUDE\GLIB-2.0 ;C:\GTK\INCLUDE\PANGO-1.0;C:\GTK\INCLUDE\CAIRO;C:\GTK\INCLUDE\ATK-1.0 ;C:\GTK\INCLUDE\GTKGLEXT-1.0;C:\GTK\LIB\GTK-2.0\INCLUDE;C:\GTK\LIB \GLIB- 2.0\INCLUDE;C:\GTK\LIB\GTKGLEXT-1.0\INCLUDE;C:\GTK\INCLUDE \LIBGLADE-2.0 ;C:\GTK\INCLUDE\LIBXML2;
But seems like i have to put it by hand on a gcc command, maybe you can make a %i to be replaced for this path, or include this eviron-string automatically on the default gcc command.
No, see above.
Regards, Enrico
"Was the main.c opened when starting Geany or was only the project loaded without any opened files?" The main.c was not open, i opened geany and i got a blank file and when clicking on open project, it ask me to close the existing one. So the project was open but not the main.c
"Project name and executable filename are two different things." I was talking about a default appname. If the programmer choose to set one diferent, then he should be able to do it, but if i compile a main.c i get a main.exe, and not a projectname.exe. Then, setting a file to run can be done almost automatically checking if projectname.exe exists, if not, shows an open dialog.
About the GEANY_USE_WIN32_DIALOG. its nice to have the option. Seems like the project is very well driven. There says: "The default Windows file dialogs are missing some nice features like choosing a filetype or an encoding." Choosing filetype?, i always have a combobox to choose, but i think that is called filter. Which in this case is almost the same. About encoding, most good text editors i have seen, tries to autodetect the encoding, and allows to change it with options on the menu. I think that the best reason to not use windows-dialogs is to only use gtk and force windows use to adapt it self to the free world.
"Open Build->Set Includes and Arguments and then adjust the Execute field to the path to your python executable as necessary." The "Execute field" is disabled, but it executes well, i guess that is not calling python directly to run the script, geany executes it directly. But for compiling it fails.
"How to do that? Doesn't the $PATH variable exist exactly for that reason?" I think that not all the users can have access to change the environment variables. To ask the OS i think that will be needed to use some windows files, maybe rundll or maybe, the windows api, i can check for that if you want. :)
"where did you set it? This is not a problem of Geany but of your setup and/or gcc. To avoid passing all this on the command line I suggest to use Makefiles."
I didn't SET it. The GTK installer does. And gcc is installed by its installer so both are as they come. What do you mean with the problem is on my gcc setup. Should gcc always check on the includes environ? I know about the makefile, thanks.
Cheers. Diego :)
2007/12/6, Enrico Tröger enrico.troeger@uvena.de:
On Thu, 6 Dec 2007 12:34:58 -0300, "Diego Jacobi" < jacobidiego@gmail.com> wrote:
Also. This is my include-path on windows:
where did you set it? This is not a problem of Geany but of your setup and/or gcc. To avoid passing all this on the command line I suggest to use Makefiles.
C:\GTK\INCLUDE;C:\GTK\INCLUDE\GTK-2.0;C:\GTK\INCLUDE\GLIB-2.0 ;C:\GTK\INCLUDE\PANGO-1.0;C:\GTK\INCLUDE\CAIRO;C:\GTK\INCLUDE\ATK-1.0 ;C:\GTK\INCLUDE\GTKGLEXT-1.0;C:\GTK\LIB\GTK- 2.0\INCLUDE;C:\GTK\LIB \GLIB- 2.0\INCLUDE;C:\GTK\LIB\GTKGLEXT-1.0\INCLUDE;C:\GTK\INCLUDE \LIBGLADE-2.0 ;C:\GTK\INCLUDE\LIBXML2;
But seems like i have to put it by hand on a gcc command, maybe you can make a %i to be replaced for this path, or include this eviron-string automatically on the default gcc command.
No, see above.
Regards, Enrico
-- Get my GPG key from http://www.uvena.de/pub.key
Geany mailing list Geany@uvena.de http://uvena.de/cgi-bin/mailman/listinfo/geany
On Thu, 6 Dec 2007 19:12:01 -0300, "Diego Jacobi" jacobidiego@gmail.com wrote:
"Was the main.c opened when starting Geany or was only the project loaded without any opened files?" The main.c was not open, i opened geany and i got a blank file and when clicking on open project, it ask me to close the existing one. So the project was open but not the main.c
Geany has "only" a basic project support. What it can and what not is described in the manual.
"Project name and executable filename are two different things." I was talking about a default appname. If the programmer choose to set one diferent, then he should be able to do it, but if i compile a main.c i get a main.exe, and not a projectname.exe. Then, setting a file to run can be done almost automatically checking if projectname.exe exists, if not, shows an open dialog.
If you compile or build a file, you compile or build a file. There is no support to build a project or something line this. Maybe one want to write a plugin or patch for this. Otherwise, using Makefiles would lead to the same result with much less work.
About the GEANY_USE_WIN32_DIALOG. its nice to have the option. Seems like the project is very well driven. There says: "The default Windows file dialogs are missing some nice features like choosing a filetype or an encoding." Choosing filetype?, i always have a combobox to choose, but i think that is called filter. Which in this case is almost the same.
No, it is no the same. The filter only filters files according to the chosen filetype. The filetype selection in the GTK dialog is meant to set the filetype with which Geany should open the selected file(s) instead of autodetecting the filetype.
About encoding, most good text editors i have seen, tries to autodetect the encoding, and allows to change it with options on the
Geany does this too. But there are limitations in auto-detecting the file encoding. Patches to improve are welcome but the shown encoding list was requested by users to manually choose an encoding when opening files.
"Open Build->Set Includes and Arguments and then adjust the Execute field to the path to your python executable as necessary." The "Execute field" is disabled, but it executes well, i guess that is not calling python directly to run the script, geany executes it directly. But for compiling it fails.
The execute field is disabled when you have an opened project and have set a Run command for the project.
"How to do that? Doesn't the $PATH variable exist exactly for that reason?" I think that not all the users can have access to change the environment variables.
Why? AFAIK, the PATH environment variable can also be set as an user without admin privileges. And it is just the common way.
To ask the OS i think that will be needed to use some windows files, maybe rundll or maybe, the windows api, i can check for that if you want. :)
If you want to, do it ;-).
"where did you set it? This is not a problem of Geany but of your setup and/or gcc. To avoid passing all this on the command line I suggest to use Makefiles."
I didn't SET it. The GTK installer does. And gcc is installed by its installer so both are as they come. What do you mean with the problem is on my gcc setup. Should gcc always check on the includes environ?
I don't know whether gcc should check these, should Geany? Then you need the same thing for linker includes. And it seems not be some standard way. Build support in Geany is not meant to be a complex support-everything system but just a basic way to easily compile and build small files. For bigger, more complex projects or source code files there is the possibility to execute the make command.
Regards, Enrico
2007/12/7, Enrico Tröger enrico.troeger@uvena.de:
On Thu, 6 Dec 2007 19:12:01 -0300, "Diego Jacobi" jacobidiego@gmail.com wrote:
"Was the main.c opened when starting Geany or was only the project loaded without any opened files?" The main.c was not open, i opened geany and i got a blank file and when clicking on open project, it ask me to close the existing one. So the project was open but not the main.c
Geany has "only" a basic project support. What it can and what not is described in the manual.
Yes, i see now, the build menu on geany is related to the file opened, not to the project. I see that options on this menu change according to the programming language. This can make things really easy for single file projects, and for large projects ones must use makefiles. I perfectly agree with that.
"Project name and executable filename are two
different things." I was talking about a default appname. If the programmer choose to set one diferent, then he should be able to do it, but if i compile a main.c i get a main.exe, and not a projectname.exe. Then, setting a file to run can be done almost automatically checking if projectname.exe exists, if not, shows an open dialog.
If you compile or build a file, you compile or build a file. There is no support to build a project or something line this.Maybe one want
to write a plugin or patch for this. Otherwise, using Makefiles would
lead to the same result with much less work.
Seems like you dont understand me. I wasn't talking about makefiles. And i agree projects should use makefiles not projects files.
About the GEANY_USE_WIN32_DIALOG. its nice to have the option. Seems
like the project is very well driven. There says: "The default Windows file dialogs are missing some nice features like choosing a filetype or an encoding." Choosing filetype?, i always have a combobox to choose, but i think that is called filter. Which in this case is almost the same.
No, it is no the same. The filter only filters files according to the chosen filetype. The filetype selection in the GTK dialog is meant to set the filetype with which Geany should open the selected file(s) instead of autodetecting the filetype.
I see what you say. Any way, i have never get on the need to have a so uncommon coded file that i should exactly tell what is the encodding. Cant the autodetection ask for the encodding if doesn't detect it?
About encoding, most good text editors i have seen, tries to
autodetect the encoding, and allows to change it with options on the
Geany does this too. But there are limitations in auto-detecting the file encoding. Patches to improve are welcome but the shown encoding list was requested by users to manually choose an encoding when opening files.
"Open Build->Set Includes and Arguments and then adjust the Execute field to the path to your python executable as necessary." The "Execute field" is disabled, but it executes well, i guess that is not calling python directly to run the script, geany executes it directly. But for compiling it fails.
The execute field is disabled when you have an opened project and have set a Run command for the project.
"How to do that? Doesn't the $PATH variable exist exactly for that reason?" I think that not all the users can have access to change the environment variables.
Why? AFAIK, the PATH environment variable can also be set as an user without admin privileges. And it is just the common way.
To ask the OS i think that will be needed to use some windows files, maybe rundll or maybe, the windows api, i can check for that if you want. :)
If you want to, do it ;-).
"where did you set it? This is not a problem of Geany but of your setup and/or gcc. To avoid passing all this on the command line I suggest to use Makefiles."
I didn't SET it. The GTK installer does. And gcc is installed by its installer so both are as they come. What do you mean with the problem is on my gcc setup. Should gcc always check on the includes environ?
I don't know whether gcc should check these, should Geany? Then you need the same thing for linker includes. And it seems not be some standard way. Build support in Geany is not meant to be a complex support-everything system but just a basic way to easily compile and build small files. For bigger, more complex projects or source code files there is the possibility to execute the make command.
I tried to compile a single file gtked hello world to test geany as a build environment for gtk, and it fails. Why? becouse i have to put manually each include path on the gcc line, which are all already on the INCLUDES path on windows.
To compile a single filed hello world i have to make a makefile. I think that it should maybe the 5º or 6º step on the gtk lernning process, or any C lernning process. Makefiles are not easy for people how recently try to learn programming, and also i think that for compiling a single filed hello world when all the includes and libs folders are already declared on the systems environment variables a makefile shouldn't be necesary.
Dont know how much dificult could be appending a %I to be replaced for as many include paths as are on the INCLUDE environ or a %L to libs. It will make things easier for simple projects, and leave makefiles only for multifiled projects. The process should be: Read the INCLUDES environ. Split with ";" (windows separator). Append -I to each path. Join the list of paths. Replace %I for the join list of paths. The same for libs.
It makes testing an api and lernning much more easy as there is no need to make a makefile.
Cheers. Diego
Hi
On Fri, Dec 07, 2007 at 06:09:55PM -0300, Diego Jacobi wrote:
Any way, i have never get on the need to have a so uncommon coded file that i should exactly tell what is the encodding. Cant the autodetection ask for the encodding if doesn't detect it?
Autodetection fails 100% on every cp1251 russian or belarusian file. Asking every time for encoding will be extremely annoying.
Best regards, Yura Siamashka
2007/12/7, Yura Siamashka yurand2@gmail.com:
Hi
On Fri, Dec 07, 2007 at 06:09:55PM -0300, Diego Jacobi wrote:
Any way, i have never get on the need to have a so uncommon coded file
that
i should exactly tell what is the encodding. Cant the autodetection ask for the encodding if doesn't detect it?
Autodetection fails 100% on every cp1251 russian or belarusian file. Asking every time for encoding will be extremely annoying.
oh. Didnt know. But isn't it as annoying as manually selecting every time on the opendialog - combobox? Or the combobox remembers the last selected value. In this case if you previusly have selected this cb1251 and then you want to open another file encoded diferently, you have to change it again, if you dont know the format, you have to make it autodetect, and if it fails, you have to manually guess and try. If the autodetect ask when it fails, then it can save this choice for the next fail and try it before asking again. In this way, this dialog will show up only once until another undetected file format appear. Any way, the current opendialog doesn't hurt anyone. :)
Regards. Diego
On Sat, 8 Dec 2007 01:54:20 +0200, Yura Siamashka yurand2@gmail.com wrote:
Hi
On Fri, Dec 07, 2007 at 06:09:55PM -0300, Diego Jacobi wrote:
Any way, i have never get on the need to have a so uncommon coded file that i should exactly tell what is the encodding. Cant the autodetection ask for the encodding if doesn't detect it?
Autodetection fails 100% on every cp1251 russian or belarusian file. Asking every time for encoding will be extremely annoying.
But it should be a little bit better now with the both changes in SVN r2093. For session files, Geany remembers the used encoding, i.e. set it once after failed auto detection and it gets the set encoding after next start(as long the file is open in Geany).
And for often used files, you can add geany_encoding=WINDOWS-1251 to the beginning of the file(e.g. in a comment). Then Geany will use this encoding instead of any auto detected one.
Btw, does anyone know whether there is a difference between WINDOWS-1251 and CP-1251? "iconv -l" list both, Geany uses WINDOWS-1251. Are they both listed to provide an alternative name or is there a real difference(for iconv)?
Regards, Enrico
On Fri, 7 Dec 2007 18:09:55 -0300, "Diego Jacobi" jacobidiego@gmail.com wrote:
"Project name and executable filename are two
different things." I was talking about a default appname. If the programmer choose to set one diferent, then he should be able to do it, but if i compile a main.c i get a main.exe, and not a projectname.exe. Then, setting a file to run can be done almost automatically checking if projectname.exe exists, if not, shows an open dialog.
If you compile or build a file, you compile or build a file. There is no support to build a project or something line this.Maybe one want
to write a plugin or patch for this. Otherwise, using Makefiles would
lead to the same result with much less work.
Seems like you dont understand me.
Ok, after re-reading I think I got it: you want be able to change the -o option which is appended by Geany to the compiler?
About the GEANY_USE_WIN32_DIALOG. its nice to have the option. Seems
like the project is very well driven. There says: "The default Windows file dialogs are missing some nice features like choosing a filetype or an encoding." Choosing filetype?, i always have a combobox to choose, but i think that is called filter. Which in this case is almost the same.
No, it is no the same. The filter only filters files according to the chosen filetype. The filetype selection in the GTK dialog is meant to set the filetype with which Geany should open the selected file(s) instead of autodetecting the filetype.
I see what you say. Any way, i have never get on the need to have a so uncommon coded file that i should exactly tell what is the encodding.
Just be happy about that ;-). The best way is to always use UTF-8 or UTF-16 for file encodings and everything will work fine.
Cant the autodetection ask for the encodding if doesn't detect it?
No, Yura mentioned one reason and the other reason is that the auto detection doesn't know if it fails otherwise it wouldn't fail ;-). To be more clear: when I was speaking about failed auto detection, I meant Geany detects a file encoding and use it but it isn't the right one. If the file couldn't be converted into any known encoding, i.e. encoding conversion failed completely, Geany will print an error message and will refuse to open the file.
I don't know whether gcc should check these, should Geany? Then you need the same thing for linker includes. And it seems not be some standard way. Build support in Geany is not meant to be a complex support-everything system but just a basic way to easily compile and build small files. For bigger, more complex projects or source code files there is the possibility to execute the make command.
I tried to compile a single file gtked hello world to test geany as a build environment for gtk, and it fails. Why? becouse i have to put manually each include path on the gcc line, which are all already on the INCLUDES path on windows.
Sure. But I still think this is not a problem of Geany. GTK has a bunch of files which need to be included and the same for libraries to link against. pkg-config exists and it also works for Windows. gcc -o testapp testapp.c `pkg-config --cflags --libs gtk+-2.0` (ok, I'm not sure whether the backticks work on Windows)
Dont know how much dificult could be appending a %I to be replaced for as many include paths as are on the INCLUDE environ or a %L to libs. It will make things easier for simple projects, and leave makefiles only for multifiled projects. The process should be: Read the INCLUDES environ. Split with ";" (windows separator). Append -I to each path. Join the list of paths. Replace %I for the join list of paths. The same for libs.
This could be done but is INCLUDES a common used environment variable or is it just set by the GTK installer? How is the one for the libs called? And there might be another problem: splitting the list and building a command line for gcc with each entry might fail because there a limits for the length of a command line. Maybe this doesn't matter because the limits are high enough.
Patches are welcome. Anyway, IMO a better way could be to write a Makefile generator plugin or something like this.
Regards, Enrico
2007/12/9, Enrico Tröger enrico.troeger@uvena.de:>
Seems like you dont understand me.
Ok, after re-reading I think I got it: you want be able to change the -o option which is appended by Geany to the compiler?
Yes, but is not a big issue. :D If the projectname is "geany" the executable should be "geany.exe", but if the file is called main.c, its output seems to be main.exe. In one computer can be lots of main.c. Not to mention code-backups. This will get into tons of main.exe ones for each project. My idea is if the file is on the project path, then this file belong to the project, and the output name should be the project name by default. Always changeable.
I see what you say. Any way, i have never get on the need to have a so uncommon coded file that i should exactly tell what is the encodding.
Just be happy about that ;-). The best way is to always use UTF-8 or UTF-16 for file encodings and everything will work fine.
So, then, what is the reason to not convert all of this encodings to UTF-8 automatically? or asking to the user.
I tried to compile a single file gtked hello world to test geany as a build environment for gtk, and it fails. Why? becouse i have to put manually each include path on the gcc line, which are all already on the INCLUDES path on windows.
Sure. But I still think this is not a problem of Geany. GTK has a bunch of files which need to be included and the same for libraries to link against. pkg-config exists and it also works for Windows. gcc -o testapp testapp.c `pkg-config --cflags --libs gtk+-2.0` (ok, I'm not sure whether the backticks work on Windows)
Nop, doesn't work. Only on MSYS. But having MSYS just for running backticks. Will kill the light behavior of geany.
The process should be:
Read the INCLUDES environ. Split with ";" (windows separator). Append -I to each path. Join the list of paths. Replace %I for the join list of paths. The same for libs.
This could be done but is INCLUDES a common used environment variable or is it just set by the GTK installer? How is the one for the libs called? And there might be another problem: splitting the list and building a command line for gcc with each entry might fail because there a limits for the length of a command line. Maybe this doesn't matter because the limits are high enough.
Patches are welcome. Anyway, IMO a better way could be to write a Makefile generator plugin or something like this.
The environ is "INCLUDE" and the libs environ is "LIB", there is also "GTK_BASEPATH". Is used by GTK and other tools/libs for windows, like wxWindows.
But with these way, geany doesn't need to have an includes-dialog. I'm not sure about libs. Can they be explicitly declared on the source code? If so, then geany can just say how with an example in a messagebox.
Regards.
Hi
On Sun, Dec 09, 2007 at 05:18:13PM +0100, Enrico Tröger wrote:
Btw, does anyone know whether there is a difference between WINDOWS-1251 and CP-1251? "iconv -l" list both, Geany uses WINDOWS-1251. Are they both listed to provide an alternative name or is there a real difference(for iconv)?
No difference, it is same thing.
Best regards, Yura Siamashka
On Mon, 10 Dec 2007 00:48:07 +0200, Yura Siamashka yurand2@gmail.com wrote:
Hi
On Sun, Dec 09, 2007 at 05:18:13PM +0100, Enrico Tröger wrote:
Btw, does anyone know whether there is a difference between WINDOWS-1251 and CP-1251? "iconv -l" list both, Geany uses WINDOWS-1251. Are they both listed to provide an alternative name or is there a real difference(for iconv)?
No difference, it is same thing.
Ok thanks.
Regards, Enrico
On Sun, 9 Dec 2007 19:10:04 -0300, "Diego Jacobi" jacobidiego@gmail.com wrote:
2007/12/9, Enrico Tröger enrico.troeger@uvena.de:>
Seems like you dont understand me.
Ok, after re-reading I think I got it: you want be able to change the -o option which is appended by Geany to the compiler?
Yes, but is not a big issue. :D If the projectname is "geany" the executable should be "geany.exe", but if the file is called main.c, its output seems to be main.exe. In one computer can be lots of main.c. Not to mention code-backups. This will get into tons of main.exe ones for each project. My idea is if the file is on the project path, then this file belong to the project, and the output name should be the project name by default. Always changeable.
Ok make sense. But making the output filename changeable would require several changes in the build code. But I try to keep it in mind and change it sometime.
I see what you say. Any way, i have never get on the need to have a so uncommon coded file that i should exactly tell what is the encodding.
Just be happy about that ;-). The best way is to always use UTF-8 or UTF-16 for file encodings and everything will work fine.
So, then, what is the reason to not convert all of this encodings to UTF-8 automatically? or asking to the user.
We _are_ always converting all input into UTF-8 because the embedded Scintilla component doesn't work with non-Unicode encodings(well, it does for some multi-byte encodings IIRC but that doesn't matter). Long time ago before Geany supported real encoding support, everything was read in UTF-8 and saved in UTF-8, i.e. you opened an ISO-8859-1 file with Geany, edited it, saved it and it was an UTF-8 file afterwards. Very bad ;-). The problem at the whole topic is to know from which encoding you want to convert to UTF-8. Because GLib(and its charset conversion capabilities based on iconv) needs the original charset to convert from for any conversion actions.
I tried to compile a single file gtked hello world to test geany as a build environment for gtk, and it fails. Why? becouse i have to put manually each include path on the gcc line, which are all already on the INCLUDES path on windows.
Sure. But I still think this is not a problem of Geany. GTK has a bunch of files which need to be included and the same for libraries to link against. pkg-config exists and it also works for Windows. gcc -o testapp testapp.c `pkg-config --cflags --libs gtk+-2.0` (ok, I'm not sure whether the backticks work on Windows)
Nop, doesn't work. Only on MSYS. But having MSYS just for running
Hmm, sad. It would have done things really easy.
The environ is "INCLUDE" and the libs environ is "LIB", there is also "GTK_BASEPATH". Is used by GTK and other tools/libs for windows, like wxWindows.
But with these way, geany doesn't need to have an includes-dialog.
Hmm, but only on Windows and only if these variables are set. I think this is just to special for GTK and maybe wxWindows.
Can they be explicitly declared on the source code?
Not sure what you mean.
Regards, Enrico