diff --git a/config.toml b/config.toml index 14a07f5..13268e8 100644 --- a/config.toml +++ b/config.toml @@ -69,6 +69,7 @@ last_updated_on = "Última actualización el" show_original_quote = "Mostrar cita original" show_translation = "Mostrar traducción" load_comments = "Cargar comentarios" +see_changes = "Ver cambios" # Quotation marks for multilingual quote shortcode. open_quotation_mark = "«" close_quotation_mark = "»" @@ -113,6 +114,7 @@ last_updated_on = "Última actualizació el" show_original_quote = "Mostra la cita original" show_translation = "Mostra la traducció" load_comments = "Carregar comentaris" +see_changes = "Veure canvis" # Quotation marks for multilingual quote shortcode. open_quotation_mark = "«" close_quotation_mark = "»" @@ -133,6 +135,17 @@ language_name.ca = "Català" language_name.en = "English" language_name.es = "Español" +# Remote repository for your Zola site. +# Only used to link to the commit history of updated posts, right next to the updated date. +# Supports GitHub, GitLab and Gitea. +remote_repository_url = "https://github.com/welpo/tabi" +# Set this to "auto" to try and auto-detect the platform based on the repository URL. +# Accepted values are "github", "gitlab", and "gitea". +# Defaults to "auto". +remote_repository_git_platform = "auto" +# Branch in the repo hosting the Zola site. Defaults to "main". +remote_repository_branch = "main" + # Enable JavaScript theme toggler to allow users to switch between dark/light mode. # Also enables automatic switching based on user's OS-level theme settings. # If disabled, your site will only use the theme specified in the `default_theme` variable. diff --git a/templates/base.html b/templates/base.html index 89cbac3..4fdbf8a 100644 --- a/templates/base.html +++ b/templates/base.html @@ -8,6 +8,7 @@ {% import "macros/format_date.html" as macros_format_date %} {% import "macros/add_comments.html" as macros_add_comments %} {% import "macros/table_of_contents.html" as macros_toc %} +{% import "macros/create_history_url.html" as macros_create_history_url %} diff --git a/templates/macros/create_history_url.html b/templates/macros/create_history_url.html new file mode 100644 index 0000000..2582aaa --- /dev/null +++ b/templates/macros/create_history_url.html @@ -0,0 +1,30 @@ +{% macro create_history_url(relative_path) %} + +{% set repository_url = config.extra.remote_repository_url | trim_end_matches(pat='/') %} +{% set branch = config.extra.remote_repository_branch | default(value="main") %} +{% set git_platform = config.extra.remote_repository_git_platform | default(value="auto") %} + +{# Auto-detect the git platform based on the URL#} +{% if git_platform == "auto" %} + {% if repository_url is containing("github.") %} + {% set git_platform = "github" %} + {% elif repository_url is containing("gitea.") %} + {% set git_platform = "gitea" %} + {% elif repository_url is containing("gitlab.") %} + {% set git_platform = "gitlab" %} + {% endif %} +{% endif %} + +{# Generate the commit history URL based on the git platform #} +{% if git_platform == "github" %} + {{ repository_url ~ '/commits/' ~ branch ~ '/content/' }}{{ relative_path | urlencode }} +{% elif git_platform == "gitea" %} + {{ repository_url ~ '/commits/branch/' ~ branch ~ '/' }}{{ relative_path | urlencode }} +{% elif git_platform == "gitlab" %} + {{ repository_url ~ '/-/commits/' ~ branch ~ '/' }}{{ relative_path | urlencode }} +{% else %} + {# Throw an error with a direct link to report a bug for unsupported or unspecified platforms #} + {{ throw(message="ERROR: Unknown, unsupported, or unspecified git platform. If you're using a custom domain, please specify the 'git_platform' in the config. If you think this is a bug, report it [here](https://github.com/welpo/tabi/issues/new?assignees=&labels=bug&template=bug_report.md&title=Unsupported%20Git%20Platform%20Detected).") }} +{% endif %} + +{% endmacro %} diff --git a/theme.toml b/theme.toml index 0162b1c..affe16e 100644 --- a/theme.toml +++ b/theme.toml @@ -26,6 +26,17 @@ language_name.ca = "Català" language_name.en = "English" language_name.es = "Español" +# Remote repository for your Zola site. +# Only used to link to the commit history of updated posts, right next to the updated date. +# Supports GitHub, GitLab and Gitea. +remote_repository_url = "https://github.com/welpo/tabi" +# Set this to "auto" to try and auto-detect the platform based on the repository URL. +# Accepted values are "github", "gitlab", and "gitea". +# Defaults to "auto". +remote_repository_git_platform = "auto" +# Branch in the repo hosting the Zola site. Defaults to "main". +remote_repository_branch = "main" + # Enable JavaScript theme toggler to allow users to switch between dark/light mode. # Also enables automatic switching based on user's OS-level theme settings. # If disabled, your site will only use the theme specified in the `default_theme` variable.