Puppet configuration filetype

Experimental custom filetype for Puppet configuration files.

~/.config/geany/filedefs/filetypes.Puppet.conf
[styling=Perl]
 
[keywords]
# https://docs.puppetlabs.com/puppet/latest/reference/lang_reserved.html
primary=and case class default define else elsif false if in import inherits node or true undef unless
 
[lexer_properties=Perl]
 
[settings=Perl]
lexer_filetype=Perl
 
extension=pp
 
[indentation]
#width=4
# 0 is spaces, 1 is tabs, 2 is tab & spaces
#type=1

And alter your filetype_extensions.conf to add the new Puppet filetype. Beware: as Puppet and Psacl share the .pp extension, you'll have to remove if from the Pascal line if you want it handled as Puppet.

~/.config/geany/filetype_extensions.conf
[Extensions]
...
# you need to remove *.pp from Pascal, so redefine it without *.pp
Pascal=*.pas;*.inc;*.dpr;*.dpk;
Puppet=*.pp;
...
 
[Groups]
...
Misc=...;Puppet;
...