<html>
  <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    On 11/08/2015 03:19 PM, Lex Trotman wrote:<br>
    <blockquote
cite="mid:CAKhWKDP9o1YCrq8R-u1XvP_r-QX4j_HEzUh2V=seh=zKj7aHjg@mail.gmail.com"
      type="cite">
      <pre wrap="">On 9 November 2015 at 05:34, Devyn Collier Johnson
<a class="moz-txt-link-rfc2396E" href="mailto:devyncjohnson@gmail.com"><devyncjohnson@gmail.com></a> wrote:
</pre>
      <blockquote type="cite">
        <pre wrap="">Geany Dev Team:

I have some additional ideas that I would like to share with you all and get
feedback before I implement the code.

./data/filetype_extensions.conf

- Adding "*.s03;*.s79;*.s82;*.s90;*.s;*.S;" to "ASM="
*.s## - GNU-style Assembly (GAS/AT&T)
Capital "S" - Must be preprocessed
Lowercase "s" - Does not require preprocessing
The numbers appended to *.s indicate the assembly version or intended
microprocessor
*.s is also used by Common Intermediate Language (CIL) which looks like
assembly
The Linux kernel contains some "*.S" files such as
<a class="moz-txt-link-freetext" href="https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/arch/x86/boot/header.S?id=refs/tags/v4.3">https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/arch/x86/boot/header.S?id=refs/tags/v4.3</a>
Sources:
<a class="moz-txt-link-freetext" href="http://labor-liber.org/en/gnu-linux/development/extensions">http://labor-liber.org/en/gnu-linux/development/extensions</a>
<a class="moz-txt-link-freetext" href="http://wiki.linuxquestions.org/wiki/List_of_file_extensions#S">http://wiki.linuxquestions.org/wiki/List_of_file_extensions#S</a>
<a class="moz-txt-link-freetext" href="https://en.wikipedia.org/wiki/Common_Intermediate_Language">https://en.wikipedia.org/wiki/Common_Intermediate_Language</a>
</pre>
      </blockquote>
      <pre wrap="">
The geany ASM parser specifies .s and .S so those should be ok, if
they don't work for some special cases (eg CIL) that can't be helped.
As for the other ASMs, well, if they work why no.  Note that both the
lexer and parser are pretty general, so there will be no
specialisation for different extensions.


</pre>
      <blockquote type="cite">
        <pre wrap="">
- Adding "*.ll;" to "ASM="
I suggested this before, but I want to ensure that the team is okay with
this idea before I commit and PR
LLVM assembly ( <a class="moz-txt-link-freetext" href="http://linux.die.net/man/1/llvm-as">http://linux.die.net/man/1/llvm-as</a> )
</pre>
      </blockquote>
      <pre wrap="">
Well, if it works, though I am not sure if many people will edit LLVM.
Remember that if we provide something by default we are advertising
that it should work, and that users can reasonably raise bug reports
if it doesn't.  But we won't be able to support them.  For obscure
things I would prefer that the few who need it can add it to their own
`filetype_extensions.conf`.


</pre>
      <blockquote type="cite">
        <pre wrap="">
- Adding "*.i;" to "C="
*.i - C source code which should not be preprocessed
<a class="moz-txt-link-freetext" href="http://labor-liber.org/en/gnu-linux/development/extensions">http://labor-liber.org/en/gnu-linux/development/extensions</a>
</pre>
      </blockquote>
      <pre wrap="">
g++ treats this as C++, all languages are *not* C :)

This is the same problem as .h, it could be either.

</pre>
      <blockquote type="cite">
        <pre wrap="">
- Adding "*.ii;" to "C++="
*.ii - C++ source code which should not be preprocessed
<a class="moz-txt-link-freetext" href="http://labor-liber.org/en/gnu-linux/development/extensions">http://labor-liber.org/en/gnu-linux/development/extensions</a>

- Adding "*.r;*.f15;*.F15;" to "Fortran="
*.r - Fortran source code which must be preprocessed with a RATFOR
preprocessor
<a class="moz-txt-link-freetext" href="http://labor-liber.org/en/gnu-linux/development/extensions">http://labor-liber.org/en/gnu-linux/development/extensions</a>
*.f15 - Fortran 2015
<a class="moz-txt-link-freetext" href="http://fortranwiki.org/fortran/show/File+extensions">http://fortranwiki.org/fortran/show/File+extensions</a>
</pre>
      </blockquote>
      <pre wrap="">
