[Geany-devel] Set Filetypes Menu

Matthew Brush mbrush at xxxxx
Fri Apr 29 03:13:05 UTC 2011


I just noticed the change[1] in wording of the set filetypes menu which 
was something that had (slightly) bothered me before, since I personally 
consider most of the scripting languages as programming languages as 
well.  I'm not sure that the word "Compiled" is the best choice though, 
since it's kind of vague:

Is Vala a compiled language because it's compiled into C code?
Is Python *not* compiled because it's compiled into bytecode?
Is Java a compiled language?

I'm sure you can see what I mean, there's a lot of gray area using the 
term Compiled, since many languages can either be compiled to machine 
code, interpreted by a VM/runtime, compiled then interpreted, compiled 
to one format then another, compiled just in time, and so on. 
Unfortunately I don't really have much for alternative terms, but a few 
possibilities for better categorization could be:

- By the current categories, but putting filetypes under each one they 
fit in.

- By changing Scripting to Interpreted and then shuffling some filetypes 
around to reflect the way the languages are usually compiled/run.

- By the current categories, no change, since users will get used to 
where to find their languages pretty quickly.

- By Static vs Dynamic Typing

- By programming language paradigm (ie. oop, functional, etc), and then 
each programming language could fall below more than one menu item if 
they are multi-paradigm.

- By just Programming Languages, so that the Compiled and Scripting 
menus get merged.  This could make the menu long/scroll.  SciTE does 
this but with fewer languages.

- By alphabetic order, with a menu item for each letter of the alphabet 
unless no filetypes fall under a letter, then don't show it.  This could 
be ugly in terms of code/i8n and appearances.  IIRC another editor is 
doing this (Notepad++?).

There's also a few other quirks I've noticed in the 'Set Filetypes' menus:

- I generally wouldn't consider CSS a markup language, but it probably 
technically is.  IMHO it would be more apt to put it under Miscellaneous.

- I believe LaTex, Markdown, and reStructuredText are Markup Languages.

- I don't know COBOL but I think it's a programming language isn't it?

- NSIS and CMake files, while domain-specific, are still 
scripting/programming languages.

- 'SQL Dump file' seems a bit odd, since it's a file containing language 
constructs and is "run" by the db engine, maybe it should be 'SQL file' 
or 'SQL source file'.  I know a file containing SQL is often the result 
of dumping a database, but is it the only time you would end up with 
such a file?

- The wording 'Miscellaneous Languages' makes you think the contents of 
the submenu will contain (programming) Languages, but a config, diff, or 
gettext file for ex, doesn't really seem to be a language.  The word 
'Languages' could be removed from that menu item, which would imply that 
the contents of that menu will be 'Filetypes', more generally.

I could be wrong on these, they're just my observations.  None of these 
are a big deal, but it was something I questioned probably even the 
first time I opened Geany and every time I select a filetype since.

P.S. Sorry if this previously been discussed, I'm not too sure how to 
search the geany-devel archives (no link on geany.org Mailing List), and 
google didn't seem to find anything.

Matthew Brush


More information about the Devel mailing list