Hey Matthew,
[...]
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?
Java is if you use GCJ, Python is if you use PyPy, etc...
I agree, compiled is an irrelevant category, I suggest reverting to Programming.
[...]
- 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.
Vote for this but maybe with some minor shuffling.
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.
No too subjective, you can do GObject in C so it must be an oop language eh?
- 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.
Too long for small screens.
- 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++?).
It might be a fallback if we can't get anything better.
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.
Keep it with HTML since thats where its used.
- I believe LaTex, Markdown, and reStructuredText are Markup Languages.
Yup.
- I don't know COBOL but I think it's a programming language isn't it?
Well, it was in the 1970s, but I do remember someone asking about it recently so it must be still used.
- NSIS and CMake files, while domain-specific, are still
scripting/programming languages.
Should be with makefile.
[...]
- 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.
So "miscellaneous filetypes" like "custom filetypes"
And to add one, why is R a script and all others in that menu source, since its the scripting menu?
And to comment on your next mail as well, even if the user can change it that doesn't mean we shouldn't try to get a sensible arrangement by default. Lots of people won't or won't know they can change it and will have the vague discontent that you have.
Cheers Lex