I very much doubt that lexer and parser support these variants of
fortran properly.

</pre>
      <blockquote type="cite">
        <pre wrap="">
- Adding "*.xaml;" to "XML="
XAML (Extensible Application Markup Language)
This is a markup-language made by Microsoft
XAML is used in .NET Framework 3 and 4
Mimetype = application/xaml+xml
<a class="moz-txt-link-freetext" href="https://en.wikipedia.org/wiki/Extensible_Application_Markup_Language">https://en.wikipedia.org/wiki/Extensible_Application_Markup_Language</a>
<a class="moz-txt-link-freetext" href="https://msdn.microsoft.com/en-us/library/cc295302.aspx">https://msdn.microsoft.com/en-us/library/cc295302.aspx</a>
<a class="moz-txt-link-freetext" href="https://msdn.microsoft.com/en-us/library/System.Windows.Markup.aspx">https://msdn.microsoft.com/en-us/library/System.Windows.Markup.aspx</a>
</pre>
      </blockquote>
      <pre wrap="">
Myeh, we should remove XML totally </reaction="allergic to XML"> :)

</pre>
      <blockquote type="cite">
        <pre wrap="">
Previous Ideas

These proposed Python file-extensions are not officially mentioned in the
Python Documentation. I shared this idea previously in the mailing list, but
I would like to know if this idea is a possibility or a definite "no".
However, some programmers use the extensions.
- py2 and py3
Used to specifically distinguish Python3 code from Python2, especially when
code is written that only works on one of the two versions.
- pygtk
Used to specifically show that a script contains PyGObject or PyGTK code, as
opposed to Qt
- pyqt
Like pygtk, but used to specifically show that a script contains PySide or
PyQt code

After reading my explanation, what do you think about the suggested Python
extensions?
</pre>
      </blockquote>
      <pre wrap="">
Well, IMHO these should be rare, since they are not supported by the
standard Python implementation, so again the users can add them to
their personal `filetypes.extensions.conf` if they really want them.


</pre>
      <blockquote type="cite">
        <pre wrap="">
Possible Ideas

These are ideas that I am thinking about (or would like to hear your
thoughts) before I proceed.

- Previously, I think mentioned adding XNA support. That idea will be
delayed or never implemented because Microsoft discontinued XNA. In
addition, I cannot find Microsoft's XNA specification. However, I would be
willing to add XNA support if the Geany Dev Team thinks it would still be a
good idea.

</pre>
      </blockquote>
      <pre wrap="">
Unless you or someone else is clamouring for support of this
(discontinued you say) language then I don't see the point, again it
has to be supported.

This point applies to all the following as well.  Things should not be
added "just because they exist".  There needs to be a demand for it to
be available in Geany, it needs to be sensible, and some indication
that the added features will be supported.

Rather too much gets dumped into open source projects and then left to
fester </rant> :)

Many of the following are things that don't get edited often, or have
better tools elsewhere, eg qtcreator for qml.

</pre>
      <blockquote type="cite">
        <pre wrap="">- I would like to add support for Qt's QML (Qt Meta Language or Qt Modeling
