summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.editorconfig3
-rw-r--r--.pre-commit-config.yaml8
-rw-r--r--misc/utility/svgo.config.mjs20
3 files changed, 31 insertions, 0 deletions
diff --git a/.editorconfig b/.editorconfig
index 92ee947a82..523ff71307 100644
--- a/.editorconfig
+++ b/.editorconfig
@@ -21,3 +21,6 @@ indent_size = 4
[*.{yml,yaml}]
indent_style = space
indent_size = 2
+
+[*.svg]
+insert_final_newline = false
diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index cf10acfa79..46f29d0d5f 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -118,6 +118,14 @@ repos:
pass_filenames: false
additional_dependencies: ['jsdoc@^4.0.3']
+ - id: svgo
+ name: svgo
+ language: node
+ entry: svgo
+ files: \.svg$
+ args: [--quiet, --config, misc/utility/svgo.config.mjs]
+ additional_dependencies: ["svgo@3.3.2"]
+
- id: copyright-headers
name: copyright-headers
language: python
diff --git a/misc/utility/svgo.config.mjs b/misc/utility/svgo.config.mjs
new file mode 100644
index 0000000000..d4c14f007c
--- /dev/null
+++ b/misc/utility/svgo.config.mjs
@@ -0,0 +1,20 @@
+export default {
+ multipass: true,
+ precision: 2,
+ plugins: [
+ {
+ name: "preset-default",
+ params: {
+ overrides: {
+ removeHiddenElems: false,
+ convertPathData: false,
+ },
+ },
+ },
+ "convertStyleToAttrs",
+ "removeScriptElement",
+ "removeStyleElement",
+ "reusePaths",
+ "sortAttrs",
+ ],
+};