diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 00000000..e7858983 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,2 @@ +# Force LF line endings, needed for Docker to work on Windows +*.sh text eol=lf \ No newline at end of file diff --git a/.github/workflows/broken-links.yml b/.github/workflows/broken-links.yml index 0c35d199..972b89c3 100644 --- a/.github/workflows/broken-links.yml +++ b/.github/workflows/broken-links.yml @@ -49,4 +49,4 @@ jobs: with: fail: true # removed md files that include liquid tags - args: --user-agent 'curl/7.54' --exclude-path README.md --exclude-path _pages/404.md --exclude-path _pages/blog.md --exclude-path _posts/2018-12-22-distill.md --exclude-path _posts/2023-04-24-videos.md --verbose --no-progress './**/*.md' './**/*.html' + args: --user-agent 'curl/7.54' --exclude-path README.md --exclude-path _pages/404.md --exclude-path _pages/blog.md --exclude-path _posts/2018-12-22-distill.md --exclude-path _posts/2023-04-24-videos.md --exclude-path _books/the_godfather.md --verbose --no-progress './**/*.md' './**/*.html' diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 1f1fc63b..70467472 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -7,6 +7,7 @@ on: - main paths: - "assets/**" + - "_sass/**" - "**.bib" - "**.html" - "**.js" @@ -34,6 +35,7 @@ on: - main paths: - "assets/**" + - "_sass/**" - "**.bib" - "**.html" - "**.js" diff --git a/CUSTOMIZE.md b/CUSTOMIZE.md index bfda987c..ce40b6af 100644 --- a/CUSTOMIZE.md +++ b/CUSTOMIZE.md @@ -13,6 +13,7 @@ The project is structured as follows, focusing on the main components that you w │   └── 📄 resume.json: CV in JSON format (https://jsonresume.org/) ├── 📂 _bibliography/ │   └── 📄 papers.bib: bibliography in BibTeX format +├── 📂 _books/: contains the bookshelf pages ├── 📄 _config.yml: the configuration file of the template ├── 📂 _data/: contains some of the data used in the template │   ├── 📄 cv.yml: CV in YAML format, used when assets/json/resume.json is not found @@ -59,10 +60,12 @@ You can create new pages by adding new Markdown files in the [\_pages](_pages/) ## Creating new blog posts -To create a new blog post, you can add a new Markdown file in the [\_posts](_posts/) directory. The [name of the file must follow](https://jekyllrb.com/docs/posts/#creating-posts) the format `YYYY-MM-DD-title.md`. The easiest way to do this is to copy an existing blog post and modify it. Note that some blog posts have optional fields in the [frontmatter](https://jekyllrb.com/docs/front-matter/) that are used to enable specific behaviors or functions. +To create a new blog post, you can add a new Markdown file in the [\_posts](_posts/) directory, which is the [default location for posts in Jekyll](https://jekyllrb.com/docs/posts/). The [name of the file must follow](https://jekyllrb.com/docs/posts/#creating-posts) the format `YYYY-MM-DD-title.md`. The easiest way to do this is to copy an existing blog post and modify it. Note that some blog posts have optional fields in the [frontmatter](https://jekyllrb.com/docs/front-matter/) that are used to enable specific behaviors or functions. If you want to create blog posts that are not ready to be published, but you want to track it with git, you can create a [\_drafts](https://jekyllrb.com/docs/posts/#drafts) directory and store them there. +Note that `posts` is also a collection, but it is a default collection created automatically by Jekyll. To access the posts, you can use the `site.posts` variable in your templates. + ## Creating new projects You can create new projects by adding new Markdown files in the [\_projects](_projects/) directory. The easiest way to do this is to copy an existing project and modify it. @@ -73,10 +76,14 @@ You can add news in the about page by adding new Markdown files in the [\_news]( ## Adding Collections -This Jekyll theme implements `collections` to let you break up your work into categories. The theme comes with two default collections: `news` and `projects`. Items from the `news` collection are automatically displayed on the home page. Items from the `projects` collection are displayed on a responsive grid on projects page. +This Jekyll theme implements [collections](https://jekyllrb.com/docs/collections/) to let you break up your work into categories. The theme comes with three default collections: `news`, `projects`, and `books`. Items from the `news` collection are automatically displayed on the home page, while items from the `projects` collection are displayed on a responsive grid on projects page and items from the `books` collection are displayed on its own `bookshelf` page inside `submenus`. You can easily create your own collections, apps, short stories, courses, or whatever your creative work is. To do this, edit the collections in the [\_config.yml](_config.yml) file, create a corresponding folder, and create a landing page for your collection, similar to [\_pages/projects.md](_pages/projects.md). +If you wish to create a collection with support for categories and tags, like the blog posts, you just need to add this collection to the `jekyll-archives` section of your [\_config.yml](_config.yml) file. You can check how this is done with the `books` collection. For more information about customizing the archives section or creating your own archives page, check the [jekyll-archives-v2 documentation](https://george-gca.github.io/jekyll-archives-v2/). + +To access the collections, you can use the `site.COLLECTION_NAME` variable in your templates. + ## Adding a new publication To add publications create a new entry in the [\_bibliography/papers.bib](_bibliography/papers.bib) file. You can find the BibTeX entry of a publication in Google Scholar by clicking on the quotation marks below the publication title, then clicking on "BibTeX", or also in the conference page itself. By default, the publications will be sorted by year and the most recent will be displayed first. You can change this behavior and more in the `Jekyll Scholar` section in [\_config.yml](_config.yml) file. @@ -116,7 +123,7 @@ If the entry matches one form of the last names and the first names, it will be url: https://en.wikipedia.org/wiki/Carl_Philipp_Emanuel_Bach ``` -If the entry matches one of the combinations of the last names and the first names, it will be highlighted and linked to the url provided. Note that the keys **MUST BE** lower cased and **MUST NOT** contain accents. This is because the keys are used to match the last names in the BibTeX entries, considering possible variations. +If the entry matches one of the combinations of the last names and the first names, it will be highlighted and linked to the url provided. Note that the keys **MUST BE** lower cased and **MUST NOT** contain accents. This is because the keys are used to match the last names in the BibTeX entries, considering possible variations (see [related discussion](https://github.com/alshedivat/al-folio/discussions/2213)). ### Buttons (through custom bibtex keywords) @@ -146,7 +153,7 @@ A variety of beautiful theme colors have been selected for you to choose from. T ## Adding social media information -You can add your social media links by adding the specified information at the `Social integration` section in the [\_config.yml](_config.yml) file. This information will appear at the bottom of the `About` page. +You can add your social media links by adding the specified information in the [\_data/socials.yml](_data/socials.yml) file. This information will appear at the bottom of the `About` page and in the search results by default, but this could be changed to appear at the header of the page by setting `enable_navbar_social: true` and doesn't appear in the search by setting `socials_in_search: false`, both in [\_config.yml](_config.yml). ## Adding a newsletter @@ -156,10 +163,10 @@ Depending on your specified footer behavior, the sign up form either will appear ## Removing content -Since this template have a lot of content, you may want to remove some of it. The easiest way to achieve this and avoid merge conflicts when updating your code (as [pointed by CheariX ](https://github.com/alshedivat/al-folio/pull/2933#issuecomment-2571271117)) is to add the unwanted files to the `excludes` section in your `_config.yml` file instead of actually deleting them, for example: +Since this template have a lot of content, you may want to remove some of it. The easiest way to achieve this and avoid merge conflicts when updating your code (as [pointed by CheariX ](https://github.com/alshedivat/al-folio/pull/2933#issuecomment-2571271117)) is to add the unwanted files to the `exclude` section in your `_config.yml` file instead of actually deleting them, for example: ```yml -excludes: +exclude: - _news/announcement_*.md - _pages/blog.md - _posts/ @@ -176,17 +183,16 @@ To remove the blog, you have to: - delete [\_posts](_posts/) directory - delete blog page [\_pages/blog.md](_pages/blog.md) - remove reference to blog page in our [\_pages/dropdown.md](_pages/dropdown.md) -- remove the `Blog` section in the [\_config.yml](_config.yml) file and the related parts, like the `jekyll-archives` and `latest_posts` +- remove the `latest_posts` part in [\_pages/about.md](_pages/about.md) +- remove the `Blog` section in the [\_config.yml](_config.yml) file and the related parts, like the `jekyll-archives` You can also: - delete [\_includes/latest_posts.liquid](_includes/latest_posts.liquid) - delete [\_includes/related_posts.liquid](_includes/related_posts.liquid) -- delete [\_layouts/archive-category.liquid](_layouts/archive-category.liquid) -- delete [\_layouts/archive-tag.liquid](_layouts/archive-tag.liquid) -- delete [\_layouts/archive-year.liquid](_layouts/archive-year.liquid) +- delete [\_layouts/archive.liquid](_layouts/archive.liquid) (unless you have a custom collection that uses it) - delete [\_plugins/external-posts.rb](_plugins/external-posts.rb) -- remove the `jekyll-archives` gem from the [Gemfile](Gemfile) and the `plugins` section in [\_config.yml](_config.yml) +- remove the `jekyll-archives-v2` gem from the [Gemfile](Gemfile) and the `plugins` section in [\_config.yml](_config.yml) (unless you have a custom collection that uses it) - remove the `classifier-reborn` gem from the [Gemfile](Gemfile) ### Removing the news section @@ -195,7 +201,7 @@ To remove the news section, you can: - delete the [\_news](_news/) directory - delete the file [\_includes/news.liquid](_includes/news.liquid) and the references to it in the [\_pages/about.md](_pages/about.md) -- remove the `announcements` part in [\_config.yml](_config.yml) +- remove the `announcements` part in [\_pages/about.md](_pages/about.md) - remove the news part in the `Collections` section in the [\_config.yml](_config.yml) file ### Removing the projects page diff --git a/Gemfile b/Gemfile index c9a27061..164c945d 100644 --- a/Gemfile +++ b/Gemfile @@ -4,7 +4,7 @@ gem 'jekyll' # Core plugins that directly affect site building group :jekyll_plugins do - gem 'jekyll-archives' + gem 'jekyll-archives-v2' gem 'jekyll-email-protect' gem 'jekyll-feed' gem 'jekyll-get-json' @@ -32,7 +32,7 @@ group :other_plugins do gem 'httparty' gem 'observer' # used by jekyll-scholar gem 'ostruct' # used by jekyll-twitter-plugin - gem 'terser' # used by jekyll-terser + # gem 'terser' # used by jekyll-terser # gem 'unicode_utils' -- should be already installed by jekyll # gem 'webrick' -- should be already installed by jekyll end diff --git a/Gemfile.lock b/Gemfile.lock index 98c191d9..8e4620fa 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,15 +1,15 @@ GIT remote: https://github.com/RobertoJBeltran/jekyll-terser.git - revision: 2f737004fe4732b92021c84e4de71e6a8585ff01 + revision: 1085bf66d692799af09fe39f8162a1e6e42a3cc4 specs: - jekyll-terser (0.2.2) + jekyll-terser (0.2.3) jekyll (>= 0.10.0) terser (>= 1.0.0) GEM remote: https://rubygems.org/ specs: - activesupport (8.0.1) + activesupport (8.0.2) base64 benchmark (>= 0.3) bigdecimal @@ -30,8 +30,13 @@ GEM latex-decode (~> 0.0) racc (~> 1.7) bigdecimal (3.1.9) - citeproc (1.0.10) + citeproc (1.1.0) + date + forwardable + json namae (~> 1.0) + observer (< 1.0) + open-uri (< 1.0) citeproc-ruby (1.1.14) citeproc (~> 1.0, >= 1.0.9) csl (~> 1.6) @@ -47,10 +52,11 @@ GEM rexml csl-styles (1.0.1.11) csl (~> 1.0) - css_parser (1.21.0) + css_parser (1.21.1) addressable cssminify2 (2.0.1) - csv (3.3.2) + csv (3.3.3) + date (3.4.1) deep_merge (1.2.2) drb (2.2.1) em-websocket (0.5.3) @@ -70,21 +76,22 @@ GEM ffi (1.17.1-x86_64-darwin) ffi (1.17.1-x86_64-linux-gnu) ffi (1.17.1-x86_64-linux-musl) + forwardable (1.3.3) forwardable-extended (2.6.0) gemoji (4.1.0) - google-protobuf (4.29.3) + google-protobuf (4.30.1) bigdecimal rake (>= 13) - google-protobuf (4.29.3-aarch64-linux) + google-protobuf (4.30.1-aarch64-linux) bigdecimal rake (>= 13) - google-protobuf (4.29.3-arm64-darwin) + google-protobuf (4.30.1-arm64-darwin) bigdecimal rake (>= 13) - google-protobuf (4.29.3-x86_64-darwin) + google-protobuf (4.30.1-x86_64-darwin) bigdecimal rake (>= 13) - google-protobuf (4.29.3-x86_64-linux) + google-protobuf (4.30.1-x86_64-linux) bigdecimal rake (>= 13) html-pipeline (2.14.3) @@ -96,25 +103,29 @@ GEM csv mini_mime (>= 1.0.0) multi_xml (>= 0.5.2) - i18n (1.14.6) + i18n (1.14.7) concurrent-ruby (~> 1.0) - jekyll (4.3.4) + jekyll (4.4.1) addressable (~> 2.4) + base64 (~> 0.2) colorator (~> 1.0) + csv (~> 3.0) em-websocket (~> 0.5) i18n (~> 1.0) jekyll-sass-converter (>= 2.0, < 4.0) jekyll-watch (~> 2.0) + json (~> 2.6) kramdown (~> 2.3, >= 2.3.1) kramdown-parser-gfm (~> 1.0) liquid (~> 4.0) - mercenary (>= 0.3.6, < 0.5) + mercenary (~> 0.3, >= 0.3.6) pathutil (~> 0.9) rouge (>= 3.0, < 5.0) safe_yaml (~> 1.0) terminal-table (>= 1.8, < 4.0) webrick (~> 1.7) - jekyll-archives (2.3.0) + jekyll-archives-v2 (0.0.6) + activesupport jekyll (>= 3.6, < 5.0) jekyll-email-protect (1.1.0) jekyll-feed (0.17.0) @@ -136,8 +147,8 @@ GEM jekyll-paginate-v2 (3.0.0) jekyll (>= 3.0, < 5.0) jekyll-regex-replace (1.1.0) - jekyll-sass-converter (3.0.0) - sass-embedded (~> 1.54) + jekyll-sass-converter (3.1.0) + sass-embedded (~> 1.75) jekyll-scholar (7.1.3) bibtex-ruby (~> 6.0) citeproc-ruby (~> 1.0) @@ -157,7 +168,7 @@ GEM gemoji (>= 3, < 5) html-pipeline (~> 2.2) jekyll (>= 3.0, < 5.0) - json (2.9.1) + json (2.10.2) json-minify (0.0.3) json (> 0) kramdown (2.5.1) @@ -169,35 +180,39 @@ GEM listen (3.9.0) rb-fsevent (~> 0.10, >= 0.10.3) rb-inotify (~> 0.9, >= 0.9.10) - logger (1.6.5) + logger (1.6.6) loofah (2.24.0) crass (~> 1.0.2) nokogiri (>= 1.12.0) matrix (0.4.2) mercenary (0.4.0) mini_mime (1.1.5) - minitest (5.25.4) + minitest (5.25.5) multi_xml (0.7.1) bigdecimal (~> 3.1) namae (1.2.0) racc (~> 1.7) - nokogiri (1.18.1-aarch64-linux-gnu) + nokogiri (1.18.5-aarch64-linux-gnu) racc (~> 1.4) - nokogiri (1.18.1-aarch64-linux-musl) + nokogiri (1.18.5-aarch64-linux-musl) racc (~> 1.4) - nokogiri (1.18.1-arm-linux-gnu) + nokogiri (1.18.5-arm-linux-gnu) racc (~> 1.4) - nokogiri (1.18.1-arm-linux-musl) + nokogiri (1.18.5-arm-linux-musl) racc (~> 1.4) - nokogiri (1.18.1-arm64-darwin) + nokogiri (1.18.5-arm64-darwin) racc (~> 1.4) - nokogiri (1.18.1-x86_64-darwin) + nokogiri (1.18.5-x86_64-darwin) racc (~> 1.4) - nokogiri (1.18.1-x86_64-linux-gnu) + nokogiri (1.18.5-x86_64-linux-gnu) racc (~> 1.4) - nokogiri (1.18.1-x86_64-linux-musl) + nokogiri (1.18.5-x86_64-linux-musl) racc (~> 1.4) observer (0.1.2) + open-uri (0.5.0) + stringio + time + uri ostruct (0.6.1) pathutil (0.16.2) forwardable-extended (~> 2.6) @@ -207,37 +222,40 @@ GEM rb-fsevent (0.11.2) rb-inotify (0.11.1) ffi (~> 1.0) - rexml (3.4.0) + rexml (3.4.1) rouge (4.5.1) safe_yaml (1.0.5) - sass-embedded (1.83.4-aarch64-linux-gnu) - google-protobuf (~> 4.29) - sass-embedded (1.83.4-aarch64-linux-musl) - google-protobuf (~> 4.29) - sass-embedded (1.83.4-arm-linux-gnueabihf) - google-protobuf (~> 4.29) - sass-embedded (1.83.4-arm-linux-musleabihf) - google-protobuf (~> 4.29) - sass-embedded (1.83.4-arm64-darwin) - google-protobuf (~> 4.29) - sass-embedded (1.83.4-x86_64-darwin) - google-protobuf (~> 4.29) - sass-embedded (1.83.4-x86_64-linux-gnu) - google-protobuf (~> 4.29) - sass-embedded (1.83.4-x86_64-linux-musl) - google-protobuf (~> 4.29) + sass-embedded (1.86.0-aarch64-linux-gnu) + google-protobuf (~> 4.30) + sass-embedded (1.86.0-aarch64-linux-musl) + google-protobuf (~> 4.30) + sass-embedded (1.86.0-arm-linux-gnueabihf) + google-protobuf (~> 4.30) + sass-embedded (1.86.0-arm-linux-musleabihf) + google-protobuf (~> 4.30) + sass-embedded (1.86.0-arm64-darwin) + google-protobuf (~> 4.30) + sass-embedded (1.86.0-x86_64-darwin) + google-protobuf (~> 4.30) + sass-embedded (1.86.0-x86_64-linux-gnu) + google-protobuf (~> 4.30) + sass-embedded (1.86.0-x86_64-linux-musl) + google-protobuf (~> 4.30) sax-machine (1.3.2) securerandom (0.4.1) + stringio (3.1.5) terminal-table (3.0.2) unicode-display_width (>= 1.1.1, < 3) - terser (1.2.4) + terser (1.2.5) execjs (>= 0.3.0, < 3) + time (0.4.1) + date tzinfo (2.0.6) concurrent-ruby (~> 1.0) uglifier (4.2.1) execjs (>= 0.3.0, < 3) unicode-display_width (2.6.0) - uri (1.0.2) + uri (1.0.3) webrick (1.9.1) PLATFORMS @@ -260,7 +278,7 @@ DEPENDENCIES feedjira httparty jekyll - jekyll-archives + jekyll-archives-v2 jekyll-email-protect jekyll-feed jekyll-get-json @@ -279,7 +297,6 @@ DEPENDENCIES jemoji observer ostruct - terser BUNDLED WITH - 2.6.2 + 2.6.6 diff --git a/INSTALL.md b/INSTALL.md index e4279273..3cbc5b12 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -6,6 +6,7 @@ - [Local setup on Windows](#local-setup-on-windows) - [Local setup using Docker (Recommended)](#local-setup-using-docker-recommended) - [Build your own docker image](#build-your-own-docker-image) + - [Have Bugs on Docker Image?](#have-bugs-on-docker-image) - [Local Setup with Development Containers](#local-setup-with-development-containers) - [Local Setup (Legacy, no longer supported)](#local-setup-legacy-no-longer-supported) - [Deployment](#deployment) @@ -13,6 +14,7 @@ - [For project pages](#for-project-pages) - [Enabling automatic deployment](#enabling-automatic-deployment) - [Manual deployment to GitHub Pages](#manual-deployment-to-github-pages) + - [Deploy on Netlify](#deploy-on-netlify) - [Deployment to another hosting server (non GitHub Pages)](#deployment-to-another-hosting-server-non-github-pages) - [Deployment to a separate repository (advanced users only)](#deployment-to-a-separate-repository-advanced-users-only) - [Upgrading from a previous version](#upgrading-from-a-previous-version) @@ -24,7 +26,7 @@ The recommended approach for using **al-folio** is to first create your own site using the template with as few changes as possible, and only when it is up and running customize it however you like. This way it is easier to pinpoint what causes a potential issue in case of a bug. The minimum steps required to create your own site are ([video tutorial here](assets/video/tutorial_al_folio.mp4)): 1. Create a new repository using this template. For this, click on [Use this template -> Create a new repository](https://github.com/new?template_name=al-folio&template_owner=alshedivat) above the file list. If you plan to upload your site to `.github.io`, note that the name of your repository :warning: **MUST BE** :warning: `.github.io` or `.github.io`, as stated in the [GitHub pages docs](https://docs.github.com/en/pages/getting-started-with-github-pages/about-github-pages#types-of-github-pages-sites). -2. In this new repository, go to `Settings -> Actions -> General -> Workflow permissions` and give `Read and write permissions` to GitHub Actions. +2. In this new repository, go to [Settings -> Actions -> General -> Workflow permissions](https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository#configuring-the-default-github_token-permissions) and give `Read and write permissions` to GitHub Actions. 3. Open file `_config.yml`, set `url` to `https://.github.io` and leave `baseurl` **empty** (do NOT delete it), as `baseurl:`. 4. Wait until the GitHub action with subtitle `Deploy site` finishes (check your repository **Actions** tab), which takes ~4 min. Now, in addition to the `main` branch, your repository has a newly built `gh-pages` branch. 5. Finally, in the repository page go to `Settings -> Pages -> Build and deployment`, make sure that `Source` is set to `Deploy from a branch` and set the branch to `gh-pages` (NOT to main). @@ -75,6 +77,36 @@ $ docker compose up --build If you want to use a specific docker version, you can do so by changing `latest` tag to `your_version` in `docker-compose.yaml`. For example, you might have created your website on `v0.10.0` and you want to stick with that. +### Have Bugs on Docker Image? + +Sometimes, there might be some bugs in the current docker image. It might be version mismatch or anything. If you want to debug and easily solve the problem for yourself you can do the following steps: + +``` +docker compose up -d +docker compose logs +``` + +Then you can see the bug! You can enter the container via this command: + +``` +docker compose exec -it jekyll /bin/bash +``` + +Then you can run the script: + +``` +./bin/entry_point.sh +``` + +You might see problems for package dependecy or something which is not available. You can fix it now by using + +``` +bundle install +./bin/entry_point.sh +``` + +Most likely, this will solve the problem but it shouldn't really happen. So, please open a bug report for us. + ## Local Setup with Development Containers `al-folio` supports [Development Containers](https://containers.dev/supporting). @@ -210,7 +242,7 @@ If you installed **al-folio** as described above, you can manually update your c # Assuming the current directory is $ git remote add upstream https://github.com/alshedivat/al-folio.git $ git fetch upstream -$ git rebase v0.13.4 +$ git rebase v0.14.4 ``` If you have extensively customized a previous version, it might be trickier to upgrade. diff --git a/LICENSE b/LICENSE index f2b86815..368a8aac 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ The MIT License (MIT) -Copyright (c) 2022 Maruan Al-Shedivat. +Copyright (c) 2025 Maruan Al-Shedivat. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in diff --git a/_books/surdo-maulet.md b/_books/surdo-maulet.md index 233529ba..d94922cd 100644 --- a/_books/surdo-maulet.md +++ b/_books/surdo-maulet.md @@ -3,7 +3,7 @@ layout: book title: El Surdo (maulet) author: Vicent Hernández Sancho isbn: 978-84-16473-52-6 -pvp: 19.90€ +pvp: 21.90€ year: 2021 description: Era una època dura, violenta, de abusos señoriales que, como consecuencia, forjó hombres valientes description_long: Esta novela històrica narra unos hechos reales, ocurridos al final del siglo XVII y principios del siguiente. Acciones violentas lideradas por Tono el Surdo, que llevaron a cabo los labradores del antiguo señorio de Xàtiva. diff --git a/_books/the_godfather.md b/_books/the_godfather.md new file mode 100644 index 00000000..c0689e5d --- /dev/null +++ b/_books/the_godfather.md @@ -0,0 +1,27 @@ +--- +layout: book-review +title: The Godfather +author: Mario Puzo +cover: assets/img/book_covers/the_godfather.jpg +olid: OL43499941M # use Open Library ID to fetch cover (if no `cover` is provided) +isbn: 7539967447 # use ISBN to fetch cover (if no `olid` is provided, dashes are optional) +categories: classics crime historical-fiction mystery novels thriller +tags: top-100 +buy_link: https://www.amazon.com/Godfather-Deluxe-Mario-Puzo/dp/0593542592 +started: 2024-08-23 +finished: 2024-09-07 +released: 1969 +stars: 5 +goodreads_review: 6318556633 +status: Finished +--- + +Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras sollicitudin eros sit amet ante aliquet, sit amet vulputate lectus mattis. Aenean ullamcorper pretium nunc, sed egestas lorem elementum id. Nulla id mi id neque ultrices egestas ut in urna. Sed ac ultricies nunc. Nam convallis placerat urna id egestas. Nulla porta, est interdum vestibulum venenatis, lorem odio laoreet sapien, in pulvinar tellus eros a dolor. Vivamus sapien justo, ullamcorper a mi eget, scelerisque euismod nunc. In augue augue, ultrices a ornare non, tincidunt quis justo. Donec sit amet consectetur eros. Nullam neque leo, tincidunt id ipsum ac, volutpat lobortis mi. Phasellus consequat ultricies arcu, eu semper ligula ultrices eget. Ut in fringilla elit, ac tincidunt nisi. + +Nunc commodo elit nec turpis feugiat consectetur. Nullam in nisi egestas, fermentum ligula hendrerit, euismod enim. Nulla eu hendrerit eros. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin et velit ante. Vestibulum pretium vitae quam et sagittis. Proin eu nunc vel velit accumsan eleifend. Nulla facilisis, diam tempus imperdiet ultrices, massa ipsum consequat orci, sed efficitur eros mi a felis. Cras lobortis turpis sem, sed lobortis nunc ullamcorper tristique. Nam vehicula rhoncus ante, in faucibus sapien scelerisque et. Donec semper libero et tincidunt mattis. In vestibulum, nulla pretium dictum commodo, risus nulla vestibulum felis, at tincidunt massa mi in odio. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. + +Donec efficitur ultrices purus sit amet imperdiet. Nam consequat metus in erat sodales faucibus. Aliquam maximus fermentum nulla id finibus. Aliquam iaculis sed odio vel rutrum. Curabitur sed odio est. Praesent nec sollicitudin tortor. Praesent pharetra, turpis quis porttitor rhoncus, ante massa fringilla lacus, nec porttitor magna turpis vitae felis. Nullam tristique massa id odio imperdiet, nec sodales massa egestas. Proin nisi metus, euismod sed accumsan vitae, facilisis vel risus. Morbi suscipit auctor erat, nec viverra elit fringilla eu. Mauris congue, purus id tristique facilisis, felis nisi efficitur magna, eu consectetur augue sem vitae lacus. Aliquam erat volutpat. Cras at nibh ultricies, volutpat arcu vitae, dictum est. In ac dolor sagittis, egestas lectus et, semper nisl. Etiam consectetur purus vitae sapien porttitor auctor. + +Nulla sit amet venenatis odio. Suspendisse ac lacus quis augue mollis tempus vel in lorem. Donec augue turpis, eleifend nec nibh eu, elementum dictum metus. Proin ut est ligula. Etiam vehicula facilisis metus, sit amet consectetur risus ullamcorper porttitor. In congue nibh quis sollicitudin iaculis. Donec a mollis lorem, non mollis lacus. Nulla et leo ex. Aliquam erat volutpat. Nam sit amet tincidunt mauris. Vivamus vitae est sit amet nisi semper egestas. Donec in diam pharetra, commodo diam vitae, imperdiet ligula. Cras iaculis ac diam eget vehicula. Proin suscipit ante enim, quis vehicula mi porta bibendum. Aliquam a diam porttitor, sollicitudin justo vitae, tempor odio. + +Cras fermentum dignissim pretium. Donec quis turpis eu neque lacinia facilisis in sit amet nibh. Nulla non tortor ultricies, euismod est in, blandit nibh. Ut a neque metus. Sed convallis condimentum nibh quis finibus. Praesent aliquam sem iaculis eros maximus accumsan. Nulla venenatis mauris id aliquet maximus. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin at enim vitae ex porttitor vestibulum sed eget nibh. Suspendisse accumsan feugiat quam eget ultricies. diff --git a/_collections/rent.md b/_collections/rent.md index c5299dcc..de98d7e5 100644 --- a/_collections/rent.md +++ b/_collections/rent.md @@ -5,7 +5,7 @@ description: Literatura religiosa img: importance: 10 category: adult -category_book: collaboracions +category_book: rent related_publications: false horizontal: true --- diff --git a/_config.yml b/_config.yml index ab58cbf4..31444c5e 100644 --- a/_config.yml +++ b/_config.yml @@ -52,6 +52,7 @@ navbar_fixed: true footer_fixed: true search_enabled: true socials_in_search: true +posts_in_search: true bib_search: true # Dimensions @@ -221,7 +222,7 @@ keep_files: # Plug-ins plugins: - - jekyll-archives + - jekyll-archives-v2 - jekyll-email-protect - jekyll-feed - jekyll-get-json @@ -255,7 +256,7 @@ sass: jekyll-minifier: compress_javascript: false # set to false since we are using terser as the js minifier - # exclude: ["robots.txt", "assets/js/search/*.js"] + exclude: ["robots.txt", "assets/js/search/*.js"] # ----------------------------------------------------------------------------- # Terser @@ -270,15 +271,14 @@ terser: # ----------------------------------------------------------------------------- jekyll-archives: - enabled: [year, tags, categories] # enables year, tag and category archives (remove if you need to disable one of them). - layouts: - year: archive-year - tag: archive-tag - category: archive-category - permalinks: - year: "/blog/:year/" - tag: "/blog/tag/:name/" - category: "/blog/category/:name/" + posts: + enabled: [year, tags, categories] # enables year, tag and category archives (remove if you need to disable one of them). + permalinks: + year: "/blog/:year/" + tags: "/blog/:type/:name/" + categories: "/blog/:type/:name/" + books: + enabled: [year, tags, categories] # enables year, tag and category archives (remove if you need to disable one of them). display_tags: ["diccionaris", "col·leccions", "material biblioteca"] # these tags will be displayed on the front page of your blog display_categories: ["distribuïdors"] # these categories will be displayed on the front page of your blog @@ -571,6 +571,12 @@ third_party_libraries: url: js: "https://cdn.jsdelivr.net/npm/photoswipe@{{version}}/dist/photoswipe-lightbox.esm.min.js" version: "5.4.4" + plotly: + integrity: + js: "sha256-oy6Be7Eh6eiQFs5M7oXuPxxm9qbJXEtTpfSI93dW16Q=" + url: + js: "https://cdn.jsdelivr.net/npm/plotly.js@{{version}}/dist/plotly.min.js" + version: "3.0.1" polyfill: url: js: "https://cdnjs.cloudflare.com/polyfill/v{{version}}/polyfill.min.js?features=es6" diff --git a/_includes/distill_scripts.liquid b/_includes/distill_scripts.liquid index 82bf5936..8d6a63ca 100644 --- a/_includes/distill_scripts.liquid +++ b/_includes/distill_scripts.liquid @@ -81,6 +81,17 @@ {% endif %} +{% if page.chart and page.chart.plotly %} + + + +{% endif %} + {% if page.chart and page.chart.vega_lite %} {% endif %} - -{% if site.newsletter.enabled %} - -{% endif %} diff --git a/_includes/figure.liquid b/_includes/figure.liquid index 191c6380..5bf96bdf 100644 --- a/_includes/figure.liquid +++ b/_includes/figure.liquid @@ -14,20 +14,22 @@ https://developer.mozilla.org/en-US/docs/Learn/HTML/Multimedia_and_embedding/Responsive_images for info on defining 'sizes' for responsive images --> {% if site.imagemagick.enabled %} - + {% unless include.avoid_scaling %} + + {% endunless %} {% endif %} Impressum. + {% endif %} + {% if site.last_updated %} + Last updated: {{ 'now' | date: '%B %d, %Y' }}. + {% endif %} +{% endcapture %} + {% if site.footer_fixed %}
- © Copyright {{ site.time | date: '%Y' }} - {{ site.first_name }} - {{ site.middle_name }} - {{ site.last_name }}. {{ site.footer_text }} - {% if site.impressum_path %} - Impressum. - {% endif %} - {% if site.last_updated %} - Last updated: {{ 'now' | date: '%B %d, %Y' }}. - {% endif %} + {{ footer_contents }}
{% else %} @@ -20,16 +24,7 @@ {% endif %}
- © Copyright {{ site.time | date: '%Y' }} - {{ site.first_name }} - {{ site.middle_name }} - {{ site.last_name }}. {{ site.footer_text }} - {% if site.impressum_path %} - Impressum. - {% endif %} - {% if site.last_updated %} - Last updated: {{ 'now' | date: '%B %d, %Y' }}. - {% endif %} + {{ footer_contents }}
{% endif %} diff --git a/_includes/latest_posts.liquid b/_includes/latest_posts.liquid index e710727a..3342619c 100644 --- a/_includes/latest_posts.liquid +++ b/_includes/latest_posts.liquid @@ -1,16 +1,16 @@
- {% if site.latest_posts != blank %} + {% if page.latest_posts != blank %} {% assign latest_posts_size = site.posts | size %}
3 %} + {% if page.latest_posts.scrollable and latest_posts_size > 3 %} style="max-height: 60vw" {% endif %} > {% assign latest_posts = site.posts %} - {% if site.latest_posts.limit %} - {% assign latest_posts_limit = site.latest_posts.limit %} + {% if page.latest_posts.limit %} + {% assign latest_posts_limit = page.latest_posts.limit %} {% else %} {% assign latest_posts_limit = latest_posts_size %} {% endif %} diff --git a/_includes/news.liquid b/_includes/news.liquid index 547ccf1a..ddf40b86 100644 --- a/_includes/news.liquid +++ b/_includes/news.liquid @@ -3,14 +3,14 @@ {% assign news_size = site.news | size %}
3 %} + {% if include.limit and page.announcements.scrollable and news_size > 3 %} style="max-height: 60vw" {% endif %} >
{% assign news = site.news | reverse %} - {% if include.limit and site.announcements.limit %} - {% assign news_limit = site.announcements.limit %} + {% if include.limit and page.announcements.limit %} + {% assign news_limit = page.announcements.limit %} {% else %} {% assign news_limit = news_size %} {% endif %} diff --git a/_includes/related_posts.liquid b/_includes/related_posts.liquid index f6952015..07690df0 100644 --- a/_includes/related_posts.liquid +++ b/_includes/related_posts.liquid @@ -13,7 +13,16 @@ {% endunless %}
  • - {{ post.title }} + {% if post.redirect == blank %} + {{ post.title }} + {% elsif post.redirect contains '://' %} + {{ post.title }} + + + + {% else %} + {{ post.title }} + {% endif %}
  • {% endfor %} {% if site.newsletter.enabled and site.footer_fixed %} diff --git a/_includes/repository/repo.liquid b/_includes/repository/repo.liquid index 0f1afd42..e353de0b 100644 --- a/_includes/repository/repo.liquid +++ b/_includes/repository/repo.liquid @@ -5,6 +5,26 @@ {% assign show_owner = true %} {% endif %} +{% assign lang = site.lang | split: '-' | first %} + +{% case lang %} + {% when 'pt' %} + {% assign lang = site.lang %} + + {% when 'zh' %} + {% assign lang_last = site.lang | split: '-' | last %} + {% case lang_last %} + {% when 'cn', 'sg', 'my', 'hans' %} + {% assign lang = 'cn' %} + {% when 'tw', 'hk', 'mo', 'hant' %} + {% assign lang = 'zh-tw' %} + {% endcase %} + + {% comment %} Add a new language using when... if needed {% endcomment %} + {% comment %} If you still encounter language-display issues, check the available locale codes in github-readme-stats (different from ISO-639 standard used in your website) {% endcomment %} + {% comment %} https://github.com/anuraghazra/github-readme-stats?tab=readme-ov-file#available-locales {% endcomment %} +{% endcase %} + {% if site.data.repositories.repo_description_lines_max %} {% assign max_lines = site.data.repositories.repo_description_lines_max %} {% else %} @@ -16,12 +36,12 @@ {{ include.repository }}{{ include.repository }} diff --git a/_includes/repository/repo_user.liquid b/_includes/repository/repo_user.liquid index 7dc959f9..2889cff3 100644 --- a/_includes/repository/repo_user.liquid +++ b/_includes/repository/repo_user.liquid @@ -1,14 +1,34 @@ +{% assign lang = site.lang | split: '-' | first %} + +{% case lang %} + {% when 'pt' %} + {% assign lang = site.lang %} + + {% when 'zh' %} + {% assign lang_last = site.lang | split: '-' | last %} + {% case lang_last %} + {% when 'cn', 'sg', 'my', 'hans' %} + {% assign lang = 'cn' %} + {% when 'tw', 'hk', 'mo', 'hant' %} + {% assign lang = 'zh-tw' %} + {% endcase %} + + {% comment %} Add a new language using when... if needed {% endcomment %} + {% comment %} If you still encounter language-display issues, check the available locale codes in github-readme-stats (different from ISO-639 standard used in your website) {% endcomment %} + {% comment %} https://github.com/anuraghazra/github-readme-stats?tab=readme-ov-file#available-locales {% endcomment %} +{% endcase %} + diff --git a/_includes/scripts.liquid b/_includes/scripts.liquid index 7bbd0716..a97abaaa 100644 --- a/_includes/scripts.liquid +++ b/_includes/scripts.liquid @@ -98,6 +98,17 @@ {% endif %} +{% if page.chart and page.chart.plotly %} + + + +{% endif %} + {% if page.chart and page.chart.vega_lite %} + {% endif %} diff --git a/_layouts/about.liquid b/_layouts/about.liquid index 84cadd95..85bd5138 100644 --- a/_layouts/about.liquid +++ b/_layouts/about.liquid @@ -44,7 +44,7 @@ layout: default
    {{ content }}
    - {% if page.news and site.announcements and site.announcements.enabled %} + {% if page.announcements and page.announcements.enabled %}

    news

    @@ -52,7 +52,7 @@ layout: default {% endif %} - {% if site.latest_posts and site.latest_posts.enabled %} + {% if page.latest_posts and page.latest_posts.enabled %}

    latest posts

    diff --git a/_layouts/archive-category.liquid b/_layouts/archive-category.liquid deleted file mode 100644 index 2fc5009f..00000000 --- a/_layouts/archive-category.liquid +++ /dev/null @@ -1,30 +0,0 @@ ---- -layout: default ---- -
    -
    -

    {{ page.title }}

    -

    an archive of posts in this category

    -
    - -
    -
    -
    - {% for post in page.posts %} - - - - - {% endfor %} -
    {{ post.date | date: '%b %d, %Y' }} - {% if post.redirect == blank %} - {{ post.title }} - {% elsif post.redirect contains '://' %} - {{ post.title }} - {% else %} - {{ post.title }} - {% endif %} -
    -
    - -
    diff --git a/_layouts/archive-tag.liquid b/_layouts/archive-tag.liquid deleted file mode 100644 index 81019a0b..00000000 --- a/_layouts/archive-tag.liquid +++ /dev/null @@ -1,30 +0,0 @@ ---- -layout: default ---- -
    -
    -

    {{ page.title }}

    -

    an archive of posts with this tag

    -
    - -
    -
    - - {% for post in page.posts %} - - - - - {% endfor %} -
    {{ post.date | date: '%b %d, %Y' }} - {% if post.redirect == blank %} - {{ post.title }} - {% elsif post.redirect contains '://' %} - {{ post.title }} - {% else %} - {{ post.title }} - {% endif %} -
    -
    -
    -
    diff --git a/_layouts/archive-year.liquid b/_layouts/archive-year.liquid deleted file mode 100644 index 0ce93efc..00000000 --- a/_layouts/archive-year.liquid +++ /dev/null @@ -1,30 +0,0 @@ ---- -layout: default ---- -
    -
    -

    {{ page.date | date: '%Y' }}

    -

    an archive of posts from this year

    -
    - -
    -
    - - {% for post in page.posts %} - - - - - {% endfor %} -
    {{ post.date | date: '%b %d, %Y' }} - {% if post.redirect == blank %} - {{ post.title }} - {% elsif post.redirect contains '://' %} - {{ post.title }} - {% else %} - {{ post.title }} - {% endif %} -
    -
    -
    -
    diff --git a/_layouts/archive.liquid b/_layouts/archive.liquid new file mode 100644 index 00000000..b8d81b67 --- /dev/null +++ b/_layouts/archive.liquid @@ -0,0 +1,38 @@ +--- +layout: default +--- +
    +
    + {% if page.type == 'categories' %} +

    {{ page.title }}

    +

    an archive of {{ page.collection_name }} in this category

    + {% elsif page.type == 'year' %} +

    {{ page.date | date: '%Y' }}

    +

    an archive of {{ page.collection_name }} from this year

    + {% elsif page.type == 'tags' %} +

    {{ page.title }}

    +

    an archive of {{ page.collection_name }} with this tag

    + {% endif %} +
    + + +
    diff --git a/_layouts/bib.liquid b/_layouts/bib.liquid index d2029942..a983d078 100644 --- a/_layouts/bib.liquid +++ b/_layouts/bib.liquid @@ -37,6 +37,7 @@ sizes = "200px" class="preview z-depth-1 rounded" zoomable=true + avoid_scaling=true alt=entry.preview %} {% endif %} @@ -353,18 +354,6 @@ > {% endif %} - {% if site.enable_publication_badges.inspirehep and entry_has_inspirehep_badge %} - - {% inspirehep_citations entry.inspirehep_id %} InspireHEP citations - - {% endif %} {% endif %} {% endif %} diff --git a/_layouts/book-review.liquid b/_layouts/book-review.liquid new file mode 100644 index 00000000..02a60a5b --- /dev/null +++ b/_layouts/book-review.liquid @@ -0,0 +1,257 @@ +--- +layout: default +--- +{% assign year = page.started | date: '%Y' %} +{% assign tags = page.tags | join: '' %} +{% assign categories = page.categories | join: '' %} + +{% if page._styles %} + + +{% endif %} + +
    +
    +

    {{ page.title }}

    + {% if page.author or page.released %} + + {% endif %} + + {% if page.started or page.finished or page.stars %} + + {% endif %} + +
    +
    + +
    + {% if content == '' %} +
    + {% if page.cover %} + {{ page.title }} cover +
    + Cover of {{ page.title }} +
    + {% elsif page.olid %} + {{ page.title }} cover +
    + Cover of {{ page.title }} on the Open Library. +
    + {% elsif page.isbn %} + {{ page.title }} cover +
    + Cover of {{ page.title }} on the Open Library. +
    + {% endif %} +
    + {% assign status = page.status | upcase %} +
    +

    {{ status }}

    +
    + {% else %} +
    + {% if page.cover %} + {{ page.title }} cover +
    + Cover of {{ page.title }} +
    + {% elsif page.olid %} + {{ page.title }} cover +
    + Cover of {{ page.title }} on the Open Library. +
    + {% elsif page.isbn %} + {{ page.title }} cover +
    + Cover of {{ page.title }} on the Open Library. +
    + {% endif %} +
    +
    +

    + {% if page.start %} Start Date: {{ page.start | date: '%-d %B %Y' }}. {% endif %} + {% if page.end %} End Date: {{ page.end | date: '%-d %B %Y' }}. {% endif %} +

    + {{ content }} + {% endif %} +
    + + {% if site.giscus and page.giscus_comments %} + {% include giscus.liquid %} + {% endif %} +
    + + diff --git a/_layouts/book-shelf.liquid b/_layouts/book-shelf.liquid new file mode 100644 index 00000000..09b0ad70 --- /dev/null +++ b/_layouts/book-shelf.liquid @@ -0,0 +1,49 @@ +--- +layout: page +--- +{{ content }} + +{% if page.collection and page.collection.size > 0 %} + {% assign collection = site[page.collection] %} + {% if collection and collection.size > 0 %} + {% for item in collection reversed %} + {% assign current_year = item.date | date: '%Y' %} + {% if current_year != year %} + {% unless forloop.first %} + + {% endunless %} +

    + {{ current_year }} +

    + + {% endif %} + {% endfor %} + {% endif %} +{% endif %} diff --git a/_layouts/distill.liquid b/_layouts/distill.liquid index 63a0b46a..163ca3dd 100644 --- a/_layouts/distill.liquid +++ b/_layouts/distill.liquid @@ -6,7 +6,6 @@ - {% if page._styles %} {% endif %} -{% assign url_beginning = page.url | slice: 0, 6 %} -

    {{ page.title }}

    123 your address street

    Your City, State 12345

    -news: true # includes a list of news items selected_papers: true # includes a list of papers marked as "selected={true}" social: true # includes social icons at the bottom of the page + +announcements: + enabled: true # includes a list of news items + scrollable: true # adds a vertical scroll bar if there are more than 3 news items + limit: 5 # leave blank to include all the news in the `_news` folder + +latest_posts: + enabled: true + scrollable: true # adds a vertical scroll bar if there are more than 3 new posts items + limit: 3 # leave blank to include all the blog posts --- Write your biography here. Tell the world about yourself. Link to your favorite [subreddit](http://reddit.com). You can put a picture in, too. The code is already in, just name your picture `prof_pic.jpg` and put it in the `img/` folder. diff --git a/_pages/blog.md b/_pages/blog.md index 5664ce1e..4af1fbbe 100644 --- a/_pages/blog.md +++ b/_pages/blog.md @@ -85,7 +85,7 @@ pagination:
    @@ -148,13 +148,13 @@ pagination: {% endif %}