On 11/10/2015 06:04 PM, Lex Trotman wrote:
Geany Dev Team:
Thank you everyone for your insightful and helpful feedback and comments.
I understand that package maintainers compile the code themselves. I am mainly referring to the default compiling options used by Geany or the suggested compilation process used in README files. However, I did some testing, and I did not see any noticeable performance improvements. In other words, my tests show that the defaults are fine. Even when compiling with flags that disable or remove debugging, the Geany executable is not smaller and the memory usage is the same (even when using "strip --strip-debug --strip-unneeded ./geany").
It may not strip much, the symbols are needed for plugins to work, so they won't strip (or if they did plugins would probably fail).
When compiling Geany, I did see many deprecation and pointer warnings (mainly with GTK).
There are heaps of deprecation warnings with GTK3, hence my previous comment about adding --no-deprecate, but there shouldn't be any with GTK2.
What pointer warnings do you get?
By the way, what does "--enable-force" do to the building process? Is it simply a joke?
Probably, maybe it should be updated to a newer meme, although there is a new star wars coming soon :).
I am not disappointed if my code is not merged. I understand that the team needs to ensure that Geany is fast, stable, and lightweight. Plus, this is not "my" project, so I do not expect to have all my ideas implemented just because "I" suggest something.
I will be sure to consider contributing to the Wiki.
Lex, true, licenses could be added as file templates. However, using "Edit > Insert Comments > SOME-LICENSE" is not dependent on the programming language.
The templates can be given an extension, and that will even create the file with that extension, and set the filetype from it. Thats why I said I have apache.hpp and apache.cpp as templates.
Matthew and Lex, so which mailing list is the correct one for plugin development? You each suggested a different mailing list.
Actually we are saying the same thing in differing ways :)
See http://www.geany.org/Support/MailingList, the development list is for development, the user list is for stuff users might care about. Many users are not subscribed to the devel list so if you want comments from the general user community (like how should the UI work) you should use that.
But its the same lists for both plugins and geany itself, sorry for the confusion.
Matthew, as far as adding license templates, I think must be added to Geany because placing a license template in ~/.config/geany/filedefs/templates and /usr/share/geany/templates does not add the new license to "Edit > Insert Comments". I even tried closing Geany and re-opening it and reloading the configuration.
Yes, the templates are added to the "create file" dropdown, they are *file* templates, ie a template for a new file.
I strongly agree with Colomban Wendling about adding "bool", "true", and "false" to "primary=" in filetypes.c.
What you mean they won't change stdbool.h just for us :)
-- Thanks, Devyn Collier Johnson DevynCJohnson@Gmail.com
Devel mailing list Devel@lists.geany.org https://lists.geany.org/cgi-bin/mailman/listinfo/devel
Devel mailing list Devel@lists.geany.org https://lists.geany.org/cgi-bin/mailman/listinfo/devel
Geany Dev Team:
When running "strip --strip-debug --strip-unneeded ./FILE", only symbols related to debugging and unused symbols are removed. I use this strip command on all shared/dynamic libraries and executable programs that I make as well as some of my system binaries (like /usr/bin/python3.4 and my custom compiled Linux kernel and modules). I have not yet had any problems. True, removing all symbols (strip --strip-all) would cause issues with some applications and most (if not all) shared libraries.
As for the license templates, I think you and I are thinking of two different things. I am not referring to /usr/share/geany/templates/files . I am talking about /usr/share/geany/templates . True, your apache.cpp would go in /usr/share/geany/templates/files to appear in the "File > New (with template)" sub-menu. However, I want to add licenses to the "Edit > Insert Comments" sub-menu. Then, in a file with code, I could select a license to insert. Geany automatically adds the multi-line comment for the detected language. If a language is not detected by Geany, I could make a multi-line comment and select a license to insert. (Example below)
/* Place cursor here, choose a license under "Edit > Insert Comments", and the license info is instantly inserted. Such license templates under "Edit > Insert Comments" */
I tested the "gpl" and "bsd" license templates that are already in the mainstream Geany release in the "Edit > Insert Comments" sub-menu. These license templates are "universal". In other words, they work in any computer language's source code. However, this feature would be more beneficial if there were more licenses to choose from. I like to use LGPLv3 in many of my libraries, but Geany does not have that in the license list.
I get dozens of deprecated warnings when using GTK2 (that is not a typo, I do indeed mean "GTK2").
As for the pointer warnings, I saw several (but they relate to GTK2 rather than Geany itself). Below is one such warning. By the way, the displayed errors in this email were generated with "./configure -v --enable-html-docs=no --prefix=$HOME/Geany --exec-prefix=$HOME/Geany --disable-nls".
dialogs.c:1001:15: warning: assignment makes pointer from integer without a cast [-Wint-conversion] data->combo = gtk_combo_box_text_new_with_entry();
There were also a few "implicit declaration of function" warnings. One is seen below.
dialogs.c: In function 'dialogs_show_input_full': gtkcompat.h:57:44: warning: implicit declaration of function 'gtk_combo_box_entry_new_text' [-Wimplicit-function-declaration] # define gtk_combo_box_text_new_with_entry gtk_combo_box_entry_new_text ^ dialogs.c:1001:17: note: in expansion of macro 'gtk_combo_box_text_new_with_entry' data->combo = gtk_combo_box_text_new_with_entry();
If you would like the complete terminal output from the building process, I would be happy to put it on the ML as an attached text-file as well as a detailed list of information about my libraries, compiler, Linux system, etc. Below is some of the most relevant information.
Ubuntu 15.10 (Willy) x86-64 Little-Endian; Intel i5 (Haswell) 2.5GHz
$ uname -somr Linux 4.2.399-dcj-20151017 x86_64 GNU/Linux
$ gcc --version gcc (Ubuntu 5.2.1-22ubuntu2) 5.2.1 20151010
$ ldd --version ldd (Ubuntu GLIBC 2.21-0ubuntu4) 2.21
$ dpkg -s libgtk2.0-0|grep '^Version' Version: 2.24.28-1ubuntu1
# Available CPU flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_go
-- Thanks, Devyn Collier Johnson DevynCJohnson@Gmail.com