diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..f121d61 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,5 @@ +# SPDX-FileCopyrightText: 2024 Aminda Suomalainen +# +# SPDX-License-Identifier: CC0-1.0 + +root = true diff --git a/.gitattributes b/.gitattributes index cf8991f..127be44 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,12 +1,12 @@ # SPDX-FileCopyrightText: 2023 Aminda Suomalainen # # SPDX-License-Identifier: CC0-1.0 -* text=auto linguist-detectable eol=lf -*.license text linguist-detectable eol=lf +* text=auto linguist-detectable eol=lf +*.license text linguist-detectable eol=lf # git-lfs doesn't support more complicated than this, CASE SENSITIVE! *.jpg filter=lfs diff=lfs merge=lfs -text *.jpeg filter=lfs diff=lfs merge=lfs -text *.png filter=lfs diff=lfs merge=lfs -text -LICENSES/** text linguist-vendored eol=lf +LICENSES/** text linguist-vendored eol=lf diff --git a/.gitignore b/.gitignore index fff0615..6dd75fe 100644 --- a/.gitignore +++ b/.gitignore @@ -12,3 +12,4 @@ keys.txt.asc vendor/ *_original .cache/** +node_modules/** diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index fa00f45..9370b93 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -5,49 +5,95 @@ # See https://pre-commit.com for more information # See https://pre-commit.ci for more information ci: - skip: [exiftool] + skip: [exiftool, prettier] + # I don't need so many duplicated notifications on the same thing as I keep + # autoupdating manually too. Besides it just creates extra branch I never + # touch. # https://github.com/pre-commit-ci/issues/issues/83 autoupdate_schedule: quarterly -default_language_version: - python: pypy3 +# Use pypy3 for the Python hooks. Except don't, see .gitlab-ci.yml +#default_language_version: +# python: pypy3 repos: - - repo: https://github.com/fsfe/reuse-tool - rev: v3.0.2 - hooks: - - id: reuse - - repo: https://github.com/pre-commit/pre-commit-hooks rev: v4.6.0 hooks: - id: trailing-whitespace args: ["--markdown-linebreak-ext", "md,markdown"] exclude_types: [svg, tsv] - - id: check-added-large-files - - id: check-case-conflict - id: end-of-file-fixer - id: check-yaml + - id: check-added-large-files + - id: check-case-conflict - id: check-executables-have-shebangs + - id: check-json + - id: check-merge-conflict - id: check-shebang-scripts-are-executable - id: destroyed-symlinks - id: detect-private-key - id: fix-byte-order-marker + - id: check-merge-conflict + - id: mixed-line-ending + args: [--fix=auto] + - id: pretty-format-json + args: [--autofix, --no-ensure-ascii] - - repo: https://github.com/rbubley/mirrors-prettier - rev: "v3.2.5" + - repo: https://github.com/pre-commit/sync-pre-commit-deps + rev: v0.0.1 hooks: - - id: prettier - #additional_dependencies: [ - # https://www.npmjs.com/package/prettier - #"prettier@3.1.0", - #] + - id: sync-pre-commit-deps + + - repo: https://github.com/pre-commit-ci/pre-commit-ci-config + rev: v1.6.1 + hooks: + - id: check-pre-commit-ci-config + + - repo: https://github.com/thlorenz/doctoc + rev: v2.2.0 + hooks: + - id: doctoc + args: + [ + --update-only, + --title, + 'Automaattinen sisällysluettelo / Automatically generated Table of Contents', + ] + + - repo: https://github.com/python-jsonschema/check-jsonschema + rev: 0.28.5 + hooks: + - id: check-dependabot + - id: check-github-workflows + - id: check-gitlab-ci + + - repo: https://github.com/fsfe/reuse-tool + rev: v3.1.0a1 + hooks: + - id: reuse + exclude: ^.cache\/.*$ - # Fedora: perl-Image-ExifTool - repo: local hooks: + - id: prettier + name: prettier + entry: pnpm exec prettier --cache --ignore-unknown --write + language: system + # Better handled by pretty-format-json from pre-commit-hooks. + # Remember to have *.json in .prettierignore! + exclude_types: [json] + + # Fedora: perl-Image-ExifTool - id: exiftool name: Remove all EXIF metadata using exiftool entry: exiftool -all= language: system types: [image] + + - repo: https://github.com/editorconfig-checker/editorconfig-checker.python + rev: "2.7.3" + hooks: + - id: editorconfig-checker + alias: ec + args: [-disable-max-line-length] diff --git a/.prettierignore b/.prettierignore new file mode 100644 index 0000000..a0ae851 --- /dev/null +++ b/.prettierignore @@ -0,0 +1,9 @@ +# SPDX-FileCopyrightText: 2024 Aminda Suomalainen +# +# SPDX-License-Identifier: CC0-1.0 + +# Prettier cannot handle Jekyll variables? +_includes +_layouts +blog/*.xml +*.json diff --git a/.prettierrc b/.prettierrc new file mode 100644 index 0000000..c924e5f --- /dev/null +++ b/.prettierrc @@ -0,0 +1,4 @@ +{ + "plugins": ["@prettier/plugin-xml", "prettier-plugin-sh"], + "overrides": [{ "files": ".prettierrc", "options": { "parser": "json" } }] +} diff --git a/.prettierrc.license b/.prettierrc.license new file mode 100644 index 0000000..743f8b5 --- /dev/null +++ b/.prettierrc.license @@ -0,0 +1,3 @@ +SPDX-FileCopyrightText: 2024 Aminda Suomalainen + +SPDX-License-Identifier: CC0-1.0 diff --git a/LICENSES/.editorconfig b/LICENSES/.editorconfig new file mode 100644 index 0000000..78b36ca --- /dev/null +++ b/LICENSES/.editorconfig @@ -0,0 +1 @@ +root = true diff --git a/package.json b/package.json new file mode 100644 index 0000000..2f3724c --- /dev/null +++ b/package.json @@ -0,0 +1,7 @@ +{ + "devDependencies": { + "@prettier/plugin-xml": "3.4.1", + "prettier": "3.3.2", + "prettier-plugin-sh": "0.14.0" + } +} diff --git a/package.json.license b/package.json.license new file mode 100644 index 0000000..743f8b5 --- /dev/null +++ b/package.json.license @@ -0,0 +1,3 @@ +SPDX-FileCopyrightText: 2024 Aminda Suomalainen + +SPDX-License-Identifier: CC0-1.0