feat(aklive2d): update content processor to support multiple custom functions and config template

This commit is contained in:
Haoyu Xu
2023-01-02 05:30:06 -05:00
parent 74507e9321
commit 13a18cc892
25 changed files with 216 additions and 291 deletions

View File

@@ -9,6 +9,7 @@ pyyaml = "*"
pyyaml-include = "*"
[dev-packages]
autopep8 = "*"
[requires]
python_version = "3.10"

155
Pipfile.lock generated
View File

@@ -1,7 +1,7 @@
{
"_meta": {
"hash": {
"sha256": "cd90db8067c4df6bfd64712938ef22a908a9d828714cc402b994296607abf7fc"
"sha256": "b630762e087910062c726a8b7b09ae028f57619798e709018d2c23e500760325"
},
"pipfile-spec": 6,
"requires": {
@@ -18,70 +18,72 @@
"default": {
"pillow": {
"hashes": [
"sha256:03150abd92771742d4a8cd6f2fa6246d847dcd2e332a18d0c15cc75bf6703040",
"sha256:073adb2ae23431d3b9bcbcff3fe698b62ed47211d0716b067385538a1b0f28b8",
"sha256:0b07fffc13f474264c336298d1b4ce01d9c5a011415b79d4ee5527bb69ae6f65",
"sha256:0b7257127d646ff8676ec8a15520013a698d1fdc48bc2a79ba4e53df792526f2",
"sha256:12ce4932caf2ddf3e41d17fc9c02d67126935a44b86df6a206cf0d7161548627",
"sha256:15c42fb9dea42465dfd902fb0ecf584b8848ceb28b41ee2b58f866411be33f07",
"sha256:18498994b29e1cf86d505edcb7edbe814d133d2232d256db8c7a8ceb34d18cef",
"sha256:1c7c8ae3864846fc95f4611c78129301e203aaa2af813b703c55d10cc1628535",
"sha256:22b012ea2d065fd163ca096f4e37e47cd8b59cf4b0fd47bfca6abb93df70b34c",
"sha256:276a5ca930c913f714e372b2591a22c4bd3b81a418c0f6635ba832daec1cbcfc",
"sha256:2e0918e03aa0c72ea56edbb00d4d664294815aa11291a11504a377ea018330d3",
"sha256:3033fbe1feb1b59394615a1cafaee85e49d01b51d54de0cbf6aa8e64182518a1",
"sha256:3168434d303babf495d4ba58fc22d6604f6e2afb97adc6a423e917dab828939c",
"sha256:32a44128c4bdca7f31de5be641187367fe2a450ad83b833ef78910397db491aa",
"sha256:3dd6caf940756101205dffc5367babf288a30043d35f80936f9bfb37f8355b32",
"sha256:40e1ce476a7804b0fb74bcfa80b0a2206ea6a882938eaba917f7a0f004b42502",
"sha256:41e0051336807468be450d52b8edd12ac60bebaa97fe10c8b660f116e50b30e4",
"sha256:4390e9ce199fc1951fcfa65795f239a8a4944117b5935a9317fb320e7767b40f",
"sha256:502526a2cbfa431d9fc2a079bdd9061a2397b842bb6bc4239bb176da00993812",
"sha256:51e0e543a33ed92db9f5ef69a0356e0b1a7a6b6a71b80df99f1d181ae5875636",
"sha256:57751894f6618fd4308ed8e0c36c333e2f5469744c34729a27532b3db106ee20",
"sha256:5d77adcd56a42d00cc1be30843d3426aa4e660cab4a61021dc84467123f7a00c",
"sha256:655a83b0058ba47c7c52e4e2df5ecf484c1b0b0349805896dd350cbc416bdd91",
"sha256:68943d632f1f9e3dce98908e873b3a090f6cba1cbb1b892a9e8d97c938871fbe",
"sha256:6c738585d7a9961d8c2821a1eb3dcb978d14e238be3d70f0a706f7fa9316946b",
"sha256:73bd195e43f3fadecfc50c682f5055ec32ee2c933243cafbfdec69ab1aa87cad",
"sha256:772a91fc0e03eaf922c63badeca75e91baa80fe2f5f87bdaed4280662aad25c9",
"sha256:77ec3e7be99629898c9a6d24a09de089fa5356ee408cdffffe62d67bb75fdd72",
"sha256:7db8b751ad307d7cf238f02101e8e36a128a6cb199326e867d1398067381bff4",
"sha256:801ec82e4188e935c7f5e22e006d01611d6b41661bba9fe45b60e7ac1a8f84de",
"sha256:82409ffe29d70fd733ff3c1025a602abb3e67405d41b9403b00b01debc4c9a29",
"sha256:828989c45c245518065a110434246c44a56a8b2b2f6347d1409c787e6e4651ee",
"sha256:829f97c8e258593b9daa80638aee3789b7df9da5cf1336035016d76f03b8860c",
"sha256:871b72c3643e516db4ecf20efe735deb27fe30ca17800e661d769faab45a18d7",
"sha256:89dca0ce00a2b49024df6325925555d406b14aa3efc2f752dbb5940c52c56b11",
"sha256:90fb88843d3902fe7c9586d439d1e8c05258f41da473952aa8b328d8b907498c",
"sha256:97aabc5c50312afa5e0a2b07c17d4ac5e865b250986f8afe2b02d772567a380c",
"sha256:9aaa107275d8527e9d6e7670b64aabaaa36e5b6bd71a1015ddd21da0d4e06448",
"sha256:9f47eabcd2ded7698106b05c2c338672d16a6f2a485e74481f524e2a23c2794b",
"sha256:a0a06a052c5f37b4ed81c613a455a81f9a3a69429b4fd7bb913c3fa98abefc20",
"sha256:ab388aaa3f6ce52ac1cb8e122c4bd46657c15905904b3120a6248b5b8b0bc228",
"sha256:ad58d27a5b0262c0c19b47d54c5802db9b34d38bbf886665b626aff83c74bacd",
"sha256:ae5331c23ce118c53b172fa64a4c037eb83c9165aba3a7ba9ddd3ec9fa64a699",
"sha256:af0372acb5d3598f36ec0914deed2a63f6bcdb7b606da04dc19a88d31bf0c05b",
"sha256:afa4107d1b306cdf8953edde0534562607fe8811b6c4d9a486298ad31de733b2",
"sha256:b03ae6f1a1878233ac620c98f3459f79fd77c7e3c2b20d460284e1fb370557d4",
"sha256:b0915e734b33a474d76c28e07292f196cdf2a590a0d25bcc06e64e545f2d146c",
"sha256:b4012d06c846dc2b80651b120e2cdd787b013deb39c09f407727ba90015c684f",
"sha256:b472b5ea442148d1c3e2209f20f1e0bb0eb556538690fa70b5e1f79fa0ba8dc2",
"sha256:b59430236b8e58840a0dfb4099a0e8717ffb779c952426a69ae435ca1f57210c",
"sha256:b90f7616ea170e92820775ed47e136208e04c967271c9ef615b6fbd08d9af0e3",
"sha256:b9a65733d103311331875c1dca05cb4606997fd33d6acfed695b1232ba1df193",
"sha256:bac18ab8d2d1e6b4ce25e3424f709aceef668347db8637c2296bcf41acb7cf48",
"sha256:bca31dd6014cb8b0b2db1e46081b0ca7d936f856da3b39744aef499db5d84d02",
"sha256:be55f8457cd1eac957af0c3f5ece7bc3f033f89b114ef30f710882717670b2a8",
"sha256:c7025dce65566eb6e89f56c9509d4f628fddcedb131d9465cacd3d8bac337e7e",
"sha256:c935a22a557a560108d780f9a0fc426dd7459940dc54faa49d83249c8d3e760f",
"sha256:dbb8e7f2abee51cef77673be97760abff1674ed32847ce04b4af90f610144c7b",
"sha256:e6ea6b856a74d560d9326c0f5895ef8050126acfdc7ca08ad703eb0081e82b74",
"sha256:ebf2029c1f464c59b8bdbe5143c79fa2045a581ac53679733d3a91d400ff9efb",
"sha256:f1ff2ee69f10f13a9596480335f406dd1f70c3650349e2be67ca3139280cade0"
"sha256:0845adc64fe9886db00f5ab68c4a8cd933ab749a87747555cec1c95acea64b0b",
"sha256:0884ba7b515163a1a05440a138adeb722b8a6ae2c2b33aea93ea3118dd3a899e",
"sha256:09b89ddc95c248ee788328528e6a2996e09eaccddeeb82a5356e92645733be35",
"sha256:0dd4c681b82214b36273c18ca7ee87065a50e013112eea7d78c7a1b89a739153",
"sha256:0e51f608da093e5d9038c592b5b575cadc12fd748af1479b5e858045fff955a9",
"sha256:0f3269304c1a7ce82f1759c12ce731ef9b6e95b6df829dccd9fe42912cc48569",
"sha256:16a8df99701f9095bea8a6c4b3197da105df6f74e6176c5b410bc2df2fd29a57",
"sha256:19005a8e58b7c1796bc0167862b1f54a64d3b44ee5d48152b06bb861458bc0f8",
"sha256:28676836c7796805914b76b1837a40f76827ee0d5398f72f7dcc634bae7c6264",
"sha256:2968c58feca624bb6c8502f9564dd187d0e1389964898f5e9e1fbc8533169157",
"sha256:3fa1284762aacca6dc97474ee9c16f83990b8eeb6697f2ba17140d54b453e133",
"sha256:451f10ef963918e65b8869e17d67db5e2f4ab40e716ee6ce7129b0cde2876eab",
"sha256:46c259e87199041583658457372a183636ae8cd56dbf3f0755e0f376a7f9d0e6",
"sha256:46f39cab8bbf4a384ba7cb0bc8bae7b7062b6a11cfac1ca4bc144dea90d4a9f5",
"sha256:519e14e2c49fcf7616d6d2cfc5c70adae95682ae20f0395e9280db85e8d6c4df",
"sha256:53dcb50fbdc3fb2c55431a9b30caeb2f7027fcd2aeb501459464f0214200a503",
"sha256:54614444887e0d3043557d9dbc697dbb16cfb5a35d672b7a0fcc1ed0cf1c600b",
"sha256:575d8912dca808edd9acd6f7795199332696d3469665ef26163cd090fa1f8bfa",
"sha256:5dd5a9c3091a0f414a963d427f920368e2b6a4c2f7527fdd82cde8ef0bc7a327",
"sha256:5f532a2ad4d174eb73494e7397988e22bf427f91acc8e6ebf5bb10597b49c493",
"sha256:60e7da3a3ad1812c128750fc1bc14a7ceeb8d29f77e0a2356a8fb2aa8925287d",
"sha256:653d7fb2df65efefbcbf81ef5fe5e5be931f1ee4332c2893ca638c9b11a409c4",
"sha256:6663977496d616b618b6cfa43ec86e479ee62b942e1da76a2c3daa1c75933ef4",
"sha256:6abfb51a82e919e3933eb137e17c4ae9c0475a25508ea88993bb59faf82f3b35",
"sha256:6c6b1389ed66cdd174d040105123a5a1bc91d0aa7059c7261d20e583b6d8cbd2",
"sha256:6d9dfb9959a3b0039ee06c1a1a90dc23bac3b430842dcb97908ddde05870601c",
"sha256:765cb54c0b8724a7c12c55146ae4647e0274a839fb6de7bcba841e04298e1011",
"sha256:7a21222644ab69ddd9967cfe6f2bb420b460dae4289c9d40ff9a4896e7c35c9a",
"sha256:7ac7594397698f77bce84382929747130765f66406dc2cd8b4ab4da68ade4c6e",
"sha256:7cfc287da09f9d2a7ec146ee4d72d6ea1342e770d975e49a8621bf54eaa8f30f",
"sha256:847b114580c5cc9ebaf216dd8c8dbc6b00a3b7ab0131e173d7120e6deade1f57",
"sha256:8f127e7b028900421cad64f51f75c051b628db17fb00e099eb148761eed598c9",
"sha256:94cdff45173b1919350601f82d61365e792895e3c3a3443cf99819e6fbf717a5",
"sha256:9a3049a10261d7f2b6514d35bbb7a4dfc3ece4c4de14ef5876c4b7a23a0e566d",
"sha256:a1c2d7780448eb93fbcc3789bf3916aa5720d942e37945f4056680317f1cd23e",
"sha256:a2e0f87144fcbbe54297cae708c5e7f9da21a4646523456b00cc956bd4c65815",
"sha256:a4dfdae195335abb4e89cc9762b2edc524f3c6e80d647a9a81bf81e17e3fb6f0",
"sha256:a96e6e23f2b79433390273eaf8cc94fec9c6370842e577ab10dabdcc7ea0a66b",
"sha256:aabdab8ec1e7ca7f1434d042bf8b1e92056245fb179790dc97ed040361f16bfd",
"sha256:b222090c455d6d1a64e6b7bb5f4035c4dff479e22455c9eaa1bdd4c75b52c80c",
"sha256:b52ff4f4e002f828ea6483faf4c4e8deea8d743cf801b74910243c58acc6eda3",
"sha256:b9b752ab91e78234941e44abdecc07f1f0d8f51fb62941d32995b8161f68cfe5",
"sha256:ba6612b6548220ff5e9df85261bddc811a057b0b465a1226b39bfb8550616aee",
"sha256:bd752c5ff1b4a870b7661234694f24b1d2b9076b8bf337321a814c612665f343",
"sha256:c3c4ed2ff6760e98d262e0cc9c9a7f7b8a9f61aa4d47c58835cdaf7b0b8811bb",
"sha256:c5c1362c14aee73f50143d74389b2c158707b4abce2cb055b7ad37ce60738d47",
"sha256:cb362e3b0976dc994857391b776ddaa8c13c28a16f80ac6522c23d5257156bed",
"sha256:d197df5489004db87d90b918033edbeee0bd6df3848a204bca3ff0a903bef837",
"sha256:d3b56206244dc8711f7e8b7d6cad4663917cd5b2d950799425076681e8766286",
"sha256:d5b2f8a31bd43e0f18172d8ac82347c8f37ef3e0b414431157718aa234991b28",
"sha256:d7081c084ceb58278dd3cf81f836bc818978c0ccc770cbbb202125ddabec6628",
"sha256:db74f5562c09953b2c5f8ec4b7dfd3f5421f31811e97d1dbc0a7c93d6e3a24df",
"sha256:df41112ccce5d47770a0c13651479fbcd8793f34232a2dd9faeccb75eb5d0d0d",
"sha256:e1339790c083c5a4de48f688b4841f18df839eb3c9584a770cbd818b33e26d5d",
"sha256:e621b0246192d3b9cb1dc62c78cfa4c6f6d2ddc0ec207d43c0dedecb914f152a",
"sha256:e8c5cf126889a4de385c02a2c3d3aba4b00f70234bfddae82a5eaa3ee6d5e3e6",
"sha256:e9d7747847c53a16a729b6ee5e737cf170f7a16611c143d95aa60a109a59c336",
"sha256:eaef5d2de3c7e9b21f1e762f289d17b726c2239a42b11e25446abf82b26ac132",
"sha256:ed3e4b4e1e6de75fdc16d3259098de7c6571b1a6cc863b1a49e7d3d53e036070",
"sha256:ef21af928e807f10bf4141cad4746eee692a0dd3ff56cfb25fce076ec3cc8abe",
"sha256:f09598b416ba39a8f489c124447b007fe865f786a89dbfa48bb5cf395693132a",
"sha256:f6e78171be3fb7941f9910ea15b4b14ec27725865a73c15277bc39f5ca4f8391",
"sha256:f715c32e774a60a337b2bb8ad9839b4abf75b267a0f18806f6f4f5f1688c4b5a"
],
"index": "pypi",
"version": "==9.3.0"
"version": "==9.4.0"
},
"pyyaml": {
"hashes": [
@@ -138,5 +140,30 @@
"version": "==1.3"
}
},
"develop": {}
"develop": {
"autopep8": {
"hashes": [
"sha256:be5bc98c33515b67475420b7b1feafc8d32c1a69862498eda4983b45bffd2687",
"sha256:d27a8929d8dcd21c0f4b3859d2d07c6c25273727b98afc984c039df0f0d86566"
],
"index": "pypi",
"version": "==2.0.1"
},
"pycodestyle": {
"hashes": [
"sha256:347187bdb476329d98f695c213d7295a846d1152ff4fe9bacb8a9590b8ee7053",
"sha256:8a4eaf0d0495c7395bdab3589ac2db602797d76207242c17d470186815706610"
],
"markers": "python_version >= '3.6'",
"version": "==2.10.0"
},
"tomli": {
"hashes": [
"sha256:939de3e7a6161af0c887ef91b7d41a53e7c5a1ca976325f429cb46ea9bc30ecc",
"sha256:de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f"
],
"markers": "python_version < '3.11'",
"version": "==2.0.1"
}
}
}

View File

@@ -0,0 +1,9 @@
title: ${var:index.html->title}
description: '${func:split("project.json->title" ," - ")[0]} Live 2D\n${func:split("project.json->title" ," - ")[1]} Live 2D\nThe model is extracted from game with Spine support.\n模型来自游戏内提取支持Spine\nPlease set your FPS target in Wallpaper Engine > Settings > Performance > FPS\n请在 Wallpaper Engine > 设置 > 性能 > FPS 下设置FPS\n\nLive preview on: https://arknights.halyul.dev/${var:link}\nGithub: https://github.com/Halyul/aklive2d'
ui_logo_opacity: ${var:_operator_settings.js->opacity}
ui_logo_ratio: 61.8
ui_operator_logo: 'true'
ui_position_padding_bottom: ${var:_operator_settings.js->viewport_bottom}
ui_position_padding_left: ${var:_operator_settings.js->viewport_left}
ui_position_padding_right: ${var:_operator_settings.js->viewport_right}
ui_position_padding_top: ${var:_operator_settings.js->viewport_top}

View File

@@ -8,19 +8,13 @@ _operator_settings.js:
viewport_left: 0
viewport_right: 0
viewport_top: 1
invert_filter: false
index.html:
fallback_name: char_1013_chen2_2
id: char_1013_chen2
operator_logo: logo_rhodes_override
title: 'Arknights: Ch''en/Chen the Holungday - 明日方舟:假日威龙陈'
version: ${func:get_version()}
project.json:
description: 'Arknights: Ch''en/Chen the Holungday Live 2D\n明日方舟假日威龙陈 Live 2D\nThe model is extracted from game with Spine support.\n模型来自游戏内提取支持Spine\nPlease set your FPS target in Wallpaper Engine > Settings > Performance > FPS\n请在 Wallpaper Engine > 设置 > 性能 > FPS 下设置FPS\n\nLive preview on: https://arknights.halyul.dev/chen\nGithub: https://github.com/Halyul/aklive2d'
title: ${var:index.html->title}
ui_logo_opacity: ${var:_operator_settings.js->opacity}
ui_logo_ratio: 61.8
ui_operator_logo: 'true'
ui_position_padding_bottom: ${var:_operator_settings.js->viewport_bottom}
ui_position_padding_left: ${var:_operator_settings.js->viewport_left}
ui_position_padding_right: ${var:_operator_settings.js->viewport_right}
ui_position_padding_top: ${var:_operator_settings.js->viewport_top}
project.json: !include config/_project.json.yaml
link: chen
type: operator

View File

@@ -8,19 +8,13 @@ _operator_settings.js:
viewport_left: 0
viewport_right: 0
viewport_top: 0
invert_filter: true
index.html:
fallback_name: char_2015_dusk_2
id: char_2015_dusk
operator_logo: logo_sui
title: 'Arknights: Dusk - 明日方舟:夕'
version: ${func:get_version()}
project.json:
description: 'Arknights: Dusk Live 2D\n明日方舟夕 Live 2D\nThe model is extracted from game with Spine support.\n模型来自游戏内提取支持Spine\nPlease set your FPS target in Wallpaper Engine > Settings > Performance > FPS\n请在 Wallpaper Engine > 设置 > 性能 > FPS 下设置FPS\n\nLive preview on: https://arknights.halyul.dev/dusk\nGithub: https://github.com/Halyul/aklive2d'
title: ${var:index.html->title}
ui_logo_opacity: ${var:_operator_settings.js->opacity}
ui_logo_ratio: 61.8
ui_operator_logo: 'true'
ui_position_padding_bottom: ${var:_operator_settings.js->viewport_bottom}
ui_position_padding_left: ${var:_operator_settings.js->viewport_left}
ui_position_padding_right: ${var:_operator_settings.js->viewport_right}
ui_position_padding_top: ${var:_operator_settings.js->viewport_top}
project.json: !include config/_project.json.yaml
link: dusk
type: operator

View File

@@ -14,13 +14,6 @@ index.html:
operator_logo: logo_sui
title: 'Arknights: Everything is a Miracle / Dusk - 明日方舟:染尘烟·夕'
version: ${func:get_version()}
project.json:
description: 'Arknights: Everything is a Miracle / Dusk Live 2D\n明日方舟染尘烟·夕 Live 2D\nThe model is extracted from game with Spine support.\n模型来自游戏内提取支持Spine\nPlease set your FPS target in Wallpaper Engine > Settings > Performance > FPS\n请在 Wallpaper Engine > 设置 > 性能 > FPS 下设置FPS\n\nLive preview on: https://arknights.halyul.dev/dusk_everything_is_a_miracle\nGithub: https://github.com/Halyul/aklive2d'
title: ${var:index.html->title}
ui_logo_opacity: ${var:_operator_settings.js->opacity}
ui_logo_ratio: 61.8
ui_operator_logo: 'true'
ui_position_padding_bottom: ${var:_operator_settings.js->viewport_bottom}
ui_position_padding_left: ${var:_operator_settings.js->viewport_left}
ui_position_padding_right: ${var:_operator_settings.js->viewport_right}
ui_position_padding_top: ${var:_operator_settings.js->viewport_top}
project.json: !include config/_project.json.yaml
link: dusk_everything_is_a_miracle
type: skin

View File

@@ -8,19 +8,13 @@ _operator_settings.js:
viewport_left: 0
viewport_right: 0
viewport_top: 0
invert_filter: false
index.html:
fallback_name: char_1026_gvial2_2
id: char_1026_gvial2_2
operator_logo: logo_rhodes_override
title: 'Arknights: Gavial the Invincible - 明日方舟:百练嘉维尔'
version: ${func:get_version()}
project.json:
description: 'Arknights: Gavial the Invincible Live 2D\n明日方舟百练嘉维尔 Live 2D\nThe model is extracted from game with Spine support.\n模型来自游戏内提取支持Spine\nPlease set your FPS target in Wallpaper Engine > Settings > Performance > FPS\n请在 Wallpaper Engine > 设置 > 性能 > FPS 下设置FPS\n\nLive preview on: https://arknights.halyul.dev/gavial\nGithub: https://github.com/Halyul/aklive2d'
title: ${var:index.html->title}
ui_logo_opacity: ${var:_operator_settings.js->opacity}
ui_logo_ratio: 61.8
ui_operator_logo: 'true'
ui_position_padding_bottom: ${var:_operator_settings.js->viewport_bottom}
ui_position_padding_left: ${var:_operator_settings.js->viewport_left}
ui_position_padding_right: ${var:_operator_settings.js->viewport_right}
ui_position_padding_top: ${var:_operator_settings.js->viewport_top}
project.json: !include config/_project.json.yaml
link: gavial
type: operator

View File

@@ -8,19 +8,13 @@ _operator_settings.js:
viewport_left: 0
viewport_right: 0
viewport_top: 0
invert_filter: true
index.html:
fallback_name: char_322_lmlee_witch%233
id: char_322_lmlee_witch%233
operator_logo: logo_lee
title: 'Arknights: Trust Your Eyes / Lee - 明日方舟:手到牌来·老鲤'
version: ${func:get_version()}
project.json:
description: 'Arknights: Trust Your Eyes / Lee Live 2D\n明日方舟手到牌来·老鲤 Live 2D\nThe model is extracted from game with Spine support.\n模型来自游戏内提取支持Spine\nPlease set your FPS target in Wallpaper Engine > Settings > Performance > FPS\n请在 Wallpaper Engine > 设置 > 性能 > FPS 下设置FPS\n\nLive preview on: https://arknights.halyul.dev/lee_trust_your_eyes\nGithub: https://github.com/Halyul/aklive2d'
title: ${var:index.html->title}
ui_logo_opacity: ${var:_operator_settings.js->opacity}
ui_logo_ratio: 61.8
ui_operator_logo: 'true'
ui_position_padding_bottom: ${var:_operator_settings.js->viewport_bottom}
ui_position_padding_left: ${var:_operator_settings.js->viewport_left}
ui_position_padding_right: ${var:_operator_settings.js->viewport_right}
ui_position_padding_top: ${var:_operator_settings.js->viewport_top}
project.json: !include config/_project.json.yaml
link: lee_trust_your_eyes
type: skin

View File

@@ -8,19 +8,13 @@ _operator_settings.js:
viewport_left: 0
viewport_right: 0
viewport_top: 0
invert_filter: true
index.html:
fallback_name: char_2023_ling_2
id: char_2023_ling
operator_logo: logo_sui
title: 'Arknights: Ling - 明日方舟:令'
version: ${func:get_version()}
project.json:
description: 'Arknights: Ling Live 2D\n明日方舟令 Live 2D\nThe model is extracted from game with Spine support.\n模型来自游戏内提取支持Spine\nPlease set your FPS target in Wallpaper Engine > Settings > Performance > FPS\n请在 Wallpaper Engine > 设置 > 性能 > FPS 下设置FPS\n\nLive preview on: https://arknights.halyul.dev/ling\nGithub: https://github.com/Halyul/aklive2d'
title: ${var:index.html->title}
ui_logo_opacity: ${var:_operator_settings.js->opacity}
ui_logo_ratio: 61.8
ui_operator_logo: 'true'
ui_position_padding_bottom: ${var:_operator_settings.js->viewport_bottom}
ui_position_padding_left: ${var:_operator_settings.js->viewport_left}
ui_position_padding_right: ${var:_operator_settings.js->viewport_right}
ui_position_padding_top: ${var:_operator_settings.js->viewport_top}
project.json: !include config/_project.json.yaml
link: ling
type: operator

View File

@@ -8,19 +8,13 @@ _operator_settings.js:
viewport_left: 2
viewport_right: 3
viewport_top: 10
invert_filter: true
index.html:
fallback_name: char_1014_nearl2_2
id: char_1014_nearl2
operator_logo: logo_kazimierz
title: 'Arknights: Nearl the Radiant Knight - 明日方舟:耀骑士临光'
version: ${func:get_version()}
project.json:
description: 'Arknights: Nearl the Radiant Knight Live 2D\n明日方舟耀骑士临光 Live 2D\nThe model is extracted from game with Spine support.\n模型来自游戏内提取支持Spine\nPlease set your FPS target in Wallpaper Engine > Settings > Performance > FPS\n请在 Wallpaper Engine > 设置 > 性能 > FPS 下设置FPS\n\nLive preview on: https://arknights.halyul.dev/nearl\nGithub: https://github.com/Halyul/aklive2d'
title: ${var:index.html->title}
ui_logo_opacity: ${var:_operator_settings.js->opacity}
ui_logo_ratio: 61.8
ui_operator_logo: 'true'
ui_position_padding_bottom: ${var:_operator_settings.js->viewport_bottom}
ui_position_padding_left: ${var:_operator_settings.js->viewport_left}
ui_position_padding_right: ${var:_operator_settings.js->viewport_right}
ui_position_padding_top: ${var:_operator_settings.js->viewport_top}
project.json: !include config/_project.json.yaml
link: nearl
type: operator

View File

@@ -8,19 +8,13 @@ _operator_settings.js:
viewport_left: 0
viewport_right: 0
viewport_top: 0
invert_filter: true
index.html:
fallback_name: char_1014_nearl2_epoque%2317
id: char_1014_nearl2%2317
operator_logo: logo_kazimierz
title: 'Arknights: Relight / Nearl - 明日方舟:复现荣光·耀骑士临光'
version: ${func:get_version()}
project.json:
description: 'Arknights: Relight / Nearl Live 2D\n明日方舟复现荣光·耀骑士临光 Live 2D\nThe model is extracted from game with Spine support.\n模型来自游戏内提取支持Spine\nPlease set your FPS target in Wallpaper Engine > Settings > Performance > FPS\n请在 Wallpaper Engine > 设置 > 性能 > FPS 下设置FPS\n\nLive preview on: https://arknights.halyul.dev/nearl_relight\nGithub: https://github.com/Halyul/aklive2d'
title: ${var:index.html->title}
ui_logo_opacity: ${var:_operator_settings.js->opacity}
ui_logo_ratio: 61.8
ui_operator_logo: 'true'
ui_position_padding_bottom: ${var:_operator_settings.js->viewport_bottom}
ui_position_padding_left: ${var:_operator_settings.js->viewport_left}
ui_position_padding_right: ${var:_operator_settings.js->viewport_right}
ui_position_padding_top: ${var:_operator_settings.js->viewport_top}
project.json: !include config/_project.json.yaml
link: nearl_relight
type: skin

View File

@@ -8,19 +8,13 @@ _operator_settings.js:
viewport_left: 2
viewport_right: 2
viewport_top: 3
invert_filter: true
index.html:
fallback_name: char_2014_nian_2
id: char_2014_nian
operator_logo: logo_sui
title: 'Arknights: Nian - 明日方舟:年'
version: ${func:get_version()}
project.json:
description: 'Arknights: Nian Live 2D\n明日方舟年 Live 2D\nThe model is extracted from game with Spine support.\n模型来自游戏内提取支持Spine\nPlease set your FPS target in Wallpaper Engine > Settings > Performance > FPS\n请在 Wallpaper Engine > 设置 > 性能 > FPS 下设置FPS\n\nLive preview on: https://arknights.halyul.dev/nian\nGithub: https://github.com/Halyul/aklive2d'
title: ${var:index.html->title}
ui_logo_opacity: ${var:_operator_settings.js->opacity}
ui_logo_ratio: 61.8
ui_operator_logo: 'true'
ui_position_padding_bottom: ${var:_operator_settings.js->viewport_bottom}
ui_position_padding_left: ${var:_operator_settings.js->viewport_left}
ui_position_padding_right: ${var:_operator_settings.js->viewport_right}
ui_position_padding_top: ${var:_operator_settings.js->viewport_top}
project.json: !include config/_project.json.yaml
link: nian
type: operator

View File

@@ -8,19 +8,13 @@ _operator_settings.js:
viewport_left: 0
viewport_right: 0
viewport_top: 0
invert_filter: true
index.html:
fallback_name: char_2014_nian_nian%234
id: char_2014_nian_nian%234
operator_logo: logo_sui
title: 'Arknights: Unfettered Freedom / Nian - 明日方舟:乐逍遥·年'
version: ${func:get_version()}
project.json:
description: 'Arknights: Unfettered Freedom / Nian Live 2D\n明日方舟乐逍遥·年 Live 2D\nThe model is extracted from game with Spine support.\n模型来自游戏内提取支持Spine\nPlease set your FPS target in Wallpaper Engine > Settings > Performance > FPS\n请在 Wallpaper Engine > 设置 > 性能 > FPS 下设置FPS\n\nLive preview on: https://arknights.halyul.dev/nian_unfettered_freedom\nGithub: https://github.com/Halyul/aklive2d'
title: ${var:index.html->title}
ui_logo_opacity: ${var:_operator_settings.js->opacity}
ui_logo_ratio: 61.8
ui_operator_logo: 'true'
ui_position_padding_bottom: ${var:_operator_settings.js->viewport_bottom}
ui_position_padding_left: ${var:_operator_settings.js->viewport_left}
ui_position_padding_right: ${var:_operator_settings.js->viewport_right}
ui_position_padding_top: ${var:_operator_settings.js->viewport_top}
project.json: !include config/_project.json.yaml
link: nian_unfettered_freedom
type: skin

View File

@@ -8,19 +8,13 @@ _operator_settings.js:
viewport_left: 0
viewport_right: 0
viewport_top: 0
invert_filter: true
index.html:
fallback_name: char_472_pasngr_epoque%2317
id: char_472_pasngr%2317
operator_logo: logo_sargon
title: 'Arknights: Dream in a Moment / Passager - 明日方舟:今昔须臾之梦 · 异客'
version: ${func:get_version()}
project.json:
description: 'Arknights: Dream in a Moment / Passager Live 2D\n明日方舟今昔须臾之梦 · 异客 Live 2D\nThe model is extracted from game with Spine support.\n模型来自游戏内提取支持Spine\nPlease set your FPS target in Wallpaper Engine > Settings > Performance > FPS\n请在 Wallpaper Engine > 设置 > 性能 > FPS 下设置FPS\n\nLive preview on: https://arknights.halyul.dev/passager_dream_in_a_moment\nGithub: https://github.com/Halyul/aklive2d'
title: ${var:index.html->title}
ui_logo_opacity: ${var:_operator_settings.js->opacity}
ui_logo_ratio: 61.8
ui_operator_logo: 'true'
ui_position_padding_bottom: ${var:_operator_settings.js->viewport_bottom}
ui_position_padding_left: ${var:_operator_settings.js->viewport_left}
ui_position_padding_right: ${var:_operator_settings.js->viewport_right}
ui_position_padding_top: ${var:_operator_settings.js->viewport_top}
project.json: !include config/_project.json.yaml
link: ling
type: skin

View File

@@ -8,19 +8,13 @@ _operator_settings.js:
viewport_left: 0
viewport_right: 0
viewport_top: 5
invert_filter: false
index.html:
fallback_name: char_250_phatom_sale%234
id: char_250_phatom_sale%234
operator_logo: logo_victoria
title: 'Arknights: Focus / Phatom - 明日方舟:焦点·傀影'
version: ${func:get_version()}
project.json:
description: 'Arknights: Focus / Phatom - 明日方舟:焦点·傀影 Live 2D\nThe model is extracted from game with Spine support.\n模型来自游戏内提取支持Spine\nPlease set your FPS target in Wallpaper Engine > Settings > Performance > FPS\n请在 Wallpaper Engine > 设置 > 性能 > FPS 下设置FPS\n\nLive preview on: https://arknights.halyul.dev/phatom_focus\nGithub: https://github.com/Halyul/aklive2d'
title: ${var:index.html->title}
ui_logo_opacity: ${var:_operator_settings.js->opacity}
ui_logo_ratio: 61.8
ui_operator_logo: 'true'
ui_position_padding_bottom: ${var:_operator_settings.js->viewport_bottom}
ui_position_padding_left: ${var:_operator_settings.js->viewport_left}
ui_position_padding_right: ${var:_operator_settings.js->viewport_right}
ui_position_padding_top: ${var:_operator_settings.js->viewport_top}
project.json: !include config/_project.json.yaml
link: phatom_focus
type: skin

View File

@@ -8,19 +8,13 @@ _operator_settings.js:
viewport_left: 0
viewport_right: -14
viewport_top: -38
invert_filter: false
index.html:
fallback_name: char_391_rosmon_2
id: char_391_rosmon
operator_logo: logo_elite
title: 'Arknights: Rosmontis - 明日方舟:迷迭香'
version: ${func:get_version()}
project.json:
description: 'Arknights: Rosmontis Live 2D\n明日方舟迷迭香 Live 2D\nThe model is extracted from game with Spine support.\n模型来自游戏内提取支持Spine\nPlease set your FPS target in Wallpaper Engine > Settings > Performance > FPS\n请在 Wallpaper Engine > 设置 > 性能 > FPS 下设置FPS\n\nLive preview on: https://arknights.halyul.dev/rosmontis\nGithub: https://github.com/Halyul/aklive2d'
title: ${var:index.html->title}
ui_logo_opacity: ${var:_operator_settings.js->opacity}
ui_logo_ratio: 61.8
ui_operator_logo: 'true'
ui_position_padding_bottom: ${var:_operator_settings.js->viewport_bottom}
ui_position_padding_left: ${var:_operator_settings.js->viewport_left}
ui_position_padding_right: ${var:_operator_settings.js->viewport_right}
ui_position_padding_top: ${var:_operator_settings.js->viewport_top}
project.json: !include config/_project.json.yaml
link: rosmontis
type: operator

View File

@@ -8,19 +8,13 @@ _operator_settings.js:
viewport_left: 0
viewport_right: 0
viewport_top: 0
invert_filter: true
index.html:
fallback_name: char_391_rosmon_epoque%2317
id: char_391_rosmon%2317
operator_logo: logo_elite
title: 'Arknights: Become Anew / Rosmontis - 明日方舟:拥抱新生·迷迭香'
version: ${func:get_version()}
project.json:
description: 'Arknights: Become Anew / Rosmontis Live 2D\n明日方舟拥抱新生·迷迭香 Live 2D\nThe model is extracted from game with Spine support.\n模型来自游戏内提取支持Spine\nPlease set your FPS target in Wallpaper Engine > Settings > Performance > FPS\n请在 Wallpaper Engine > 设置 > 性能 > FPS 下设置FPS\n\nLive preview on: https://arknights.halyul.dev/rosmontis_become_anew\nGithub: https://github.com/Halyul/aklive2d'
title: ${var:index.html->title}
ui_logo_opacity: ${var:_operator_settings.js->opacity}
ui_logo_ratio: 61.8
ui_operator_logo: 'true'
ui_position_padding_bottom: ${var:_operator_settings.js->viewport_bottom}
ui_position_padding_left: ${var:_operator_settings.js->viewport_left}
ui_position_padding_right: ${var:_operator_settings.js->viewport_right}
ui_position_padding_top: ${var:_operator_settings.js->viewport_top}
project.json: !include config/_project.json.yaml
link: rosmontis_become_anew
type: skin

View File

@@ -8,19 +8,13 @@ _operator_settings.js:
viewport_left: -5
viewport_right: -10
viewport_top: 0
invert_filter: true
index.html:
fallback_name: char_1012_skadi2_2
id: char_1012_skadi2
operator_logo: logo_egir
title: 'Arknights: Skadi the Corrupting Heart - 明日方舟:浊心斯卡蒂'
version: ${func:get_version()}
project.json:
description: 'Arknights: Skadi the Corrupting Heart Live 2Di\r\n明日方舟浊心斯卡蒂 Live 2Di\r\nThe model is extracted from game with Spine support.\r\n模型来自游戏内提取支持Spine\r\nPlease set your FPS target in Wallpaper Engine > Settings > Performance > FPS\r\n请在Wallpaper Engine > 设置 > 性能 > FPS 下设置FPS\r\n\r\nLive preview on: https://arknights.halyul.dev/skadi\r\nGithub: https://github.com/Halyul/aklive2d'
title: ${var:index.html->title}
ui_logo_opacity: ${var:_operator_settings.js->opacity}
ui_logo_ratio: 61.8
ui_operator_logo: 'true'
ui_position_padding_bottom: ${var:_operator_settings.js->viewport_bottom}
ui_position_padding_left: ${var:_operator_settings.js->viewport_left}
ui_position_padding_right: ${var:_operator_settings.js->viewport_right}
ui_position_padding_top: ${var:_operator_settings.js->viewport_top}
project.json: !include config/_project.json.yaml
link: skadi
type: operator

View File

@@ -8,19 +8,13 @@ _operator_settings.js:
viewport_left: 0
viewport_right: 0
viewport_top: 0
invert_filter: true
index.html:
fallback_name: char_1012_skadi2_boc%234
id: char_1012_skadi2_boc%234
operator_logo: logo_egir
title: 'Arknights: Sublimation / Skadi the Corrupting Heart - 明日方舟:升华·浊心斯卡蒂'
version: ${func:get_version()}
project.json:
description: 'Arknights: Sublimation / Skadi the Corrupting Heart - 明日方舟:升华·浊 Live 2D\nThe model is extracted from game with Spine support.\n模型来自游戏内提取支持Spine\nPlease set your FPS target in Wallpaper Engine > Settings > Performance > FPS\n请在 Wallpaper Engine > 设置 > 性能 > FPS 下设置FPS\n\nLive preview on: https://arknights.halyul.dev/skadi_sublimation\nGithub: https://github.com/Halyul/aklive2d'
title: ${var:index.html->title}
ui_logo_opacity: ${var:_operator_settings.js->opacity}
ui_logo_ratio: 61.8
ui_operator_logo: 'true'
ui_position_padding_bottom: ${var:_operator_settings.js->viewport_bottom}
ui_position_padding_left: ${var:_operator_settings.js->viewport_left}
ui_position_padding_right: ${var:_operator_settings.js->viewport_right}
ui_position_padding_top: ${var:_operator_settings.js->viewport_top}
project.json: !include config/_project.json.yaml
link: skadi_sublimation
type: skin

View File

@@ -8,19 +8,13 @@ _operator_settings.js:
viewport_left: 0
viewport_right: 0
viewport_top: 0
invert_filter: false
index.html:
fallback_name: char_1023_ghost2_2
id: char_1023_ghost2
operator_logo: logo_abyssal
title: 'Arknights: Specter the Unchained - 明日方舟:归溟幽灵鲨'
version: ${func:get_version()}
project.json:
description: 'Arknights: Specter the Unchained - 明日方舟:归溟幽灵鲨 Live 2D\nThe model is extracted from game with Spine support.\n模型来自游戏内提取支持Spine\nPlease set your FPS target in Wallpaper Engine > Settings > Performance > FPS\n请在 Wallpaper Engine > 设置 > 性能 > FPS 下设置FPS\n\nLive preview on: https://arknights.halyul.dev/specter\nGithub: https://github.com/Halyul/aklive2d'
title: ${var:index.html->title}
ui_logo_opacity: ${var:_operator_settings.js->opacity}
ui_logo_ratio: 61.8
ui_operator_logo: 'true'
ui_position_padding_bottom: ${var:_operator_settings.js->viewport_bottom}
ui_position_padding_left: ${var:_operator_settings.js->viewport_left}
ui_position_padding_right: ${var:_operator_settings.js->viewport_right}
ui_position_padding_top: ${var:_operator_settings.js->viewport_top}
project.json: !include config/_project.json.yaml
link: specter
type: operator

View File

@@ -8,19 +8,13 @@ _operator_settings.js:
viewport_left: 0
viewport_right: 6
viewport_top: 1
invert_filter: false
index.html:
fallback_name: char_350_surtr_summer%239
id: char_350_surtr_summer%239
operator_logo: logo_rhodes_override
title: 'Arknights: Colorful Wonderland / Surtr - 明日方舟:缤纷奇境·史尔特尔'
version: ${func:get_version()}
project.json:
description: 'Arknights: Colorful Wonderland / Surtr Live 2D\n明日方舟缤纷奇境·史尔特尔 Live 2D\nThe model is extracted from game with Spine support.\n模型来自游戏内提取支持Spine\nPlease set your FPS target in Wallpaper Engine > Settings > Performance > FPS\n请在 Wallpaper Engine > 设置 > 性能 > FPS 下设置FPS\n\nLive preview on: https://arknights.halyul.dev/surtr_colorful_wonderland\nGithub: https://github.com/Halyul/aklive2d'
title: ${var:index.html->title}
ui_logo_opacity: ${var:_operator_settings.js->opacity}
ui_logo_ratio: 61.8
ui_operator_logo: 'true'
ui_position_padding_bottom: ${var:_operator_settings.js->viewport_bottom}
ui_position_padding_left: ${var:_operator_settings.js->viewport_left}
ui_position_padding_right: ${var:_operator_settings.js->viewport_right}
ui_position_padding_top: ${var:_operator_settings.js->viewport_top}
project.json: !include config/_project.json.yaml
link: surtr_colorful_wonderland
type: skin

View File

@@ -8,19 +8,13 @@ _operator_settings.js:
viewport_left: 0
viewport_right: 0
viewport_top: 0
invert_filter: true
index.html:
fallback_name: char_1028_texas2_2
id: char_1028_texas2
operator_logo: logo_penguin
title: 'Arknights: Texas the Omertosa - 明日方舟:缄默德克萨斯'
version: ${func:get_version()}
project.json:
description: 'Arknights: Texas the Omertosa Live 2D\r\n明日方舟缄默德克萨斯 Live 2D\r\nThe model is extracted from game with Spine support.\r\n模型来自游戏内提取支持Spine\r\nPlease set your FPS target in Wallpaper Engine > Settings > Performance > FPS\r\n请在Wallpaper Engine > 设置 > 性能 > FPS 下设置FPS\r\n\r\nLive preview on: https://arknights.halyul.dev/texas_the_omertosa\r\nGithub: https://github.com/Halyul/aklive2d'
title: ${var:index.html->title}
ui_logo_opacity: ${var:_operator_settings.js->opacity}
ui_logo_ratio: 61.8
ui_operator_logo: 'true'
ui_position_padding_bottom: ${var:_operator_settings.js->viewport_bottom}
ui_position_padding_left: ${var:_operator_settings.js->viewport_left}
ui_position_padding_right: ${var:_operator_settings.js->viewport_right}
ui_position_padding_top: ${var:_operator_settings.js->viewport_top}
project.json: !include config/_project.json.yaml
link: texas_the_omertosa
type: operator

View File

@@ -8,19 +8,13 @@ _operator_settings.js:
viewport_left: 3
viewport_right: -3
viewport_top: 0
invert_filter: true
index.html:
fallback_name: char_113_cqbw_2
id: char_113_cqbw
operator_logo: logo_babel
title: 'Arknights: W - 明日方舟W'
version: ${func:get_version()}
project.json:
description: 'Arknights: W Live 2D\n明日方舟W Live 2D\nThe model is extracted from game with Spine support.\n模型来自游戏内提取支持Spine\nPlease set your FPS target in Wallpaper Engine > Settings > Performance > FPS\n请在 Wallpaper Engine > 设置 > 性能 > FPS 下设置FPS\n\nLive preview on: https://arknights.halyul.dev/w\nGithub: https://github.com/Halyul/aklive2d'
title: ${var:index.html->title}
ui_logo_opacity: ${var:_operator_settings.js->opacity}
ui_logo_ratio: 61.8
ui_operator_logo: 'true'
ui_position_padding_bottom: ${var:_operator_settings.js->viewport_bottom}
ui_position_padding_left: ${var:_operator_settings.js->viewport_left}
ui_position_padding_right: ${var:_operator_settings.js->viewport_right}
ui_position_padding_top: ${var:_operator_settings.js->viewport_top}
project.json: !include config/_project.json.yaml
link: w
type: operator

View File

@@ -8,19 +8,13 @@ _operator_settings.js:
viewport_right: 0
viewport_top: 1
viewport_bottom: -4
invert_filter: true
index.html:
fallback_name: char_113_cqbw_epoque%237
id: char_113_cqbw_epoque%237
operator_logo: logo_babel
title: 'Arknights: Fugue / W - 明日方舟恍惚·W'
version: ${func:get_version()}
project.json:
description: 'Arknights: Fugue / W - 明日方舟恍惚·W Live 2D\nThe model is extracted from game with Spine support.\n模型来自游戏内提取支持Spine\nPlease set your FPS target in Wallpaper Engine > Settings > Performance > FPS\n请在 Wallpaper Engine > 设置 > 性能 > FPS 下设置FPS\n\nLive preview on: https://arknights.halyul.dev/w_fugue\nGithub: https://github.com/Halyul/aklive2d'
title: ${var:index.html->title}
ui_logo_opacity: ${var:_operator_settings.js->opacity}
ui_logo_ratio: 61.8
ui_operator_logo: 'true'
ui_position_padding_bottom: ${var:_operator_settings.js->viewport_bottom}
ui_position_padding_left: ${var:_operator_settings.js->viewport_left}
ui_position_padding_right: ${var:_operator_settings.js->viewport_right}
ui_position_padding_top: ${var:_operator_settings.js->viewport_top}
project.json: !include config/_project.json.yaml
link: w_fugue
type: skin

View File

@@ -1,5 +1,6 @@
import pathlib
import shutil
import re
class ContentProcessor:
@@ -32,7 +33,7 @@ class ContentProcessor:
def __process_value(self):
for item_key, item_value in self.settings.items():
for key, value in item_value.items():
for key, value in item_value.items() if type(item_value) == dict else {}:
matcher = Matcher(value, "${", "}", self.settings)
if matcher.match():
replace_value = matcher.process()
@@ -45,39 +46,53 @@ class ContentProcessor:
self.file_to_process.append(settings_filename)
class Evalable:
def get_version():
def __init__(self, settings):
self.settings = settings
def get_version(self):
with open(pathlib.Path.cwd().joinpath("Version"), "r") as f:
version = f.read()
return version
def split(self, var_name, separator):
for var in var_name.split("->"):
try:
self.settings = self.settings[var]
except Exception as e:
raise e
return self.settings.split(separator)
class Matcher:
def __init__(self, content, start, end, settings):
self.start = start
self.end = end
self.content = str(content)
self.settings = settings
self.re_exp = re.compile("\{}.+?{}".format(start, end))
def match(self):
return self.content.startswith(self.start) and self.content.endswith(self.end)
return re.search(self.re_exp, self.content) is not None
def process(self):
type = self.content.replace(self.start, "").replace(self.end, "").split(":")[0]
name = self.content.replace(self.start, "").replace(self.end, "").split(":")[1]
if type == "func":
try:
replace_value = eval("Evalable." + name)
except Exception as e:
raise e
elif type == "var":
replace_value = self.settings
for var in name.split("->"):
for match in re.findall(self.re_exp, self.content):
type = match.replace(self.start, "").replace(self.end, "").split(":")[0]
name = match.replace(self.start, "").replace(self.end, "").split(":")[1]
if type == "func":
try:
replace_value = replace_value[var]
self.content = self.content.replace(match, eval("Evalable(self.settings)." + name))
except Exception as e:
raise e
else:
raise Exception("Unsupported type: {}".format(type))
return replace_value
elif type == "var":
replace_value = self.settings
for var in name.split("->"):
try:
replace_value = replace_value[var]
except Exception as e:
raise e
self.content = self.content.replace(match, str(replace_value))
else:
raise Exception("Unsupported type: {}".format(type))
return self.content
def format(self, filename):
for key, value in self.settings[filename].items():