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
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/arch/x86/boot/header.S?id=refs/tags/v4.3
Sources:
http://labor-liber.org/en/gnu-linux/development/extensions
http://wiki.linuxquestions.org/wiki/List_of_file_extensions#S
https://en.wikipedia.org/wiki/Common_Intermediate_Language
- 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 ( http://linux.die.net/man/1/llvm-as )
- Adding "*.i;" to "C="
*.i - C source code which should not be preprocessed
http://labor-liber.org/en/gnu-linux/development/extensions
- Adding "*.ii;" to "C++="
*.ii - C++ source code which should not be preprocessed
http://labor-liber.org/en/gnu-linux/development/extensions
- Adding "*.r;*.f15;*.F15;" to "Fortran="
*.r - Fortran source code which must be preprocessed with a RATFOR
preprocessor
http://labor-liber.org/en/gnu-linux/development/extensions
*.f15 - Fortran 2015
http://fortranwiki.org/fortran/show/File+extensions
- 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
https://en.wikipedia.org/wiki/Extensible_Application_Markup_Language
https://msdn.microsoft.com/en-us/library/cc295302.aspx
https://msdn.microsoft.com/en-us/library/System.Windows.Markup.aspx
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?
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.
- 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 ( http://doc.qt.io/qt-5/qmlapplications.html ). 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.
https://en.wikipedia.org/wiki/Java_bytecode#Example
- In my opinion, it would be a good idea to add support for sed
scripts ( http://www.grymoire.com/Unix/Sed.html#uh-20 &&
https://www.gnu.org/software/sed/manual/sed.html#Centering-lines ).
They use the "*.sed" file-extension. However, I will need to
experiment with the lexers and parsers.
- In addition, I could add awk scripts (
http://www.grymoire.com/Unix/Scripts/awk_print_squares.awk ). They
use the "*.awk" file-extension. However, I will need to experiment
with the lexers and parsers.
- Add support for FASTA ( https://en.wikipedia.org/wiki/FASTA_format
&& https://en.wikipedia.org/wiki/FASTA &&
http://fasta.bioch.virginia.edu/fasta_www2/fasta_list2.shtml ). 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.
--
Thanks,
Devyn Collier Johnson
DevynCJohnson@Gmail.com