No matter what I do, Geany won't highlight any .INO syntax! I tried copying (geany root)/data/filetypes.cpp to filetypes.ino (.INO syntax is about the same as .CPP syntax). No luck. I need .INO syntax highlighting! Can someone help me?
FILETYPES.INO listing: ```cfg # For complete documentation of this file, please see Geany's main documentation [styling=C]
[keywords] # all items must be in one line primary=alignas alignof and and_eq asm auto bitand bitor bool break case catch char char16_t char32_t class compl const const_cast constexpr continue decltype default delete do double dynamic_cast else enum explicit export extern false final float for friend goto if inline int long mutable namespace new noexcept not not_eq nullptr operator or or_eq override private protected public register reinterpret_cast return short signed sizeof static static_assert static_cast struct switch template this thread_local throw true try typedef typeid typename union unsigned using virtual void volatile wchar_t while xor xor_eq secondary= # these are the Doxygen keywords docComment=a addindex addtogroup anchor arg attention author authors b brief bug c callergraph callgraph category cite class code cond copybrief copydetails copydoc copyright date def defgroup deprecated details dir dontinclude dot dotfile e else elseif em endcode endcond enddot endhtmlonly endif endinternal endlatexonly endlink endmanonly endmsc endrtfonly endverbatim endxmlonly enum example exception extends file fn headerfile hideinitializer htmlinclude htmlonly if ifnot image implements include includelineno ingroup interface internal invariant latexonly li line link mainpage manonly memberof msc mscfile n name namespace nosubgrouping note overload p package page par paragraph param post pre private privatesection property protected protectedsection protocol public publicsection ref related relatedalso relates relatesalso remark remarks result return returns retval rtfonly sa section see short showinitializer since skip skipline snippet struct subpage subsection subsubsection tab leofcontents test throw throws todo tparam typedef union until var verbatim verbinclude version warning weakgroup xmlonly xrefitem
[lexer_properties] styling.within.preprocessor=1 lexer.cpp.track.preprocessor=0 preprocessor.symbol.$(file.patterns.cpp)=# preprocessor.start.$(file.patterns.cpp)=if ifdef ifndef preprocessor.middle.$(file.patterns.cpp)=else elif preprocessor.end.$(file.patterns.cpp)=endif
[settings] lexer_filetype=C
# default extension used when saving files extension=cpp
# MIME type mime_type=text/x-c++src
# the following characters are these which a "word" can contains, see documentation #wordchars=_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789
# single comments, like # in this file comment_single=// # multiline comments comment_open=/* comment_close=*/
# set to false if a comment character/string should start at column 0 of a line, true uses any # indentation of the line, e.g. setting to true causes the following on pressing CTRL+d #command_example(); # setting to false would generate this # command_example(); # This setting works only for single line comments comment_use_indent=true
# context action command (please see Geany's main documentation for details) context_action_cmd=
[indentation] #width=4 # 0 is spaces, 1 is tabs, 2 is tab & spaces #type=1
[build-menu] # %f will be replaced by the complete filename # %e will be replaced by the filename without extension # (use only one of it at one time) FT_00_LB=_Compile FT_00_CM=g++ -Wall -c "%f" FT_00_WD= FT_01_LB=_Build FT_01_CM=g++ -Wall -o "%e" "%f" FT_01_WD= FT_02_LB=_Lint FT_02_CM=cppcheck --language=c++ --enable=warning,style --template=gcc "%f" FT_02_WD= EX_00_LB=_Execute EX_00_CM="./%e" EX_00_WD= ```
--- Reply to this email directly or view it on GitHub: https://github.com/geany/geany/issues/715
Fwiw, ino files are where arduino ide stores the c++ code written by the user. Hell knows why they just didn't use the cpp extension or why they call user projects sketch...
--- Reply to this email directly or view it on GitHub: https://github.com/geany/geany/issues/715#issuecomment-152247744
@pixelwolf If you just want files with the .ino extension to be recognized as C++, just append `*.ino` to the list in [`filetype_extensions.conf`](http://geany.org/manual/index.html#filetype-extensions) (that you can edit easily using *Tools → Configuration Files → filetype_extension.conf*).
If you want to create a [custom filetype](http://geany.org/manual/index.html#custom-filetypes), you then need to name your filetype file with the `.conf` extension, like `filetypes.INO.conf` (and still need to modify `filetype_extensions.conf` to get INO files recognized form their extension).
--- Reply to this email directly or view it on GitHub: https://github.com/geany/geany/issues/715#issuecomment-152255973
@kugel- Regardless from the root cause, that the Arduino developers didn't select the cpp extension, wouldn't it be more user friendly to modify the default filetype_extensions.conf to include the ino extension? I see no harm to do that as long as it not collides with any other language. I remembered I've set several times the correct filetype manually, before discovering the filetype_extensions.conf feature.
--- Reply to this email directly or view it on GitHub: https://github.com/geany/geany/issues/715#issuecomment-152863139
Yea, I just mentioned in order to help making a decision for this PR
--- Reply to this email directly or view it on GitHub: https://github.com/geany/geany/issues/715#issuecomment-152871515
Close in 21b37f553fdcaa37463465bd24d9ca5537800f0a
Closed #715.
github-comments@lists.geany.org