diff --git a/.gitignore b/.gitignore index ca9671a..20efa43 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1 @@ .token -public/ diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 01436c8..dc5cff3 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -3,7 +3,7 @@ image: alpine:latest pages: stage: deploy script: - - sh scripts/update.sh + - echo 'Deploying...' artifacts: paths: - public diff --git a/public/css/styles.css b/public/css/styles.css new file mode 100644 index 0000000..dcfa164 --- /dev/null +++ b/public/css/styles.css @@ -0,0 +1,264 @@ +/**************************************************/ +/******************* RESETEADOR *******************/ +/**************************************************/ + +/* http://meyerweb.com/eric/tools/css/reset/ v2.0 */ + +html, body, div, span, applet, object, iframe, +h1, h2, h3, h4, h5, h6, p, blockquote, pre, +a, abbr, acronym, address, big, cite, code, +del, dfn, em, img, ins, kbd, q, s, samp, +small, strike, strong, sub, sup, tt, var, +b, u, i, center, +dl, dt, dd, ol, ul, li, +fieldset, form, label, legend, +table, caption, tbody, tfoot, thead, tr, th, td, +article, aside, canvas, details, embed, +figure, figcaption, footer, header, hgroup, +menu, nav, output, ruby, section, summary, +time, mark, audio, video { + margin: 0; + padding: 0; + border: 0; + font-size: 100%; + font: inherit; + vertical-align: baseline; +} + +/* Old browsers / Para viejos exploradores */ + +article, aside, details, figcaption, figure, +footer, header, hgroup, menu, nav, section { + display: block; +} + +body { + line-height: 1.5; +} + +ol, ul { + list-style: none; +} + +blockquote, q { + quotes: none; +} + +blockquote:before, blockquote:after, +q:before, q:after { + content: ''; + content: none; +} + +table { + border-collapse: collapse; + border-spacing: 0; +} + +/**************************************************/ + +body * { + font-family: AlegreyaSansRegular, sans-serif; + line-height: 1.15; + font-weight: normal; + font-style: normal; +} + +body b { + font-family: "AlegreyaSansBold", sans-serif; + font-weight: bold; + font-style: normal; +} + +body i { + font-family: "AlegreyaSansItalic", sans-serif; + font-weight: normal; + font-style: italic; +} + +body a { + text-decoration: none; +} + +body span.icon { + padding-right: .25rem; +} + +header { + width: 100%; + height: 20rem; + background-image: url('../img/banner_color.jpg'); + background-position: bottom; + background-repeat: no-repeat; + background-size: cover; + display: flex; + align-items: center; + justify-content: center; +} + +header > img { + display: block; + height: 200px; + width: auto; + margin: auto; +} + +nav, footer { + position: -webkit-sticky; /* Safari */ + position: sticky; + top: 0; + background-color: #e5582d; + color: white; + padding: 1rem; +} + +nav { + margin-bottom: 2rem; + font-size: 1.25rem; +} + +nav a, footer a { + color: white; +} + +nav li { + display: inline; +} + +nav li:not(:first-of-type) { + margin-left: 1rem; +} + +nav input#search-bar { + display: inline-block; + border-radius: 1rem; + padding: .15rem .5rem; + border: none; + width: 200px; + box-sizing: border-box; + color: #2e2e2e; +} + +nav input#search-bar:focus { + outline: none; +} + +section { + max-width: 40rem; + margin: auto; + padding: 0 1rem; + font-size: 1.15rem; +} + +section > h1 { + font-size: 2rem; + margin-top: 2rem; +} + +section > h1 + p { + margin-top: 1rem; +} + +li.link { + scroll-margin-top: 5rem; + padding-top: 1rem; +} + +li.link:not(:first-of-type) { + margin-top: 1rem; +} + +li.link + li.link { + border-top: 1px dashed black; +} + +li.link h1 { + font-size: 1.5rem; +} + +li.link a.anchor { + font-size: 1rem; + padding-right: .5rem; +} + +li.link summary { + color: #e5582d; + margin-left: -1rem; +} + +li.link p.description, +li.link p.tags, +li.link p.dates { + color: gray; +} + +li.link p.description:before, +li.link p.tags:before, +li.link p.dates:before, +li.link summary:before { + padding-right: .5rem; +} + +li.link p.description:before { + content: "📝"; +} + +li.link p.tags:before { + content: "🏷️"; +} + +li.link p.dates:before { + content: "📅"; +} + +li.link span.created:before { + content: "Creado: "; +} + +li.link span.updated:before { + content: "Actualizado: "; + padding-left: 1rem; +} + +li.link div.info { + margin-top: 1rem; +} + +li.link a.link { + display: table-cell; + padding-right: .5em; +} + +details { + padding-left: 1rem; +} + +details h1, details h2 { + margin: 1rem auto; +} + +details h1:before, details h2:before { + color: #e5582d; +} + +details h1:before { + content: "# "; +} + +details h2:before { + content: "## "; +} + +details h3:before { + content: "### "; +} + +details p + p { + text-indent: 1rem; +} + +footer { + margin-top: 2rem; + padding: 1em 25%; + text-align: center; +} diff --git a/public/img/banner_color.jpg b/public/img/banner_color.jpg new file mode 100644 index 0000000..c8d686b Binary files /dev/null and b/public/img/banner_color.jpg differ diff --git a/public/img/favicon.png b/public/img/favicon.png new file mode 100644 index 0000000..6f7a6b6 Binary files /dev/null and b/public/img/favicon.png differ diff --git a/public/img/logo.png b/public/img/logo.png new file mode 100644 index 0000000..7630f47 Binary files /dev/null and b/public/img/logo.png differ diff --git a/public/index.html b/public/index.html new file mode 100644 index 0000000..032e67c --- /dev/null +++ b/public/index.html @@ -0,0 +1,76 @@ + + + + Blog del perro + + + + + + + + + + + +
+ Logotipo de perro tuerto +
+ + +
+

Acerca

+Hola, soy perro tuerto. Mi formación académica es en Filosofía, mi profesión es la edición de publicaciones (libros, fanzines, revistas, etc.) y mi programación se enfoca en el desarrollo de metodologías libres para la publicación. Soy fan de las humanidades, la paleoantropología y las ciencias de la computación, así como soy voluntario en organizaciones sobre edición, software y cultura libres, como Miau, Cuates o Wikipedia. Doy soporte técnico a la Academia Mexicana de la Lengua y puedo ayudarte en tus proyectos. En este espacio comparto enlaces que me parecen chéveres. +
+ + + + + diff --git a/public/js/list.min.js b/public/js/list.min.js new file mode 100644 index 0000000..8131881 --- /dev/null +++ b/public/js/list.min.js @@ -0,0 +1,2 @@ +var List;List=function(){var t={"./src/add-async.js":function(t){t.exports=function(t){return function e(r,n,s){var i=r.splice(0,50);s=(s=s||[]).concat(t.add(i)),r.length>0?setTimeout((function(){e(r,n,s)}),1):(t.update(),n(s))}}},"./src/filter.js":function(t){t.exports=function(t){return t.handlers.filterStart=t.handlers.filterStart||[],t.handlers.filterComplete=t.handlers.filterComplete||[],function(e){if(t.trigger("filterStart"),t.i=1,t.reset.filter(),void 0===e)t.filtered=!1;else{t.filtered=!0;for(var r=t.items,n=0,s=r.length;nv.page,a=new g(t[s],void 0,n),v.items.push(a),r.push(a)}return v.update(),r}m(t.slice(0),e)}},this.show=function(t,e){return this.i=t,this.page=e,v.update(),v},this.remove=function(t,e,r){for(var n=0,s=0,i=v.items.length;s-1&&r.splice(n,1),v},this.trigger=function(t){for(var e=v.handlers[t].length;e--;)v.handlers[t][e](v);return v},this.reset={filter:function(){for(var t=v.items,e=t.length;e--;)t[e].filtered=!1;return v},search:function(){for(var t=v.items,e=t.length;e--;)t[e].found=!1;return v}},this.update=function(){var t=v.items,e=t.length;v.visibleItems=[],v.matchingItems=[],v.templater.clear();for(var r=0;r=v.i&&v.visibleItems.lengthe},innerWindow:function(t,e,r){return t>=e-r&&t<=e+r},dotted:function(t,e,r,n,s,i,a){return this.dottedLeft(t,e,r,n,s,i)||this.dottedRight(t,e,r,n,s,i,a)},dottedLeft:function(t,e,r,n,s,i){return e==r+1&&!this.innerWindow(e,s,i)&&!this.right(e,n)},dottedRight:function(t,e,r,n,s,i,a){return!t.items[a-1].values().dotted&&(e==n&&!this.innerWindow(e,s,i)&&!this.right(e,n))}};return function(e){var n=new i(t.listContainer.id,{listClass:e.paginationClass||"pagination",item:e.item||"
  • ",valueNames:["page","dotted"],searchClass:"pagination-search-that-is-not-supposed-to-exist",sortClass:"pagination-sort-that-is-not-supposed-to-exist"});s.bind(n.listContainer,"click",(function(e){var r=e.target||e.srcElement,n=t.utils.getAttribute(r,"data-page"),s=t.utils.getAttribute(r,"data-i");s&&t.show((s-1)*n+1,n)})),t.on("updated",(function(){r(n,e)})),r(n,e)}}},"./src/parse.js":function(t,e,r){t.exports=function(t){var e=r("./src/item.js")(t),n=function(r,n){for(var s=0,i=r.length;s0?setTimeout((function(){e(r,s)}),1):(t.update(),t.trigger("parseComplete"))};return t.handlers.parseComplete=t.handlers.parseComplete||[],function(){var e=function(t){for(var e=t.childNodes,r=[],n=0,s=e.length;n]/g.exec(t)){var e=document.createElement("tbody");return e.innerHTML=t,e.firstElementChild}if(-1!==t.indexOf("<")){var r=document.createElement("div");return r.innerHTML=t,r.firstElementChild}}},a=function(e,r,n){var s=void 0,i=function(e){for(var r=0,n=t.valueNames.length;r=1;)t.list.removeChild(t.list.firstChild)},function(){var r;if("function"!=typeof t.item){if(!(r="string"==typeof t.item?-1===t.item.indexOf("<")?document.getElementById(t.item):i(t.item):s()))throw new Error("The list needs to have at least one item on init otherwise you'll have to add a template.");r=n(r,t.valueNames),e=function(){return r.cloneNode(!0)}}else e=function(e){var r=t.item(e);return i(r)}}()};t.exports=function(t){return new e(t)}},"./src/utils/classes.js":function(t,e,r){var n=r("./src/utils/index-of.js"),s=/\s+/;Object.prototype.toString;function i(t){if(!t||!t.nodeType)throw new Error("A DOM element reference is required");this.el=t,this.list=t.classList}t.exports=function(t){return new i(t)},i.prototype.add=function(t){if(this.list)return this.list.add(t),this;var e=this.array();return~n(e,t)||e.push(t),this.el.className=e.join(" "),this},i.prototype.remove=function(t){if(this.list)return this.list.remove(t),this;var e=this.array(),r=n(e,t);return~r&&e.splice(r,1),this.el.className=e.join(" "),this},i.prototype.toggle=function(t,e){return this.list?(void 0!==e?e!==this.list.toggle(t,e)&&this.list.toggle(t):this.list.toggle(t),this):(void 0!==e?e?this.add(t):this.remove(t):this.has(t)?this.remove(t):this.add(t),this)},i.prototype.array=function(){var t=(this.el.getAttribute("class")||"").replace(/^\s+|\s+$/g,"").split(s);return""===t[0]&&t.shift(),t},i.prototype.has=i.prototype.contains=function(t){return this.list?this.list.contains(t):!!~n(this.array(),t)}},"./src/utils/events.js":function(t,e,r){var n=window.addEventListener?"addEventListener":"attachEvent",s=window.removeEventListener?"removeEventListener":"detachEvent",i="addEventListener"!==n?"on":"",a=r("./src/utils/to-array.js");e.bind=function(t,e,r,s){for(var o=0,l=(t=a(t)).length;o32)return!1;var a=n,o=function(){var t,r={};for(t=0;t=p;b--){var j=o[t.charAt(b-1)];if(C[b]=0===m?(C[b+1]<<1|1)&j:(C[b+1]<<1|1)&j|(v[b+1]|v[b])<<1|1|v[b+1],C[b]&d){var x=l(m,b-1);if(x<=u){if(u=x,!((c=b-1)>a))break;p=Math.max(1,2*a-c)}}}if(l(m+1,a)>u)break;v=C}return!(c<0)}},"./src/utils/get-attribute.js":function(t){t.exports=function(t,e){var r=t.getAttribute&&t.getAttribute(e)||null;if(!r)for(var n=t.attributes,s=n.length,i=0;i=48&&t<=57}function i(t,e){for(var i=(t+="").length,a=(e+="").length,o=0,l=0;o=i&&l=a?-1:l>=a&&o=i?1:i-a}i.caseInsensitive=i.i=function(t,e){return i((""+t).toLowerCase(),(""+e).toLowerCase())},Object.defineProperties(i,{alphabet:{get:function(){return e},set:function(t){r=[];var s=0;if(e=t)for(;ssoftware y cultura libres, como Miau, Cuates o Wikipedia. Doy soporte t\u00e9cnico a la Academia Mexicana de la Lengua y puedo ayudarte en tus proyectos. En este espacio comparto enlaces que me parecen ch\u00e9veres.", "contacto": {"site": "https://perrotuerto.blog", "gitlab": "https://gitlab.com/perrotuerto", "cuates": "https://git.cuates.net/perro", "wikipedia": "https://es.wikipedia.org/wiki/Usuario:Perrotuerto", "github": "https://github.com/perrotuerto", "email": "hi@perrotuerto.blog"}, "links": [{"id": 91, "url": "https://www.larramendi.es/i18n/consulta/libroselectronicos.do", "title": "Biblioteca Virtual de Pol\u00edgrafos", "description": "Obras de Men\u00e9ndez Pelayo, Hernando de Larramendi y otros en ebook.", "notes": "# Presentaci\u00f3n\r\n\r\n## Concepto de pol\u00edgrafo y poligrafista\r\n\r\nMen\u00e9ndez Pelayo retratado por SorollaLa Fundaci\u00f3n se propone, a partir de una idea de Men\u00e9ndez Pelayo, creador del t\u00e9rmino pol\u00edgrafo en el sentido que se emplea aqu\u00ed, hacer accesible el pensamiento de pol\u00edgrafos espa\u00f1oles, portugueses, brasile\u00f1os e hispanoamericanos reuniendo digitalmente su obra. El proyecto se realiza en algunas de sus partes mediante la colaboraci\u00f3n con otras instituciones.\r\n\r\n## Concepto de pol\u00edgrafo\r\n\r\nLa palabra *pol\u00edgrafo* se refiere en este contexto al creador polifac\u00e9tico cuya obra marc\u00f3 un punto de inflexi\u00f3n en su campo.\r\n\r\n## El poligrafista\r\n\r\nLlamamos *poligrafista* al profesos investigador especialista en alguno o algunos de los pol\u00edgrafos que componen esta biblioteca virtual y que escribe un estudio sobre su figura y su obra. La Fundaci\u00f3n Ignacio Larramendi encarga muchos de estos estudios.\r\n\r\n## El comienzo\r\n\r\nLa Biblioteca Virtual de Pol\u00edgrafos es un proyecto que ide\u00f3 y puso en marcha Ignacio Hernando de Larramendi en los a\u00f1os 90 del siglo XX, con la intenci\u00f3n de aprovechar las posibilidades que las incipientes nuevas tecnolog\u00edas ofrec\u00edan para la conservaci\u00f3n y la difusi\u00f3n del conocimiento.\r\n\r\nIgnacio Larramendi centr\u00f3 esta Biblioteca Virtual en cuatro colecciones que recibieron el nombre de uno de los pol\u00edgrafos m\u00e1s importantes de cada una de ellas: Marcelino Men\u00e9ndez Pelayo, para la colecci\u00f3n de pol\u00edgrafos espa\u00f1oles, Jos\u00e9 de Anchieta, para la de brasile\u00f1os, Francisco Manuel de Melo, para la de portugueses, y Andr\u00e9s Bello, para la de hispanoamericanos. En recuerdo del aquellos comienzos figuran los cuatro pol\u00edgrafos, por ese orden, en la cabecera de este micrositio.\r\n\r\n## Reconocimiento de la Biblioteca Virtual de Pol\u00edgrafos por Europeana y el W3C\r\n\r\nLa Biblioteca Virtual de Pol\u00edgrafos de la Fundaci\u00f3n Ignacio Larramendi, denominada en ingl\u00e9s Polymath Virtual Library por el W3C, ha sido seleccionada por el cl\u00faster de Datos Bibliogr\u00e1ficos de esta entidad como [Case Study](http://www.w3.org/2005/Incubator/lld/wiki/Use_Case_Polymath_Virtual_Library).\r\n\r\nTambi\u00e9n esta Biblioteca Virtual ha sido elegida por Europeana un [EDM Case Study](https://pro.europeana.eu/page/polymath-edm).", "website_title": "Biblioteca Virtual de Pol\u00edgrafos > \r\n Obras\r\n \u203a\r\n Libros electr\u00f3nicos", "website_description": "", "is_archived": false, "unread": false, "shared": true, "tag_names": ["esteticas", "historia", "ideas", "blog"], "date_added": "2023-06-24T23:31:04.671856Z", "date_modified": "2023-06-25T21:59:05.406668Z"}]} \ No newline at end of file