Introducción

Cada artigo do blog con Jekyll, leva unha cabeceira ca mesma estructura, algo así:

---
layout: post
title: título
date: 'data e hora de publicación'
categories:
  - listado de categorías
permalink: '/:categories/:year/:month/:title'
author: Código Morrazo
tags:
  - etiquetas
---

En troques de ter que escribir todo cada vez que engado un novo artigo, ou de copialo de un artigo a outro, utilizo un snippet. Os snippets son coma disparadores que transforman unha cadea nun texto predeterminado. En tódo-los IDEs e editores que utilicei ata o de agora, soe ser unha cadea seguido dunha pulsación de tabulador. Así por exemplo, podería facer que ao escribir blogl, de blog layout, e pulsar o tabulador. Esa cadea fose sustiuída polo bloque do exemplo.

Crear un snippet en Kate

Antes de poder crear un snippet, ou fragmento de código, temos que instalar o plugin para facelo. Para isto iremos ao menú Configuración > Complementos e marcamos para instalar Fragmentos.

Unha vez instalado iremos ao menú Utilidades, ou Tool se o temos en inglés, e xa teremos un menú de crear fragmento.

Vista de creación de framentos. Cun campo de texto para o nome do fragmento e un cadro máis grande para introducir o texto final

Como nome poremos a abreviatura ou fragmento, que desexemos expandir. No meu caso como dixen será blogl. E no texto porei o do exemplo. Aceptamos e xa estará creado.

Dándolle funcionalidade ao fragmento

Os fragmentos admiten “campos”. Quero dicir, podemos por variables que nos pemitirán escribir cando o fragmento se engada. Así por exemplo, se en lugar do exemplo anterior defino o fragmento utilizando cadeas como ${nome}. Cando engada o fragmento, en troques de engadir ese texto porame o cursor onde iría ese texto para escribir o que queira. Podo engadir varios, e pasar ao seguinte ao pulsar tabulador. Así pois se o meu fragmento fose coma o seguinte:

---
layout: post
title: ${title}
date: '${datetime}'
categories:
  - ${categories}
permalink: '/:categories/:year/:month/:title'
author: Código Morrazo
tags:
  - ${tags}
---

Ao aparecer o cursor estaría para escribir o título do artigo. Ao dar tabulador saltaría á data, categorías, etc. Esta notación admite valores por defecto, que poden ser funcións de Javascript. Quedaría algo coma ${nome=función}, en troques dunha función de Javascript, tamén podemos por unha cadea que queiramos que apareza por defecto. Se por exemplo quixese que o autor tamén fose editable, poría ${author=Código Morrazo}. Deste xeito podería mudalo, ou deixalo co valor por defecto, con só premer tabulador.

Visualizar os fragmentos creados

Para ver os fragmentos que temos a nosa disposición, temos que ir ao menú de Vista > Vista das ferramentas > Amosar Fragmentos. A dereita da xanela aparecerá unha árbore cos fragmentos creados, no meu caso só o que acabo de crear.

Utilizar os fragmentos

Para miña sorpresa ao escribir o fragmento e pulsar o tabulador, non engade o código, tan só fai a tabulación. Nin tan siquera agardando un tempo, funcionaba, a pesar de que si que aparece unha pequena vista do resultado do fragmento. Para que funcione é necesario activar o autocompretado, cada vez. Así que no meu caso escribo blogl e a continuación premo control+espazo e enter.

Iso a primeira vez, nas seguintes si que funcionou como se agardaba. De feito xa me ofrece o fragmento sen rematar de escribilo enteiro e xa se activa co tabulador.

Bonus KDevelop

Indicar simplemente tamén que no caso de utilizar KDevelop, o funcionamento é prácticamente o mesmo. No caso desta ferramenta, os fragmentos xa veñen incluídos. Polo que en Utilidades xa veremos o menú de Crear un fragmento. A diferenza será que para ver os que temos creados, primeiro temos que activar esa vista, para isto iremos ao menú de Xanela > Engadir unha vista de ferramenta, marcamos fragmeto e aceptamos. Na marxe dereita veremos unha nova lapela para os fragmentos. O resto é exáctamente igual.

Conclusión

Os fragmentos son unha boa maneira de axilizar o noso traballo. Non só con cousas como a cabeceira dun artigo, tamén podemos crear o corpo dun código. Por exemplo html para crear a estrutura dunha páxina, ou class para crear o esqueleto dunha clase nalgunha linguaxe. De xeito que só teñamos que engadir as partes que mudan, como o nome e a lóxica.

Fontes

Docs KDE: KDE
Fedora people: fedorapeople.org