YASnippets para Emacs e Puppet

Se estiver usando o Emacs para escrever manifestos do Puppet, você escreverá muito do mesmo código, como os blocos de {} arquivo, por exemplo.
YASnippet torna mais fácil escrever manifestos ainda mais rápido com yasnippet-puppet-mode: https://github.com/jasperla/yasnippet-puppet-mode

file<TAB>

irá expandir para:

file { "name":                                                                              
owner
=> owner,
group => group,
mode
=> mode,
ensure => ensure,
require => require,
content
=> content,
source
=> source;
}

Se você já estiver em um bloco de arquivo {} maior, poderá usar:

xfile<TAB>

Por exemplo:

  file { "/etc/fstab":
owner
=> root,
group => wheel,
mode
=> 0644,
[etc];
xfile
<TAB>
}

que omitirá o “arquivo {….}” e, em vez disso, começará com o nome do recurso. Isso funciona para blocos de “arquivo”, “serviço” e “nó”.

Os snippets atualmente suportados são para as diretivas “augeas”, “class”, “file”, “include”, “node”, “package”, “service” e “source”.

Outro recurso é que todos os seus atributos também serão alinhados corretamente.