Si queremos recuperar el valor de usuario que ha asignado a un usuario, la libreria de google dispone de una funcion ga(funcion) que define un callback que ejecutará una vez se ha cargado la librería en nuestra página.
En el siguiente ejemplo, recuperarmos el identificador y lo asignamos a un input oculto, para identificar a los usuarios que utilizan un formulario.
Byebug y Web Console son 2 librerias que nos permite debugar el estado de nuestras apps, añadiendo un comando en el punto en el que queremos analizar su estado. La diferencia es que byebug para la app y permite analizarla desde la consola, web-console, crea un terminal virtual en nuestra pagina, que permite realizar comandos ruby. El uso de ambas librerias es muy similar:
Si vamos a alojar nuestra página creada con Jekyll en github, una primer paso es tener instalada su misma versión de librerias. La versión actual es la 93, que acaba de incluir la version 3.2 de Jekyll.
$ gem install github-pages -v 93
Aprovechando los multiples plugins que dispone jekyll, he dedicido
utilizar alguno de los disponibles en Github.
Jekyll Sitemap: Genera un sitemap con todos nuestros post y páginas.
Añadir en la sección de gems del archivo_config.yml
gems:-jekyll-seo-tag
Y añadir {% seo %} en nuestro código.
Jekyll Archives: Este plugin permite generar distintas paginas agrupando los articulos por tag, categoria, mes o año.
Por desgracia esta gem no esta soportada por Github, por lo que la tendremos que instalar manualmente y realizar un pequeño “hack” para poder utilizarlo en github. Otra alternativa
$ gem install jekyll-archives
Al igual que en el anterior, añadir en la sección de gems del archivo _config.yml y su configuración.
En nuestro caso, activamos solamente páginas por tag y categoria, y definimos el formato del link y layout.
La solución “low-cost” por la que he optado, es justo antes de realizar la subida a Github, es copiar las páginas generadas por el plugin en local, como si fuera contenido propio.
$ rm -rf archive | cp _site/archive .
Con este proceso, ya que tenemos dos fuentes (la carpeta copiada y el plugin archives) que generan en la misma ubicación _sites/archive es necesario borrar la carpeta ./archive antes de arrancar el servidor en local para evitar conflictos
Después de un año con el blog parado, he decidido volver a activarlo actualizando a la version 3, aprovechando
que github también actualizó las versión de Jekyll que soportaba.
Los cambios principales en esta nueva versión ha sido la reducción de gems que utiliza por defecto, por lo que si queremos
ciertas funcionalidades, como la paginación, es necesario añadir la gem en el archivo de configuración _config.yml
# ahora markdown es el procesador por defectomarkdown:kramdown# y el syntax highlighting por defecto es rouge, que esta implementado en rubyhighlighter:rouge# es necesario poner el jekyll-paginate para tener implementada la paginacióngems:['jekyll-paginate']
worker_processesInteger(ENV["WEB_CONCURRENCY"]||3)timeout15preload_apptruebefore_forkdo|server,worker|Signal.trap'TERM'doputs'Unicorn master intercepting TERM and sending myself QUIT instead'Process.kill'QUIT',Process.pidenddefined?(ActiveRecord::Base)andActiveRecord::Base.connection.disconnect!endafter_forkdo|server,worker|Signal.trap'TERM'doputs'Unicorn worker intercepting TERM and doing nothing. Wait for master to send QUIT'enddefined?(ActiveRecord::Base)andActiveRecord::Base.establish_connectionend