<p></p>
<p>Geany version: 1.36</p>
<p>Attempting to create a <code>snippets.conf</code> by Tools -> Configuration Files -> snippets.conf brings up a file with comments that are all inverted.</p>
<pre><code>Geany's snippets configuration file
# #
use \n or %newline% for a new line (it will be replaced by the used EOL char(s) - LF, CR/LF, CR).
use \t or %ws% for an indentation step, it will be replaced according to the current document's indent mode.
use \s to force whitespace at beginning or end of a value ('key= value' won't work, use 'key=\svalue').
use %key% for all keys defined in the [Special] section.
use %cursor% to define where the cursor should be placed after completion. You can define multiple
    %cursor% wildcards and use the "Move cursor in snippet" to jump to the next defined cursor
    position in the completed snippet.
You can define a section for each supported filetype to overwrite default settings, the section
name must match exactly the internal filetype name, run 'geany --ft-names' for a full list.
# #
Additionally, you can use most of the template wildcards like {developer}, {command:...},
or {date} in the snippets.
See the documentation for details.

For a list of available filetype names, execute:
geany --ft-names

Default is used for all filetypes and keys can be overwritten by [filetype] sections
# [Default]

special keys to be used in other snippets, cannot be used "standalone"
can be used by %key%, e.g. %brace_open%
nesting of special keys is not supported (e.g. brace_open=\n{\n%brace_close% won't work)
key "wordchars" is very special, it defines the word delimiting characters when looking for
a word to auto complete, leave commented to use the default wordchars
# [Special]
# brace_open=\n{\n\t
# brace_close=}\n
# block=\n{\n\t%cursor%\n}
# block_cursor=\n{\n\t%cursor%\n}
# #wordchars=_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789

Optional keybindings to insert snippets
Note: these can be overridden by Geany's configurable keybindings
# [Keybindings]
# #for=<Ctrl>7

# [C]
# if=if (%cursor%)%block_cursor%
# else=else%block_cursor%
# for=for (i = 0; i < %cursor%; i++)%block_cursor%
# while=while (%cursor%)%block_cursor%
# do=do\n{\n\t%cursor%\n} while (%cursor%)\n
# switch=switch (%cursor%)%brace_open%case %cursor%:\n\t\t%cursor%\n\t\tbreak;\n\tdefault:\n\t\t%cursor%\n%brace_close%

# [C++]
# if=if (%cursor%)%block_cursor%
# else=else%block_cursor%
# for=for (int i = 0; i < %cursor%; i++)%brace_open%\n%brace_close%
# while=while (%cursor%)%block_cursor%
# do=do\n{\n\t%cursor%\n} while (%cursor%)\n
# switch=switch (%cursor%)%brace_open%case %cursor%:\n\t\t%cursor%\n\t\tbreak;\n\tdefault:\n\t\t%cursor%\n%brace_close%
# try=try%block%\ncatch (%cursor%)%block_cursor%

# [Java]
# if=if (%cursor%)%block_cursor%
# else=else%block_cursor%
# for=for (int i = 0; i < %cursor%; i++)%brace_open%\n%brace_close%
# while=while (%cursor%)%block_cursor%
# do=do\n{\n\t%cursor%\n} while (%cursor%)\n
# switch=switch (%cursor%)%brace_open%case %cursor%:\n\t\t%cursor%\n\t\tbreak;\n\tdefault:\n\t\t%cursor%\n%brace_close%
# try=try%block%\ncatch (%cursor%)%block_cursor%

# [PHP]
# if=if (%cursor%)%block_cursor%
# else=else%block_cursor%
# for=for ($i = 0; $i < %cursor%; $i++)%brace_open%\n%brace_close%
# while=while (%cursor%)%block_cursor%
# do=do\n{\n\t%cursor%\n} while (%cursor%)\n
# switch=switch (%cursor%)%brace_open%case %cursor%:\n\t\t%cursor%\n\t\tbreak;\n\tdefault:\n\t\t%cursor%\n%brace_close%
# try=try%block%\ncatch (%cursor%)%block_cursor%

# [Javascript]
# if=if (%cursor%)%block_cursor%
# else=else%block_cursor%
# for=for (i = 0; i < %cursor%; i++)%block_cursor%
# while=while (%cursor%)%block_cursor%
# do=do\n{\n\t%cursor%\n} while (%cursor%)\n
# switch=switch (%cursor%)%brace_open%case %cursor%:\n\t\t%cursor%\n\t\tbreak;\n\tdefault:\n\t\t%cursor%\n%brace_close%
# try=try%block%\ncatch (%cursor%)%block_cursor%

# [C#]
# if=if (%cursor%)%block_cursor%
# else=else%block_cursor%
# for=for (i = 0; i < %cursor%; i++)%block_cursor%
# while=while (%cursor%)%block_cursor%
# do=do\n{\n\t%cursor%\n} while (%cursor%)\n
# switch=switch (%cursor%)%brace_open%case %cursor%:\n\t\t%cursor%\n\t\tbreak;\n\tdefault:\n\t\t%cursor%\n%brace_close%
# try=try%block%\ncatch (%cursor%)%block_cursor%

# [Vala]
# if=if (%cursor%)%block_cursor%
# else=else%block_cursor%
# for=for (i = 0; i < %cursor%; i++)%block_cursor%
# while=while (%cursor%)%block_cursor%
# do=do\n{\n\t%cursor%\n} while (%cursor%)\n
# switch=switch (%cursor%)%brace_open%case %cursor%:\n\t\t%cursor%\n\t\tbreak;\n\tdefault:\n\t\t%cursor%\n%brace_close%
# try=try%block%\ncatch (%cursor%)%block_cursor%

# [ActionScript]
# if=if (%cursor%)%block_cursor%
# else=else%block_cursor%
# for=for (i = 0; i < %cursor%; i++)%block_cursor%
# while=while (%cursor%)%block_cursor%
# do=do\n{\n\t%cursor%\n} while (%cursor%)\n
# switch=switch (%cursor%)%brace_open%case %cursor%:\n\t\t%cursor%\n\t\tbreak;\n\tdefault:\n\t\t%cursor%\n%brace_close%
# try=try%block%\ncatch (%cursor%)%block_cursor%

# [Python]
# for=for i in xrange(%cursor%):\n\t
# if=if %cursor%:\n\t
# elif=elif %cursor%:\n\t
# else=else:\n\t
# while=while %cursor%:\n\t
# try=try:\n\t%cursor%\nexcept Exception, ex:\n\t
# with=with %cursor%:\n\t
# def=def %cursor% (%cursor%):\n\t""" Function doc """\n\t
# class=class %cursor%:\n\t""" Class doc """\n\t\n\tdef __init__ (self):\n\t\t""" Class initialiser """\n\t\tpass

# [Ferite]
# iferr=iferr%block_cursor%fix%block%
# monitor=monitor%block_cursor%handle%block%

# [Haskell]

# [HTML]
# table=<table>\n\t<tr>\n\t\t<td>%cursor%</td>\n\t</tr>\n</table>

# [Erlang]
# case=case %cursor% of\n\t%cursor% -> %cursor%\nend
# if=if\n\t%cursor% -> %cursor%\nend
# begin=begin\n\t%cursor%\nend
# fun=fun(%cursor%) ->\n\t%cursor%\nend
# try=try %cursor% of\n\t%cursor% ->\n\t%cursor%\ncatch\n\t%cursor% ->\n\t%cursor%\nend
# module=-module(%cursor%).
# export=-export(%cursor%).
# compile=-compile(%cursor%).
# include=-include(%cursor%).
</code></pre>

<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br />You are receiving this because you are subscribed to this thread.<br />Reply to this email directly, <a href="https://github.com/geany/geany/issues/2648">view it on GitHub</a>, or <a href="https://github.com/notifications/unsubscribe-auth/AAIOWJY5PUAYHJOXWA6V6VDSOXFJTANCNFSM4TN5RCDA">unsubscribe</a>.<img src="https://github.com/notifications/beacon/AAIOWJ7GR4VNPSYBDKSWUHLSOXFJTA5CNFSM4TN5RCDKYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4LACBSKQ.gif" height="1" width="1" alt="" /></p>
<script type="application/ld+json">[
{
"@context": "http://schema.org",
"@type": "EmailMessage",
"potentialAction": {
"@type": "ViewAction",
"target": "https://github.com/geany/geany/issues/2648",
"url": "https://github.com/geany/geany/issues/2648",
"name": "View Issue"
},
"description": "View this Issue on GitHub",
"publisher": {
"@type": "Organization",
"name": "GitHub",
"url": "https://github.com"
}
}
]</script>