Language). It is a scripting language that resembles JavaScript (
<a class="moz-txt-link-freetext" href="http://doc.qt.io/qt-5/qmlapplications.html">http://doc.qt.io/qt-5/qmlapplications.html</a> ). If the Geany lexers and
parsers highlight this language well, would it be a good idea to add it?

- Would it be a good idea to add Java bytecode files (*.class) to "ASM="? I
do not know Java, so this may be a poor idea.
<a class="moz-txt-link-freetext" href="https://en.wikipedia.org/wiki/Java_bytecode#Example">https://en.wikipedia.org/wiki/Java_bytecode#Example</a>

- In my opinion, it would be a good idea to add support for sed scripts (
<a class="moz-txt-link-freetext" href="http://www.grymoire.com/Unix/Sed.html#uh-20">http://www.grymoire.com/Unix/Sed.html#uh-20</a> &&
<a class="moz-txt-link-freetext" href="https://www.gnu.org/software/sed/manual/sed.html#Centering-lines">https://www.gnu.org/software/sed/manual/sed.html#Centering-lines</a> ). They use
the "*.sed" file-extension. However, I will need to experiment with the
lexers and parsers.

- In addition, I could add awk scripts (
<a class="moz-txt-link-freetext" href="http://www.grymoire.com/Unix/Scripts/awk_print_squares.awk">http://www.grymoire.com/Unix/Scripts/awk_print_squares.awk</a> ). They use the
"*.awk" file-extension. However, I will need to experiment with the lexers
and parsers.

- Add support for FASTA ( <a class="moz-txt-link-freetext" href="https://en.wikipedia.org/wiki/FASTA_format">https://en.wikipedia.org/wiki/FASTA_format</a> &&
<a class="moz-txt-link-freetext" href="https://en.wikipedia.org/wiki/FASTA">https://en.wikipedia.org/wiki/FASTA</a> &&
<a class="moz-txt-link-freetext" href="http://fasta.bioch.virginia.edu/fasta_www2/fasta_list2.shtml">http://fasta.bioch.virginia.edu/fasta_www2/fasta_list2.shtml</a> ). I am not
sure how you will all feel about this idea. FASTA is a file format used to
represent nucleotide and peptide sequences. True, it is not a programming
language, and I do not know yet if any lexer or parser used by Geany will
work with FASTA. However, with the rise of "open-source biology", Boolean
Integrase Logic (BIL) gates, and biochemical-based transistors (DNA and RNA
transistors = transcriptors), this may be an idea to consider. Also, such a
feature would make Geany stand-out among other "traditional" IDEs.

</pre>
      </blockquote>
      <pre wrap="">
Geany stands out by being fast and lightweight, adding large amounts
of rarely used excess baggage will kill that.

Cheers
Lex

</pre>
      <blockquote type="cite">
        <pre wrap="">--
Thanks,
Devyn Collier Johnson
<a class="moz-txt-link-abbreviated" href="mailto:DevynCJohnson@Gmail.com">DevynCJohnson@Gmail.com</a>


_______________________________________________
Devel mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Devel@lists.geany.org">Devel@lists.geany.org</a>
<a class="moz-txt-link-freetext" href="https://lists.geany.org/cgi-bin/mailman/listinfo/devel">https://lists.geany.org/cgi-bin/mailman/listinfo/devel</a>

</pre>
      </blockquote>
      <pre wrap="">_______________________________________________
Devel mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Devel@lists.geany.org">Devel@lists.geany.org</a>
<a class="moz-txt-link-freetext" href="https://lists.geany.org/cgi-bin/mailman/listinfo/devel">https://lists.geany.org/cgi-bin/mailman/listinfo/devel</a>
</pre>
    </blockquote>
    Geany Dev Team:<br>
    <br>
    Thank you Lex Trotman and Matthew Brush for your time, effort, and
    insightful feedback.<br>
    <br>
    Thanks Matthew for the QML link; I greatly appreciate it. I added
    the code to my system. Could we add this to the mainstream Geany?
    True, QtCreator may have better support, but some people prefer
    Geany over all IDEs (including me).<br>
    <br>
    Okay. I just thought I could at least suggest FASTA. To me, it seems
    like a good idea, although very odd and unusual for a programming
    IDE. Sometimes, I like to make wild ideas because such ideas may
    become a "brilliant idea". However, I understand the team's
    viewpoint.<br>
    <br>
    True, one of  Geany's best features is that it is fast and
    light-weight. However, are there any benchmarks that indicate a
    significant performance drop when adding many file-extensions and
    file-types?<br>
    <br>
    Perhaps, a "plugin" could be made that has support for extra and
    "weird" file-extensions and file-types. Could Geany be modified to
    also look for a "filetypes_extension_extra.conf" file that would
    contain such file-extensions? For instance, an additional package
    could be made that contains "filetypes_extension_extra.conf" and
    various filetypes.*.conf files. If the user downloads and installs
    this package, Geany will see "filetypes_extension_extra.conf" and
    merge the contents to "filetypes_extension.conf" and load the
    related filetypes.*.conf files. Such a feature may help us with
    development. For instance, we could use such a feature for testing
    proposed file and language support and provide "backported" and
    unstable file-extension support. As a specific example, the Manpage
    file-extensions I proposed could be added to such a package until
    Scintilla adds highlighting support for Manpages. Do you understand
    what I am saying? Would this be a possible idea to consider?<br>
    <br>
    <b>Will Not Add</b><br>
    <br>
    These are ideas that I will not add after hearing the team's
    viewpoints and after I have reconsidered and pros and cons.<br>
    <br>
    - *.ll: Good point, Matthew and Lex.<br>
    - Python: Okay, I will not worry about the suggested extensions.<br>
    - *.r: Thank you, Matthew, for pointing that out. I knew that R used
    the "*.R" extension, but I was unaware of "*.r".<br>
    - XNA: I do not know XNA very well neither do I personally care
    about XNA. I just wanted to ensure that Geany supports XNA for those
    that do like XNA. However, since XNA is discontinued and I cannot
    find the specification, I will not add XNA. Unless, in the future,
    support is desirable.<br>
    - Java Bytecode - I did more research, and I feel that this idea can
    be dropped.<br>
    <br>
    Lex, I assume you are joking about removing "XML=", right? In my
    opinion, XML support in Geany is a "must".<br>
    <br>
    <b>Will Add Soon</b><br>
    <br>
    These are ideas that I feel are beneficial and that the team
    approves.<br>
    <br>
    - Add "*.f15;*.F15;" to "Fortran="<br>
    *.f15 = Fortran 2015<br>
    I do not know Fortran, but if highlighting does not work well with
    Fortran 2015, perhaps it will when Scintilla adds updates for this
    new Fortran standard<br>
    <a class="moz-txt-link-freetext" href="http://fortranwiki.org/fortran/show/File+extensions">http://fortranwiki.org/fortran/show/File+extensions</a><br>
    <br>
    - Add "*.xaml;" to "XML="<br>
    XAML (Extensible Application Markup Language)<br>
    This is a markup-language made by Microsoft<br>
    XAML is used in .NET Framework 3 and 4 <br>
    Mimetype = application/xaml+xml<br>
    <a class="moz-txt-link-freetext" href="https://en.wikipedia.org/wiki/Extensible_Application_Markup_Language">https://en.wikipedia.org/wiki/Extensible_Application_Markup_Language</a><br>
    <a class="moz-txt-link-freetext" href="https://msdn.microsoft.com/en-us/library/cc295302.aspx">https://msdn.microsoft.com/en-us/library/cc295302.aspx</a><br>
    <a class="moz-txt-link-freetext" href="https://msdn.microsoft.com/en-us/library/System.Windows.Markup.aspx">https://msdn.microsoft.com/en-us/library/System.Windows.Markup.aspx</a><br>
    <br>
    - Adding "*.ii;" to "C++="<br>
    *.ii - C++ source code which should not be preprocessed<br>
    <a class="moz-txt-link-freetext" href="http://labor-liber.org/en/gnu-linux/development/extensions">http://labor-liber.org/en/gnu-linux/development/extensions</a><br>
    <br>
    <b>May Add/Consider</b><br>
    <br>
    These are ideas that I may reconsider, or I would like to hear your
    further thoughts.<br>
    <br>
    - *.s: True, the ASM lexer does not support AT&T syntax.
    However, if Geany recognizes the file-type, then the Assembly tools
    listed in the "Build" menu are available.<br>
    - *.i: *.i and *.ii are different. "i" is for C, and "ii" is for C++<br>
    - *.sed and *.awk: Sed and Awk are commonly used on Unixoid (Unix
    systems and Unix-like systems) systems. Are you sure that this idea
    should be dropped?<br>
    <br>
    <b>Additional Comments</b><br>
    <br>
    By the way, I would like to thank everyone in the Geany Dev Team for
    their time, effort, and support. I am also thankful for being a part
    of the team.<br>
    <br>
    What must I do to earn a spot under "Contributors" in Geany's
    "Credits" tab of the "About" window?<br>
    <br>
    --<br>
    Thanks,<br>
    Devyn Collier Johnson<br>
    <a class="moz-txt-link-abbreviated" href="mailto:DevynCJohnson@Gmail.com">DevynCJohnson@Gmail.com</a><br>
  </body>
</html>