diff --git a/.gitignore b/.gitignore
index efaa728..5de262b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -35,6 +35,7 @@ resources/stores/*
# cli-dist
pl-cli
*/colorFont.js
+pl-build
# package manager
yarn.lock
diff --git a/.release-it.json b/.release-it.json
index a9c4073..2d90a60 100644
--- a/.release-it.json
+++ b/.release-it.json
@@ -15,7 +15,7 @@
"publish": false
},
"hooks": {
- "after:bump": "echo 更新版本成功"
+ "after:bump": "git add CHANGELOG.md && echo 更新版本成功!添加changelog的commit成功!"
},
"plugins": {
"@release-it/bumper": {
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 65fee24..0ba83c9 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,133 +1,139 @@
-## 1.0.5 (2024-03-11)
+## [1.0.6](https://github.com/wh131462/leetcode-practice/compare/cli-v1.0.5...cli-v1.0.6) (2024-03-11)
### Bug Fixes
-* add break before default ([08094b4](https://github.com/wh131462/leetcode-practice/commit/08094b4389a3fd1e442615dd687a55a08bd5ac62))
-* change ([1eb6e3c](https://github.com/wh131462/leetcode-practice/commit/1eb6e3c5ba35b22d7d3ef6893b6ace2d80050d6e))
-* change ([0801a1d](https://github.com/wh131462/leetcode-practice/commit/0801a1d6c63fef76d570ed7d943bd0d6f85c70e6))
-* change template ([872e867](https://github.com/wh131462/leetcode-practice/commit/872e867021c347e1fe4236e94cbd67aed47010a9))
-* console table text length verflow dislocation error ([3a563a2](https://github.com/wh131462/leetcode-practice/commit/3a563a2169bae2dd0ef26fb16e9bdedce21c8be2))
-* correct packageManager's format (fix [#7](https://github.com/wh131462/leetcode-practice/issues/7)) ([faa2280](https://github.com/wh131462/leetcode-practice/commit/faa2280746facefd2bd11d45d85cc70026821c0c))
-* delete src ([a932ce4](https://github.com/wh131462/leetcode-practice/commit/a932ce42227a8fab5d83d8bbe7a2add78c0d26a6))
-* delete src file ([2a53e63](https://github.com/wh131462/leetcode-practice/commit/2a53e634bbb7da7f0bf9df129901bb4c7839ba57))
-* find question by keyword error ([69da517](https://github.com/wh131462/leetcode-practice/commit/69da51740ff7f78a89c05ea534f80cc56f588d7f))
-* find question list ([6f78bfa](https://github.com/wh131462/leetcode-practice/commit/6f78bfa8fbab5d375f48d541c1b50bbfec55f9aa))
-* fix all lint error ([e99e76b](https://github.com/wh131462/leetcode-practice/commit/e99e76b2e1c7c9d387ab658a4c1f4057bf1a60da))
-* format readme form ([f002d77](https://github.com/wh131462/leetcode-practice/commit/f002d77f6e3f9e9a1259de2a5fee4b1858768620))
-* format readme form ([df5e45c](https://github.com/wh131462/leetcode-practice/commit/df5e45c9d55fc98dbe6bbc5b7fc80d6716d5bd34))
-* format readme form ([2f182ca](https://github.com/wh131462/leetcode-practice/commit/2f182ca85575fa8d2963fc0e657ee425b2215153))
-* format readme lint ([85b97f6](https://github.com/wh131462/leetcode-practice/commit/85b97f64258eadf4dcf1b29747e0ed0c3d161440))
-* getTestCase ([4ac7f65](https://github.com/wh131462/leetcode-practice/commit/4ac7f6505a47ab60d4ea74c659bb49c0d19667e6))
-* **headers:** remove useless header configuration ([105c841](https://github.com/wh131462/leetcode-practice/commit/105c84141206dfcf11d6a4ea46775f7546150acd))
-* **headers:** remove useless header configuration ([3ba1a98](https://github.com/wh131462/leetcode-practice/commit/3ba1a982a5e1d4c3b29d09af40df910f9d9dd3a5))
-* ignore lint ([46a9135](https://github.com/wh131462/leetcode-practice/commit/46a91358376a387b1e395e99424012685c21e09b))
-* ignore lint ([d376299](https://github.com/wh131462/leetcode-practice/commit/d376299a7f7e20453aaee978bba4178079b1e931))
-* lint ([cc63e57](https://github.com/wh131462/leetcode-practice/commit/cc63e572de4afa50b82791e1e896234b8d6b8ee4))
-* listnode check ([b8b3b47](https://github.com/wh131462/leetcode-practice/commit/b8b3b475637647035ac3eb9bfc5b27b61bde9a49))
-* log ([bd1d01b](https://github.com/wh131462/leetcode-practice/commit/bd1d01b4a440f8f80dfc67b04180dde29bac9da9))
-* memory calc error ([c09b344](https://github.com/wh131462/leetcode-practice/commit/c09b3440f81d0a3d6bf740aec06b320e00574b2c))
-* perfect version for cli install ([5a257f4](https://github.com/wh131462/leetcode-practice/commit/5a257f43fe897be40dd64a8ff8532387290a15fa))
-* readme_cn ([63dab20](https://github.com/wh131462/leetcode-practice/commit/63dab20f3956ae5f2abbc5df721c4ccc61d90bd2))
-* rename README ([2b8c294](https://github.com/wh131462/leetcode-practice/commit/2b8c294b0259d3476285ca985b8ad1e3fb2c6c2b))
-* rewrite log ([53d15b4](https://github.com/wh131462/leetcode-practice/commit/53d15b491c57d9e36a6fd6c36193517edb915425))
-* search ([5bb93dd](https://github.com/wh131462/leetcode-practice/commit/5bb93dd323c0786a17b1a4e4eae1ae3e1ba9625b))
-* **store:** fix the bug for create dir outside ([7254f29](https://github.com/wh131462/leetcode-practice/commit/7254f2988a656c28c0e7fbc685e16ff85cc1cbe6))
-* **store:** fix the bug for create dir outside ([1c66484](https://github.com/wh131462/leetcode-practice/commit/1c664846431448410ce3ddfc68ca29161c8e2683))
-* **tempate:** 修复空格导致字符串匹配失效问题 ([07bdbdc](https://github.com/wh131462/leetcode-practice/commit/07bdbdc88b1e50c781a65863dd1ba45c98eb5d79))
-* **test:** 修复挂掉的测试用例 ([4593058](https://github.com/wh131462/leetcode-practice/commit/4593058a065accc9e55e916352013de7bc6d4533))
-* update view for cli ([0b8ecf0](https://github.com/wh131462/leetcode-practice/commit/0b8ecf0ac7b2567168e35a6513308825aa514070))
-* 优化代码 ([da6aa6d](https://github.com/wh131462/leetcode-practice/commit/da6aa6d5ab87c4ecb626f1762033062a9ac432e4))
-* 修复原始创建不中止问题 ([ddb0ea1](https://github.com/wh131462/leetcode-practice/commit/ddb0ea11ca02abe73ee80ec8b0130466efbce457))
-* 模版文件路径错误 ([e46c94c](https://github.com/wh131462/leetcode-practice/commit/e46c94c85583b367d831326e4e873512b6ccf504))
+* realm-compatible-problem ([#25](https://github.com/wh131462/leetcode-practice/issues/25)) ([d2d37d6](https://github.com/wh131462/leetcode-practice/commit/d2d37d68e6405507340b115d55bec15e070cf3ba))
-### Code Refactoring
+### Features
-* directory refactor ([7a3a948](https://github.com/wh131462/leetcode-practice/commit/7a3a94806a1843e1c4bb86ece65d4e19ef9817fa))
+* change lf feature and update docs ([#27](https://github.com/wh131462/leetcode-practice/issues/27)) ([3b7e129](https://github.com/wh131462/leetcode-practice/commit/3b7e129b722391b50d32e48e782f244a12faad05))
+## 1.0.5 (2024-03-11)
-* cli finish basically (#5) ([5af52e3](https://github.com/wh131462/leetcode-practice/commit/5af52e31b466517d2fdea9443376d27bff646bdf)), closes [#5](https://github.com/wh131462/leetcode-practice/issues/5)
+### Bug Fixes
+- add break before default ([08094b4](https://github.com/wh131462/leetcode-practice/commit/08094b4389a3fd1e442615dd687a55a08bd5ac62))
+- change ([1eb6e3c](https://github.com/wh131462/leetcode-practice/commit/1eb6e3c5ba35b22d7d3ef6893b6ace2d80050d6e))
+- change ([0801a1d](https://github.com/wh131462/leetcode-practice/commit/0801a1d6c63fef76d570ed7d943bd0d6f85c70e6))
+- change template ([872e867](https://github.com/wh131462/leetcode-practice/commit/872e867021c347e1fe4236e94cbd67aed47010a9))
+- console table text length verflow dislocation error ([3a563a2](https://github.com/wh131462/leetcode-practice/commit/3a563a2169bae2dd0ef26fb16e9bdedce21c8be2))
+- correct packageManager's format (fix [#7](https://github.com/wh131462/leetcode-practice/issues/7)) ([faa2280](https://github.com/wh131462/leetcode-practice/commit/faa2280746facefd2bd11d45d85cc70026821c0c))
+- delete src ([a932ce4](https://github.com/wh131462/leetcode-practice/commit/a932ce42227a8fab5d83d8bbe7a2add78c0d26a6))
+- delete src file ([2a53e63](https://github.com/wh131462/leetcode-practice/commit/2a53e634bbb7da7f0bf9df129901bb4c7839ba57))
+- find question by keyword error ([69da517](https://github.com/wh131462/leetcode-practice/commit/69da51740ff7f78a89c05ea534f80cc56f588d7f))
+- find question list ([6f78bfa](https://github.com/wh131462/leetcode-practice/commit/6f78bfa8fbab5d375f48d541c1b50bbfec55f9aa))
+- fix all lint error ([e99e76b](https://github.com/wh131462/leetcode-practice/commit/e99e76b2e1c7c9d387ab658a4c1f4057bf1a60da))
+- format readme form ([f002d77](https://github.com/wh131462/leetcode-practice/commit/f002d77f6e3f9e9a1259de2a5fee4b1858768620))
+- format readme form ([df5e45c](https://github.com/wh131462/leetcode-practice/commit/df5e45c9d55fc98dbe6bbc5b7fc80d6716d5bd34))
+- format readme form ([2f182ca](https://github.com/wh131462/leetcode-practice/commit/2f182ca85575fa8d2963fc0e657ee425b2215153))
+- format readme lint ([85b97f6](https://github.com/wh131462/leetcode-practice/commit/85b97f64258eadf4dcf1b29747e0ed0c3d161440))
+- getTestCase ([4ac7f65](https://github.com/wh131462/leetcode-practice/commit/4ac7f6505a47ab60d4ea74c659bb49c0d19667e6))
+- **headers:** remove useless header configuration ([105c841](https://github.com/wh131462/leetcode-practice/commit/105c84141206dfcf11d6a4ea46775f7546150acd))
+- **headers:** remove useless header configuration ([3ba1a98](https://github.com/wh131462/leetcode-practice/commit/3ba1a982a5e1d4c3b29d09af40df910f9d9dd3a5))
+- ignore lint ([46a9135](https://github.com/wh131462/leetcode-practice/commit/46a91358376a387b1e395e99424012685c21e09b))
+- ignore lint ([d376299](https://github.com/wh131462/leetcode-practice/commit/d376299a7f7e20453aaee978bba4178079b1e931))
+- lint ([cc63e57](https://github.com/wh131462/leetcode-practice/commit/cc63e572de4afa50b82791e1e896234b8d6b8ee4))
+- listnode check ([b8b3b47](https://github.com/wh131462/leetcode-practice/commit/b8b3b475637647035ac3eb9bfc5b27b61bde9a49))
+- log ([bd1d01b](https://github.com/wh131462/leetcode-practice/commit/bd1d01b4a440f8f80dfc67b04180dde29bac9da9))
+- memory calc error ([c09b344](https://github.com/wh131462/leetcode-practice/commit/c09b3440f81d0a3d6bf740aec06b320e00574b2c))
+- perfect version for cli install ([5a257f4](https://github.com/wh131462/leetcode-practice/commit/5a257f43fe897be40dd64a8ff8532387290a15fa))
+- readme_cn ([63dab20](https://github.com/wh131462/leetcode-practice/commit/63dab20f3956ae5f2abbc5df721c4ccc61d90bd2))
+- rename README ([2b8c294](https://github.com/wh131462/leetcode-practice/commit/2b8c294b0259d3476285ca985b8ad1e3fb2c6c2b))
+- rewrite log ([53d15b4](https://github.com/wh131462/leetcode-practice/commit/53d15b491c57d9e36a6fd6c36193517edb915425))
+- search ([5bb93dd](https://github.com/wh131462/leetcode-practice/commit/5bb93dd323c0786a17b1a4e4eae1ae3e1ba9625b))
+- **store:** fix the bug for create dir outside ([7254f29](https://github.com/wh131462/leetcode-practice/commit/7254f2988a656c28c0e7fbc685e16ff85cc1cbe6))
+- **store:** fix the bug for create dir outside ([1c66484](https://github.com/wh131462/leetcode-practice/commit/1c664846431448410ce3ddfc68ca29161c8e2683))
+- **tempate:** 修复空格导致字符串匹配失效问题 ([07bdbdc](https://github.com/wh131462/leetcode-practice/commit/07bdbdc88b1e50c781a65863dd1ba45c98eb5d79))
+- **test:** 修复挂掉的测试用例 ([4593058](https://github.com/wh131462/leetcode-practice/commit/4593058a065accc9e55e916352013de7bc6d4533))
+- update view for cli ([0b8ecf0](https://github.com/wh131462/leetcode-practice/commit/0b8ecf0ac7b2567168e35a6513308825aa514070))
+- 优化代码 ([da6aa6d](https://github.com/wh131462/leetcode-practice/commit/da6aa6d5ab87c4ecb626f1762033062a9ac432e4))
+- 修复原始创建不中止问题 ([ddb0ea1](https://github.com/wh131462/leetcode-practice/commit/ddb0ea11ca02abe73ee80ec8b0130466efbce457))
+- 模版文件路径错误 ([e46c94c](https://github.com/wh131462/leetcode-practice/commit/e46c94c85583b367d831326e4e873512b6ccf504))
-### Features
+### Code Refactoring
-* add ([fb3fadc](https://github.com/wh131462/leetcode-practice/commit/fb3fadc7fca166be0eefe51a817899466ab48b27))
-* add cz plugin ([4fd5af1](https://github.com/wh131462/leetcode-practice/commit/4fd5af151ac32d3daabcdc862505962fcd32f129))
-* add eslint ([be523ea](https://github.com/wh131462/leetcode-practice/commit/be523ea0f3085e003a2e0b5fb1c568b65cc21714))
-* add get question ([e5572b6](https://github.com/wh131462/leetcode-practice/commit/e5572b6357c8c056aa32eab53476736561261ebe))
-* add get question by keyword function ([097302a](https://github.com/wh131462/leetcode-practice/commit/097302afe095ad70d1c58942dc8ac8fb516e1eed))
-* add getQuestionChineseName function to get chinese name ([9520e75](https://github.com/wh131462/leetcode-practice/commit/9520e757741ff008439affd20db582458a37b674))
-* add getQuestionCode ([dbdb255](https://github.com/wh131462/leetcode-practice/commit/dbdb2553a2c47c9ee40fada33bfec7458ae4ccb6))
-* add memory calculate ([e6c315a](https://github.com/wh131462/leetcode-practice/commit/e6c315ab1524327697278e3b41c622fb22928896))
-* add memory demo ([8065924](https://github.com/wh131462/leetcode-practice/commit/8065924ca451e043f80644a31eb5d9543946f026))
-* add open process ([80dc9f5](https://github.com/wh131462/leetcode-practice/commit/80dc9f530eaae98e5449b3ebdf5c9e69ec452a17))
-* add prettier and commitlint ([608f4df](https://github.com/wh131462/leetcode-practice/commit/608f4dfdc4c0aebb9ead3e46abcde71fcc962b39))
-* change git push rules ([ee3e558](https://github.com/wh131462/leetcode-practice/commit/ee3e558496ef72f2daee071b88e79ddd06503e7c))
-* **cli:** 简化命令 使得命令可以在任何路径下运行 ([26fcffb](https://github.com/wh131462/leetcode-practice/commit/26fcffb8daa0e0a70e78c47772ef5059c1c825d1))
-* **commit:** finish set question range tag in file and get code in file by range tag ([61e2924](https://github.com/wh131462/leetcode-practice/commit/61e2924d2607e96bbd37947f05e718a10ac9edd6))
-* **commit:** finish set question range tag in file and get code in file by range tag ([b7eccdd](https://github.com/wh131462/leetcode-practice/commit/b7eccddb725ef460d04e8574ce5e02db533ccfd9))
-* **create:** can log file path and func start line number after create ([3b1365c](https://github.com/wh131462/leetcode-practice/commit/3b1365cbf9e86d4c0959817cbb845dd3495a12ab))
-* eslint忽略文件 ([f91889c](https://github.com/wh131462/leetcode-practice/commit/f91889c8348766a63136ada6fcd49e79a0e54378))
-* finish the view create & check ([9e96e0a](https://github.com/wh131462/leetcode-practice/commit/9e96e0a24f0232827196ce2bdb6c3d04966f42bd))
-* get js code ([b1fd6bb](https://github.com/wh131462/leetcode-practice/commit/b1fd6bb8d85d080c1f89a53cd99416c84e3abd10))
-* hot100合并代码 ([3ddd7c6](https://github.com/wh131462/leetcode-practice/commit/3ddd7c6237bd43655c4e3d0e490bd997afb1df5a))
-* node vm执行index.js脚本 ([f894e30](https://github.com/wh131462/leetcode-practice/commit/f894e3096c15d9939e0b93688f37c4272775d300))
-* publish config & build config ([1affd2a](https://github.com/wh131462/leetcode-practice/commit/1affd2ab7b1e1ad942d5dc3fbe5c300b5a92f240))
-* sucess log with green and fail log with red ([1eccefb](https://github.com/wh131462/leetcode-practice/commit/1eccefb023d28ca734c1886e0dc64a576d03f860))
-* update function basic ([a01c873](https://github.com/wh131462/leetcode-practice/commit/a01c8738aa060221421f2f17158c92a9069929a0))
-* update project using github ([a879d29](https://github.com/wh131462/leetcode-practice/commit/a879d29f9686f5c71d02bfe5c9122bc6fc90dc81))
-* version 1.0.2 ([4afe55e](https://github.com/wh131462/leetcode-practice/commit/4afe55e35ecea82dedbba3e6a3d9a2738365aa79))
-* **忽略测试覆盖率文件:** 忽略测试覆盖率文件 ([b05e380](https://github.com/wh131462/leetcode-practice/commit/b05e380ef84384f5f1ebbfb64628bd689933f755))
-* 新增填充markdown功能 ([1b8324d](https://github.com/wh131462/leetcode-practice/commit/1b8324d212898e8d0b7b2edc15244da31157a3c9))
-* 新增无向连通图数据结构 parse toArray实现,补充测试用例等 fix: 优化了转换逻辑 ([08f3787](https://github.com/wh131462/leetcode-practice/commit/08f3787f70de41d82610c1ce940f35c878dbf0d1))
-* 新增测试覆盖率 ([2627ecd](https://github.com/wh131462/leetcode-practice/commit/2627ecd00105d4af59e5c2fa59608da1144f17a8))
-* 测试用例中补充树和链表的数据结构以及转换逻辑,新增单元测试模块 ([ac9ccd1](https://github.com/wh131462/leetcode-practice/commit/ac9ccd155358306f667e9ffaa0aac9f16d58988a))
-* 统一数据结构 ([f15a8da](https://github.com/wh131462/leetcode-practice/commit/f15a8dad2500cef476e1340b93053be48364bf3e))
+- directory refactor ([7a3a948](https://github.com/wh131462/leetcode-practice/commit/7a3a94806a1843e1c4bb86ece65d4e19ef9817fa))
+- cli finish basically (#5) ([5af52e3](https://github.com/wh131462/leetcode-practice/commit/5af52e31b466517d2fdea9443376d27bff646bdf)), closes [#5](https://github.com/wh131462/leetcode-practice/issues/5)
-### Performance Improvements
+### Features
+
+- add ([fb3fadc](https://github.com/wh131462/leetcode-practice/commit/fb3fadc7fca166be0eefe51a817899466ab48b27))
+- add cz plugin ([4fd5af1](https://github.com/wh131462/leetcode-practice/commit/4fd5af151ac32d3daabcdc862505962fcd32f129))
+- add eslint ([be523ea](https://github.com/wh131462/leetcode-practice/commit/be523ea0f3085e003a2e0b5fb1c568b65cc21714))
+- add get question ([e5572b6](https://github.com/wh131462/leetcode-practice/commit/e5572b6357c8c056aa32eab53476736561261ebe))
+- add get question by keyword function ([097302a](https://github.com/wh131462/leetcode-practice/commit/097302afe095ad70d1c58942dc8ac8fb516e1eed))
+- add getQuestionChineseName function to get chinese name ([9520e75](https://github.com/wh131462/leetcode-practice/commit/9520e757741ff008439affd20db582458a37b674))
+- add getQuestionCode ([dbdb255](https://github.com/wh131462/leetcode-practice/commit/dbdb2553a2c47c9ee40fada33bfec7458ae4ccb6))
+- add memory calculate ([e6c315a](https://github.com/wh131462/leetcode-practice/commit/e6c315ab1524327697278e3b41c622fb22928896))
+- add memory demo ([8065924](https://github.com/wh131462/leetcode-practice/commit/8065924ca451e043f80644a31eb5d9543946f026))
+- add open process ([80dc9f5](https://github.com/wh131462/leetcode-practice/commit/80dc9f530eaae98e5449b3ebdf5c9e69ec452a17))
+- add prettier and commitlint ([608f4df](https://github.com/wh131462/leetcode-practice/commit/608f4dfdc4c0aebb9ead3e46abcde71fcc962b39))
+- change git push rules ([ee3e558](https://github.com/wh131462/leetcode-practice/commit/ee3e558496ef72f2daee071b88e79ddd06503e7c))
+- **cli:** 简化命令 使得命令可以在任何路径下运行 ([26fcffb](https://github.com/wh131462/leetcode-practice/commit/26fcffb8daa0e0a70e78c47772ef5059c1c825d1))
+- **commit:** finish set question range tag in file and get code in file by range tag ([61e2924](https://github.com/wh131462/leetcode-practice/commit/61e2924d2607e96bbd37947f05e718a10ac9edd6))
+- **commit:** finish set question range tag in file and get code in file by range tag ([b7eccdd](https://github.com/wh131462/leetcode-practice/commit/b7eccddb725ef460d04e8574ce5e02db533ccfd9))
+- **create:** can log file path and func start line number after create ([3b1365c](https://github.com/wh131462/leetcode-practice/commit/3b1365cbf9e86d4c0959817cbb845dd3495a12ab))
+- eslint忽略文件 ([f91889c](https://github.com/wh131462/leetcode-practice/commit/f91889c8348766a63136ada6fcd49e79a0e54378))
+- finish the view create & check ([9e96e0a](https://github.com/wh131462/leetcode-practice/commit/9e96e0a24f0232827196ce2bdb6c3d04966f42bd))
+- get js code ([b1fd6bb](https://github.com/wh131462/leetcode-practice/commit/b1fd6bb8d85d080c1f89a53cd99416c84e3abd10))
+- hot100合并代码 ([3ddd7c6](https://github.com/wh131462/leetcode-practice/commit/3ddd7c6237bd43655c4e3d0e490bd997afb1df5a))
+- node vm执行index.js脚本 ([f894e30](https://github.com/wh131462/leetcode-practice/commit/f894e3096c15d9939e0b93688f37c4272775d300))
+- publish config & build config ([1affd2a](https://github.com/wh131462/leetcode-practice/commit/1affd2ab7b1e1ad942d5dc3fbe5c300b5a92f240))
+- sucess log with green and fail log with red ([1eccefb](https://github.com/wh131462/leetcode-practice/commit/1eccefb023d28ca734c1886e0dc64a576d03f860))
+- update function basic ([a01c873](https://github.com/wh131462/leetcode-practice/commit/a01c8738aa060221421f2f17158c92a9069929a0))
+- update project using github ([a879d29](https://github.com/wh131462/leetcode-practice/commit/a879d29f9686f5c71d02bfe5c9122bc6fc90dc81))
+- version 1.0.2 ([4afe55e](https://github.com/wh131462/leetcode-practice/commit/4afe55e35ecea82dedbba3e6a3d9a2738365aa79))
+- **忽略测试覆盖率文件:** 忽略测试覆盖率文件 ([b05e380](https://github.com/wh131462/leetcode-practice/commit/b05e380ef84384f5f1ebbfb64628bd689933f755))
+- 新增填充markdown功能 ([1b8324d](https://github.com/wh131462/leetcode-practice/commit/1b8324d212898e8d0b7b2edc15244da31157a3c9))
+- 新增无向连通图数据结构 parse toArray实现,补充测试用例等 fix: 优化了转换逻辑 ([08f3787](https://github.com/wh131462/leetcode-practice/commit/08f3787f70de41d82610c1ce940f35c878dbf0d1))
+- 新增测试覆盖率 ([2627ecd](https://github.com/wh131462/leetcode-practice/commit/2627ecd00105d4af59e5c2fa59608da1144f17a8))
+- 测试用例中补充树和链表的数据结构以及转换逻辑,新增单元测试模块 ([ac9ccd1](https://github.com/wh131462/leetcode-practice/commit/ac9ccd155358306f667e9ffaa0aac9f16d58988a))
+- 统一数据结构 ([f15a8da](https://github.com/wh131462/leetcode-practice/commit/f15a8dad2500cef476e1340b93053be48364bf3e))
-* better scripts and easy mode to create question in project ([ffd9e29](https://github.com/wh131462/leetcode-practice/commit/ffd9e29ca35d9f4b8b6b2f8b94516e8f053261a5))
-* http dir structure and functions modify ([553ad58](https://github.com/wh131462/leetcode-practice/commit/553ad5861aa67423c1092f798f39b2bd4faf68f6))
+### Performance Improvements
+- better scripts and easy mode to create question in project ([ffd9e29](https://github.com/wh131462/leetcode-practice/commit/ffd9e29ca35d9f4b8b6b2f8b94516e8f053261a5))
+- http dir structure and functions modify ([553ad58](https://github.com/wh131462/leetcode-practice/commit/553ad5861aa67423c1092f798f39b2bd4faf68f6))
### BREAKING CHANGES
-* srcipts即将废弃,视图交互性代码完善1/3
+- srcipts即将废弃,视图交互性代码完善1/3
-* feat: finish the view create & check
+- feat: finish the view create & check
-* feat:完成lc&lk指令
+- feat:完成lc&lk指令
-* fix: 优化代码
+- fix: 优化代码
-* feat: add getQuestionChineseName function to get chinese name
+- feat: add getQuestionChineseName function to get chinese name
-* chore: del scripts and .vscode files & ignore .vscode
+- chore: del scripts and .vscode files & ignore .vscode
-* docs: update todo & achive
+- docs: update todo & achive
-* perf: better scripts and easy mode to create question in project
+- perf: better scripts and easy mode to create question in project
-* feat: publish config & build config
+- feat: publish config & build config
-* chore: del src
+- chore: del src
-* fix: perfect version for cli install
+- fix: perfect version for cli install
-* fix:指令打包完善
+- fix:指令打包完善
-* fix:easy mode script
+- fix:easy mode script
-* docs:todo 拆分成单独文件
+- docs:todo 拆分成单独文件
-* chore:路径调整成全局路径
+- chore:路径调整成全局路径
-* docs: add CHANGELOG and TO-DO
-* srcipts即将废弃,视图交互性代码完善1/3
+- docs: add CHANGELOG and TO-DO
+- srcipts即将废弃,视图交互性代码完善1/3
## [1.0.5-bera.0](https://github.com/wh131462/leetcode-practice/compare/cli-v1.0.4-beta...cli-v1.0.5-bera.0) (2024-03-11)
diff --git a/README.md b/README.md
index d1ed329..c337ed5 100644
--- a/README.md
+++ b/README.md
@@ -1,502 +1,295 @@
# Leetcode practice
-[Chinese Document](docs/README_CN.md)|**English Document**|[Japanese Document](docs/README_JP.md)|[Korean Document](docs/README_KR.md)
+[中文文档](./README_CN.md)|**English Document**||[日本語の文書](./README_JP.md)
-## Introduction
+## I. Project Information
-A brief introduction: "Start practicing your daily LeetCode questions in the editor!"
+### 1. Introduction
-If you want to write your solutions in the editor...
-
-If you want to quickly access daily questions...
-
-If you want to create your own solution repository...
-
-Then, leetcode-practice will meet all your needs!
-
-## Preview
-
-
-
-## How should I use it? (Three options for you to choose from)
-
-### Option A: CLI (Recommended)
+One-sentence introduction: "Start practicing your `LeetCode` daily questions in the editor!"
-The best and most flexible way to use it is to use our CLI in the terminal. You can create and check your solutions using three core commands: `lk`, `lf`, and `lc`.
-
-[Installation](<#I-Global-Installation-of-CLI-(Option-A)>) · [Usage](#using-cli)
+If you want to write your solutions in the editor...
-### Option B: Fork (Supported)
+If you want a simple and quick way to get daily questions...
-You can also use GitHub's fork feature to create a copy of our project. Then, you can directly use the built-in commands within the project to create and check solutions.
+If you want to create your own repository for solutions...
-[Installation](<#II-Fork-the-Repository-to-Create-Your-Own-leetcode-practice-Repository-(Option-B)>) · [Usage](#using-the-forked-project)
+Then, `leetcode-practice` is all you need!
-### Option C: Plugin (Supported)
+### 2. Preview
-You can also use our `leetcode-practice` plugin available in the plugin marketplace for interactive creation and checking of solutions. (Supported on two popular editors: `WebStorm` and `VS Code`)
+
-[Installation](<#III-Install-Plugins-from-the-Editor's-Marketplace-(Option-C)>) · [Usage](#plugin-usage)
+## II. Instructions for Use
-## Prerequisites
+### 0. Prerequisites
-| Dependency | Version |
-| ---------- | ------- |
-| nodejs | lts |
-| git | lts |
+| Tool | Remarks |
+| -------- | :---------------------------------------------: |
+| nodejs | lts |
+| git | lts |
+| computer | Ability to run Chrome and a code editor |
+| patience | A heart that can persist in practicing problems |
-> note: nodejs:[Node.js Installation Guide](https://nodejs.org/en/learn/getting-started/how-to-install-nodejs)
+> Note: nodejs: [Node.js Installation Guide](https://nodejs.org/en/learn/getting-started/how-to-install-nodejs)
>
-> git:[Git Download Link](https://git-scm.com/downloads)
+> git: [Git Download Page](https://git-scm.com/downloads)
-## Installation
+### 1. How Can I Use It? (Three Options for You to Choose From)
-### I. Global Installation of CLI (Option A)
+#### Option A. Command-Line Interface (CLI) (Recommended)
-You can install the CLI globally using any npm package manager such as `npm`, `yarn`, `pnpm`, etc.
-
-```shell
-# Using npm
-npm install -g leetcode-practice
-# Using pnpm
-pnpm install -g leetcode-practice
-# Using yarn
-yarn global install leetcode-practice
-```
+This option is the most recommended way to use the tool. You can freely create and check your solutions in any directory using the CLI commands `lc`, `lk`, and `lf`.
-### II. Fork the Repository to Create Your Own leetcode-practice Repository (Option B)
+> Usage Preview
-#### Regular Method
+#### Option B. Template Project (Supported)
-1. Open our project link: [leetcode-practice](https://github.com/wh131462/leetcode-practice)
+If you want to quickly create your own repository for solutions, you can use our template project to quickly create a GitHub project and get comprehensive initialization content.
-
+> Usage Preview
-2. Click the `fork` button
+#### Option C. Plugin (Supported, Under Development)
-You will see a page like this, then modify the repository name and description, make sure to check `Copy the master branch only`.
-
+If you want to create solutions in your editor by clicking buttons, you can use our editor plugin (planned support for `WebStorm` and `VSCode`) to create solutions in your editor.
-3. Click confirm to create, wait for creation
+> Usage Preview
-
+### 2. How Should I Use It? (Detailed Installation and Usage Guides for Three Options)
-4. Once created, pull this repository and start solving problems happily!
+#### Option A. Command-Line Interface (CLI)
-
+##### 1. Installation
-#### Simplified Method
-
-1. Pull our repository to your local machine
+You can install it globally or locally in your project using any npm package manager (e.g., `npm`, `yarn`, `pnpm`).
```shell
-git clone https://github.com/wh131462/leetcode-practice.git
-```
-
-2. Execute our deployment script
+# Example: Global Installation
+# Using npm for global installation
+npm install -g leetcode-practice
+# Using pnpm for installation
+pnpm install -g leetcode-practice
+# Using yarn for installation
+yarn global install leetcode-practice
-```shell
-# Use your preferred package manager to execute the script
-npm run easy-fork
+# Example: Installation in the Project
+yarn add --dev leetcode-practice
```
-3. Deployment completed
-
-### III. Install Plugins from the Editor's Marketplace (Option C)
+> Note: The difference between installing in the project and globally lies in the scope of the CLI commands. If installed in the project, the commands can only be used within that project, and cannot be used in other projects (where the `leetcode-practice` package is not installed). Global installation allows you to use the commands in any directory.
-To be developed...
+##### 2. Usage
-## Usage
+Here's a simple introduction to creating and checking daily questions, as well as using keyword search. For more detailed instructions and parameters, please refer to the [KFC and its Key Parameter Explanation](#3-kfc-and-its-key-parameter-explanation-universal-reference-manual) section.
-### Using CLI
+###### 2.1 Creating a Question
-#### 1. Creating Solutions - `lc`
-
-##### [1]. Get Today's Problem - [`-t`/`--today`]
-
-Type `lc` in the terminal to get today's problem in the current working directory by default.
+Within the command scope, use the command `lc` to create today's daily question:
```shell
+# Move to my workspace directory
+cd my-workspace
+# Create the daily question
lc
-# Full command
-lc -t
```
-Example of getting today's problem:
+When you see the prompt:
```shell
-# For example, the current execution directory is src
-➜ src git:(dev) ✗ lc
MODE: today
-Successfully obtained problem [2867.Count the Number of Valid Paths in a Tree]!
-Problem file address is: /home/wh131462/workspace/leetcode-practice/src/2867.count-valid-paths-in-a-tree/index.js
-```
-
-##### [2]. Get Specified Problem - [`-i`/`--identity`]
-
-Type `lc` followed by the corresponding problem number in the terminal to get the specified problem in the current working directory.
-
-```shell
-lc 1314
-# Full command
-lc -i 1314
-# Use double quotation marks (") to ensure accurate identification, especially for problem numbers with spaces
-lc -i "LCP 50"
+题目[299.猜数字游戏]获取成功!
+题目文件地址为:/my-workspace/299.bulls-and-cows/question.js
```
-Example of getting problem `LCP 50`:
+Your question has been created! You can now solve it happily in the editor!
-```shell
-➜ src git:(dev) ✗ lc "LCP 50"
-MODE: identity
-Successfully obtained problem [LCP 50.Supply of Jewel]!
-Problem file address is: /home/wh131462/workspace/leetcode-practice/src/LCP 50.WHnhjV/index.js
-```
-
-##### [3]. Get Random Problem - [`-r`/`--random`]
-
-Type `lc` followed by the `-r` parameter in the terminal to get a random problem in the current working directory. It will prioritize obtaining problems not currently in the directory.
-
-```shell
-# Full command
-lc -r
-```
+###### 2.2 Checking a Question
-Example of getting a random problem:
+Once you've written your solution code, you can use the `lk` command to perform a simple check of the solution!
```shell
-➜ src git:(dev) ✗ lc -r
-MODE: random
-Successfully obtained problem [14.Longest Common Prefix]!
-Problem file address is: /home/wh131462/workspace/leetcode-practice/src/14.longest-common-prefix/index.js
-```
-
-##### [5]. Easy Creation Mode (Interactive Creation) - [`-e`/`--easy`]
-
-In addition to creating problems quickly with precise commands as mentioned above, you can also use easy creation mode for interactive creation.
-
-```shell
-lc -e
-```
-
-Example of creating today's problem using easy mode:
-
-```shell
-➜ src git:(dev) ✗ lc -e
-? Select the problem creation mode: today
-? Create the problem [ 2867.count-valid-paths-in-a-tree ] in the directory [ /home/wh131462/workspace/leetcode-practice/src ]? Yes
-Problem [2867.count-valid-paths-in-a-tree] created!
-File address is: /home/wh131462/workspace/leetcode-practice/src/2867.count-valid-paths-in-a-tree/index.js
-
-```
-
-#### 2. Checking Solutions - `lk`
-
-##### [1]. Check Today's Solution [`-t`/`--today`]
-
-Type `lk` in the terminal to check today's solution in the current working directory.
-
-```shell
-# By default, check today's solution
+# The lk command corresponds to the lc command mode, and when used without parameters, it means checking today's question
lk
-# Full command
-lk -t
```
-Example of checking today's solution:
+You will receive information like this:
```shell
-# Specified src directory as the root directory
-workspace/leetcode-practice [dev●] » lk -d src -t
MODE: today
-Check result for problem [2581.Count Possible Trees]:
-```
-
-| index | Test Result | Expected Result | Execution Result | Execution Time | Memory Usage |
-| ----- | ----------- | --------------- | ---------------- | -------------- | ------------ |
-| 0 | 'Failed' | '3' | undefined | 0.0921ms | 2.52 KB |
-| 1 | 'Passed' | '5' | undefined | 0.0119ms | 2.66 KB |
-
-> Click to jump to problem submission:
-
-##### [2]. Check Specified Solution [`-i`/`--identity` + ``]
-
-Type `lk` followed by the problem number in the terminal to check the specified solution in the current working directory.
-
-```shell
-# Check specified solution
-lk 2581
-# Full command
-lk -i 2581
-# For problem numbers with spaces, use double quotation marks
-lk "LCP 50"
+题目[299.猜数字游戏]检测结果:
+┌────────────┬──────────────────────────────────────────┬──────────────────────────────────────────┬────────────┬────────────┐
+│ 测试结果 │ 预期结果 │ 执行结果 │ 执行用时 │ 内存占用 │
+├────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┼────────────┼────────────┤
+│ 通过 │ "1A3B" │ "1A3B" │ 0.1361ms │ 2.79 KB │
+│ 通过 │ "1A1B" │ "1A1B" │ 0.0623ms │ 2.93 KB │
+└────────────┴──────────────────────────────────────────┴──────────────────────────────────────────┴────────────┴────────────┘
+Click here to submit the question: https://leetcode-cn.com/problems/bulls-and-cows/
```
-Example of checking the specified solution:
+You can see the `Test Result`, `Expected Result`, `Execution Result`, `Execution Time`, and `Memory Usage` information.
-```shell
-workspace/leetcode-practice [dev●] » lk -d src 2581
-MODE: identity
-Check result for problem [2581.Count Possible Trees]:
-```
-
-| index | Test Result | Expected Result | Execution Result | Execution Time | Memory Usage |
-| ----- | ----------- | --------------- | ---------------- | -------------- | ------------ |
-| 0 | 'Passed' | '3' | '3' | 0.1668ms | 2.52 KB |
-| 1 | 'Passed' | '5' | '5' | 0.0234ms | 2.66 KB |
-
-> Click to jump to problem submission:
-
-##### [3]. Check Randomly Obtained Solution [`-r`/`--random`]
-
-Type `lk` followed by the `-r` parameter in the terminal to check the previously randomly obtained solution in the current working directory.
-
-```shell
-# Full command
-lk -r
-```
+###### 2.3 Searching for a Question
-Example of checking a randomly obtained solution:
+Keyword search is a basic function of the core command `lf`, which allows you to quickly search for the question you want and choose to create it.
```shell
-workspace/leetcode-practice [dev●] » lk -r
-MODE: random
-Check result for problem [41.First Missing Positive]:
-```
-
-| index | Test Result | Expected Result | Execution Result | Execution Time | Memory Usage |
-| ----- | ----------- | --------------- | ---------------- | -------------- | ------------ |
-| 0 | 'Failed' | '3' | undefined | 0.0896ms | 2.42 KB |
-| 1 | 'Failed' | '2' | undefined | 0.0110ms | 2.56 KB |
-| 2 | 'Failed' | '1' | undefined | 0.0045ms | 2.56 KB |
-
-> Click to jump to problem submission:
->
-> Note: Ensure that `lc -r` has been executed before this command to create a random problem.
-
-##### [4]. Easy Mode (Interactive Checking) [`-e`/`--easy`]
-
-Type `lk` followed by the `-e` parameter in the terminal to use interactive mode for checking the problem.
-
-```shell
-# Full command
-lk -e
+# The lf command is completely interactive. Follow the prompts to enter the desired information
+lf
```
-Example of checking the specified problem using easy mode:
+The following demonstrates how to use keyword search to create the `Two Sum` question:
```shell
-workspace/leetcode-practice [dev●] » lk -e
-? Select the mode of problem checking: identity
-? Enter the problem number: 41
-? Do you want to check the problem [ 41.first-missing-positive ] in the current directory [ /Users/mac-106/wh131462/workspace/leetcode-practice ]? Yes
-```
-
-| index | Test Result | Expected Result | Execution Result | Execution Time | Memory Usage |
-| ----- | ----------- | --------------- | ---------------- | -------------- | ------------ |
-| 0 | 'Failed' | '3' | undefined | 0.0969ms | 2.42 KB |
-| 1 | 'Failed' | '2' | undefined | 0.0139ms | 2.56 KB |
-| 2 | 'Failed' | '1' | undefined | 0.0051ms | 2.56 KB |
-
-> Click to jump to problem submission:
-> Problem [41.first-missing-positive] checked!
-> File address is: /Users/mac-106/wh131462/workspace/leetcode-practice/41.first-missing-positive/index.js
-
-#### 3. Problem Lookup - `lf`
-
-To be developed...
-
-##### [1]. View Problem List [To be developed]
-
-#### 4. Common Parameters
-
-##### [1]. Get or specify the current programming language - [-l/-language [language]]
-
-You can use -l without arguments to get the current programming language setting, or you can specify the language parameter to set the language environment of the current CLI to the specified language.
-
-```shell
-# This parameter behaves consistently in lc/lk/lf
-lc -l
-lk -l java
-```
+# After entering the keyword `two sum` and pressing Enter, all questions related to `two sum` will appear. Use the up and down arrow keys on the keyboard to select, and press Enter to confirm.
+? Choose the search mode? Keyword search
+? Enter keywords two sum
+? Choose a question
+ LCR 025.两数相加 II
+ 2.两数相加
+ 29.两数相除
+❯ 1.两数之和
+ LCR 006.两数之和 II - 输入有序数组
+ 445.两数相加 II
+ LCR 056.两数之和 IV - 输入二叉搜索树
+(Use arrow keys to reveal more choices)
-Usage example:
-
-```shell
-# Get language environment
-➜ leetcode-practice git:(dev) ✗ lc -l
-Current CLI language environment is: javascript
-# Change language environment
-➜ leetcode-practice git:(dev) ✗ lc -l java
-? Please confirm the language environment you want to set for the CLI (Press Enter to confirm if the option matches) java
-Setting language environment to: java
+# After confirmation, the question will be created, and a success message will be returned
+? Choose the search mode? Keyword search
+? Enter keywords two sum
+? Choose a question 1.两数之和
+1
+MODE: identity
+题目[1.两数之和]获取成功!
+题目文件地址为:fill:///my-workspace/1.two-sum/question.js:36
```
-Note: Unable to execute test cases in this environment.
-
-##### [2]. Specify Directory - [`-d`/`-directory`]
+> Note: When the creation is complete, a clickable file address will be output. If clicked in the editor console, it will directly open the corresponding file to the start of the function.
-The `create` and `check` commands can also use the `-d` parameter to specify a relative address based on the current working directory as the specified directory.
-When specifying a directory, the operation will be performed in that directory.
+#### Option B. Template Project
-```shell
-# Use the src directory as the generation directory
-lc -d src -t
-# Use the src directory as the check directory
-lk -d src -i
-```
+##### 1. Creating a Template Project
-Example:
-
-```shell
-➜ src git:(dev) ✗ lc -d src -t
-MODE: today
-Successfully obtained problem [2867.Count the Number of Valid Paths in a Tree]!
-Problem file address is: /home/wh131462/workspace/leetcode-practice/src/src/2867.count-valid-paths-in-a-tree/index.js
-```
+1. Open
-> Note: If the specified directory does not exist, an empty directory will be created.
+our template project [leetcodePracticeTemplate](https://github.com/EternalHeartTeam/LeetcodePracticeTemplate) on GitHub. 2. Click on `Use this template` in the upper right corner and select `Create a new repository`. 3. Fill in the information as you would when creating a normal repository. 4. Wait... and you're done. You now have your own `LeetCode solutions repository` and will receive long-term support from the `leetcode-practice` official team!
-##### [3]. Check Version [`-V`/`--version`]
+> Fill in the creation process chart
-```shell
-# Check lc version
-lc -V
-# Check lk version
-lk -V
-# Check lf version
-lf
+##### 2. Using the Template Project
- -V
-```
+###### 1. Clone the project and initialize the dependencies.
-Example of checking the lc version:
+e.g. Using my personal project as an example
```shell
-workspace/leetcode-practice [dev●] » lc -V
-0.0.0
+# This is just an example. Please clone your own project (when you attempt this, the project may have been cleared, which is a normal phenomenon, please don't be surprised)
+git clone git@github.com:wh131462/my-leetcode-practice.git
+# Move into the project directory
+cd my-leetcode-practice
+# Initialize
+npm i
```
-##### [4]. Update Check [`-u`/`--update`]
-
-Using the `-u` or `--update` parameter, you can check whether the current version is the latest version. If the current version is not the latest version, you will be prompted whether to update.
+###### 2. Usage in the project
-```shell
-lk -u
-lf -u
-lc -u
-```
+There are two ways to use the `leetcode-practice` in the template project: `project internal commands` and `npm scripts`. The process of creation is demonstrated below, and other command usages and parameters are consistent with the scaffold. Please refer to the [KFC and its Key Parameter Explanation](#3-kfc-and-its-key-parameter-explanation-universal-reference-manual) section.
```shell
-? Automatically detected environment is [ project ], if not, please make a selection, if yes, please press Enter to confirm. project
-Start getting version number in npm repository...
-Successfully obtained version number in npm repository!
-Start getting version number in github repository...
-Successfully obtained version number in github repository!
-Start getting local version number...
-Successfully obtained local version number!
-Current version:[ 1.0.0 ] npm package latest version:[ 1.0.1 ] github version:[ 1.0.1 ]
-? Detected [ project ] can update to version[ 1.0.1 ], whether to update? (Y/n) Yes
-Update completed~Enjoy your use~
+# Under the root directory of the project, execute npm run lc to create today's question. Because -d src is configured by default, the creation will be done under the src directory
+npm run lc
+# You can also use yarn: any package management tool you like
+yarn lc
```
-### Using the Forked Project
-
-#### [0]. Dependency Installation
-
-Before using, install dependencies using a package manager.
+You can also use the `lc` command to create, of course, you can only use our script in the project (if you haven't installed the `leetcode-practice` package globally).
```shell
-# Install dependencies
-npm install
-# Or use yarn (you can use any package manager you like)
-yarn
+# Using lc will create in the current working directory. If you need to keep consistent with the script's behavior (creating under src directory), please use the -d src parameter
+lc
```
-The commands in the forked project are the same as those in the CLI usage parameters, except that the scripts are executed through the package manager such as `npm run`.
-
-> Note: The only difference between the scripts in the project and the scaffolding is that the `-d` parameter is specified by default, pointing to the `src` directory at the root of the project, so all commands are executed by default in `src`.
+> Note: Here's an emphasis. The term "project internal command" means that the scope of the command is limited to the current project directory, meaning that if you try to use the lc command in another directory, you'll find that it doesn't work. Similarly, you'll find that when you first install it, the lc command doesn't work in the project until you close and reopen the terminal (terminal) to manually refresh the cache. npm script refers to a script command encapsulated under the scripts field in package.json.
-#### [1]. Create Solution [`lc`]
+###### 3. Updating Dependencies
-Refer to the `lc` part of the CLI for parameters: [lc](#1-creating-solutions---lc)
-
-Simple usage example:
+When you want to update, you can execute the encapsulated npm command `update`, which can help you install the `latest version (latest)` of `leetcode-practice`.
```shell
-# Execute using yarn
-yarn lc 1314
+# Execute using any package management tool
+npm run update
+# Of course, you can also execute the command yourself
+npm i --save-dev leetcode-practice
```
-Execution result:
+#### Option C. Plugin (Under Development)
-```shell
-# Generated in the src directory
-> yarn lc 1314
-yarn run v1.22.19
-$ node bin/lc.js -d src 1314
-MODE: identity
-Successfully obtained problem [1314.Matrix Block Sum]!
-Problem file address is:/Users/mac-106/wh131462/workspace/leetcode-practice/src/1314.matrix-block-sum/index.js
-✨ Done in 1.06s.
-```
+### 3. KFC and its Key Parameter Explanation (Universal Reference Manual)
-#### [2]. Check Solution [`lk`]
+#### [0]. What is KFC?
-Refer to the `lk` part of the CLI for parameters: [lk](#2-checking-solutions---lk)
+`KFC` is a simple mnemonic that can quickly remember our three core commands: `lk`, `lf`, and `lc`.
-Simple usage example:
+| Command | Explanation |
+| ------- | --------------------------------------------------------------------------------------------------------------------------------- |
+| lc | Core creation command, supports three creation modes (daily question, specified question, random question) for creating questions |
+| lk | Core checking command, supports three modes corresponding to the question for checking questions |
+| lf | Core search command, which can quickly search for the question you want based on prompts |
-```shell
-# Execute using yarn
-yarn lk 1314
-```
+#### [1]. lc
-Execution result:
+| Short Parameter | Full Parameter | Explanation |
+| ---------------------- | -------------- | ----------------------------------------------------------------------- |
+| No parameter / `-t` | `--today` | Create today's daily question |
+| Question number / `-i` | `--identity` | Create the question corresponding to the specified number |
+| `-r` | `--random` | Create a random question that has not appeared in the current directory |
+| `-e` | `--easy` | Interactive creation of questions |
-```shell
-# Checked in the src directory
-> yarn lk 1314
-yarn run v1.22.19
-$ node bin/lk.js -d src 1314
-MODE: identity
-Check result for problem [1314.Matrix Block Sum]:
-```
-
-| index | Test Result | Expected Result | Execution Result | Execution Time | Memory Usage |
-| ----- | ----------- | ------------------------------------ | ---------------- | -------------- | ------------ |
-| 0 | 'Failed' | '[[12,21,16],[27,45,33],[24,39,28]]' | undefined | 0.1487ms | 2.47 KB |
-| 1 | 'Failed' | '[[45,45,45],[45,45,45],[45,45,45]]' | undefined | 0.0278ms | 2.61 KB |
+#### [2]. lk
-> Click to jump to problem submission:
-> ✨ Done in 1.13s.
+| Short Parameter | Full Parameter | Explanation |
+| ---------------------- | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
+| No parameter / `-t` | `--today` | Check today's daily question |
+| Question number / `-i` | `--identity` | Check the question corresponding to the specified number, and check if the question with the specified ID exists in the current working directory |
+| `-r` | `--random` | Check the question created using the random mode last time |
+| `-e` | `--easy` | Interactive check of the corresponding question based on prompts |
-#### [3]. Look Up Solutions [`lf`]
+> Note: When checking, please pay attention to what mode to use for checking, and make sure that you have performed the corresponding mode creation operation.
+> The specified ID mode is an exception because it will check whether the specified ID exists in the current working directory.
-Refer to the `lf` part of the CLI for parameters: [lf](#3-problem-lookup---lf)
+#### [3]. lf
-To be developed...
+| Short Parameter | Full Parameter | Explanation |
+| --------------- | -------------- | ------------------------------------------------------------------------- |
+| No parameter | None | Enter interactive search, and search or filter questions based on prompts |
-#### [4]. Update [`update`]
+#### [4]. General Parameters
-This is a special script to update the local project, which updates all non-src directories to synchronize with the latest features of the project.
+| Short Parameter | Full Parameter | Explanation |
+| ---------------- | ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| `-d ` | `--directory ` | Specify the working directory (a relative address of the current execution directory), which will affect the creation and checking |
+| `-V` | `--version` | Check the version number |
+| `-h` | `--help` | Get help information |
+| `-l [language]` | `--language [language]` | Without specifying a parameter, get the current language environment (default is JavaScript). Specifying a parameter can set the language environment to the corresponding language (e.g., `-l java` sets the language environment to Java) |
+| `-u` | `--update` | Update the current script or dependency |
-> Note: If you have your own optimized code changes, be cautious about this step! Please refer to our [upgrade plan under special circumstances](./update.md)!
+> Note: General parameters refer to parameters supported by all three scripts `lk`, `lf`, and `lc`. The semantics of usage are generally the same, but there may be differences in the meanings of behaviors in some commands (for example, specifying the `-d` parameter in the `lc` command means `creating questions in the specified directory`, while in the `lk` command, specifying the `-d` parameter means `creating questions in the specified directory`).
-### Plugin Usage
+## III. Additional Information
-To be developed...
+### 1. Contributors
-## Contributors
+The development and improvement of the project would not be possible without the hard work of these contributors. Sincere thanks to all of them!
-## Feedback
+### 2. Feedback
+
+If you have any questions about usage or would like to offer some suggestions, feel free to join our feedback group!
-If you encounter any `issues` or have some `great suggestions`, feel free to join our `Feedback Group` for providing `feedback`! We will address them promptly!
+Engage in face-to-face discussions with developers in the group, hoping to resonate with each other and spark new ideas!
-
+
-## Star History
+### 3. Star Trend Chart
[](https://star-history.com/#EternalHeartTeam/leetcode-practice&Date)
diff --git a/README_CN.md b/README_CN.md
new file mode 100644
index 0000000..0d364a1
--- /dev/null
+++ b/README_CN.md
@@ -0,0 +1,300 @@
+# Leetcode practice
+
+**中文文档**|[English Document](./README.md)|[日本語の文書](./README_JP.md)
+
+## I.项目信息
+
+### 1.简介
+
+一句话介绍:“在编辑器中开始练习你的`leetcode`每日一题!”
+
+如果,你想要在编辑器中编写你的题解...
+
+如果,你想要简单快速的获取每日一题...
+
+如果,你想要创建你自己的题解仓库...
+
+那么,`leetcode-practice`将满足你的一切想要!
+
+### 2.预览
+
+
+
+## II.使用须知
+
+### 0. 预备条件
+
+| 工具 | 备注 |
+| -------- | :------------------------: |
+| nodejs | lts |
+| git | lts |
+| computer | 能够运行chrome和代码编辑器 |
+| patience | 一颗能够坚持刷题的心 |
+
+> note: nodejs:[nodejs安装向导](https://nodejs.org/en/learn/getting-started/how-to-install-nodejs)
+>
+> git:[git下载地址](https://git-scm.com/downloads)
+
+### 1. 我可以怎么用? (三种方案供你选择)
+
+#### 方案A.脚手架 CLI (推荐)
+
+此方案是最为推荐的使用方案,通过脚手架指令`lc`、`lk`、`lf`自由灵活的在任意的目录中创建并检查你的题解。
+
+> 使用预览
+
+#### 方案B.模板项目 Template project (支持)
+
+如果你想要快速的创建一个自己的题解库,可以使用我们的模板项目进行快速的创建github项目,并且获得完善的初始化内容。
+
+> 使用预览
+
+#### 方案C.插件 Plugin (支持,待开发)
+
+如果你想在编辑器中通过点击操作按钮来创建题解,可以使用我们的编辑器插件(计划支持`WebStorm`和`VSCode`)在你的编辑器中创建题解。
+
+> 使用预览
+
+### 2. 我应该怎么用?(三种方案的详细的安装和使用教程)
+
+#### 方案A.脚手架 CLI
+
+##### 1.安装
+
+你可以使用任意一款npm包管理软件(例如`npm`,`yarn`,`pnpm`等)的在`项目`中或者`全局`进行安装。
+
+```shell
+# 示例:全局安装
+# 使用npm进行全局安装
+npm install -g leetcode-practice
+# 使用pnpm进行安装
+pnpm install -g leetcode-practice
+# 使用yarn进行安装
+yarn global install leetcode-practice
+
+# 示例:在项目中安装
+yarn add --dev leetcode-practice
+```
+
+> 提示: 在项目中安装和全局安装的区别在于脚手架的作用范围不同。如果在项目中安装,那么指令只能在该项目内使用,而在其他项目中(未安装leetcode-practice包的情况下)则无法使用指令。而全局安装则允许在任何目录下使用指令。
+
+##### 2.使用
+
+在这里给大家简单介绍一下每日一题的`创建`和`检查`,还有关键词搜索的使用方式,最为详细具体的指令和参数请参照[KFC及其关键参数说明 ](#3-kfc及其关键参数说明-三种方案通用的参考手册)
+
+###### 2.1 创建题目
+
+在指令作用范围中,执行指令`lc`来进行创建今天的每日一题:
+
+```shell
+# 移动到我的工作目录中
+cd my-workspace
+# 创建每日一题
+lc
+```
+
+当看到提示:
+
+```shell
+MODE: today
+题目[299.猜数字游戏]获取成功!
+题目文件地址为:/my-workspace/299.bulls-and-cows/question.js
+```
+
+你的题目就已经创建完成了!可以在编辑器中愉快的解题了!
+
+###### 2.2 检查题目
+
+当你完成解题代码的编写,可以通过`lk`指令进行简单的检查题解!
+
+```shell
+# lk指令和lc指令的模式是对应的,不带参数的时候意为检查今日题目
+lk
+```
+
+你会得到如下提示信息:
+
+```shell
+MODE: today
+题目[299.猜数字游戏]检测结果:
+┌────────────┬──────────────────────────────────────────┬──────────────────────────────────────────┬────────────┬────────────┐
+│ 测试结果 │ 预期结果 │ 执行结果 │ 执行用时 │ 内存占用 │
+├────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┼────────────┼────────────┤
+│ 通过 │ "1A3B" │ "1A3B" │ 0.1361ms │ 2.79 KB │
+│ 通过 │ "1A1B" │ "1A1B" │ 0.0623ms │ 2.93 KB │
+└────────────┴──────────────────────────────────────────┴──────────────────────────────────────────┴────────────┴────────────┘
+点击跳转到题目提交: https://leetcode.cn/problems/bulls-and-cows/
+```
+
+你可以看到`测试结果`、`预期结果`、`执行结果`、`执行用时`以及`内存占用`信息。
+
+###### 2.3 搜索题目
+
+关键词搜索是核心指令`lf`的一项基本功能,可以通过关键词的形式获取题目信息,并快速的选择创建。
+
+```shell
+# lf指令是一个完全交互式的指令 按其中的提示进行输入操作即可获取自己想要的信息
+lf
+```
+
+以下演示获取`两数之和`这个题目如何通过关键词搜索创建:
+
+```shell
+# 在输入关键词 两数 之后 按下回车 会出现所有和两数相关的题目 按键盘的上下键进行选择 回车进行确认
+? 请选择查找的模式? 关键词搜索
+? 请输入关键词 两数
+? 请选择题目
+LCR 025.两数相加 II
+2.两数相加
+29.两数相除
+❯ 1.两数之和
+LCR 006.两数之和 II - 输入有序数组
+445.两数相加 II
+LCR 056.两数之和 IV - 输入二叉搜索树
+(Use arrow keys to reveal more choices)
+
+# 确认后的会进行题目创建,返回成功信息
+? 请选择查找的模式? 关键词搜索
+? 请输入关键词 两数
+? 请选择题目 1.两数之和
+1
+MODE: identity
+题目[1.两数之和]获取成功!
+题目文件地址为:fill:///my-workspace/1.two-sum/question.js:36
+```
+
+> 提示: 在创建完成的时候会输出一个可以点击跳转的文件地址,如果在编辑器的控制台中点击,会直接打开对应的文件的函数开始位置。
+
+#### 方案B.模板项目 Template project
+
+##### 1.创建模板项目
+
+1. 在`github`中打开我们的模板项目[leetcodePracticeTemplate](https://github.com/EternalHeartTeam/LeetcodePracticeTemplate)。
+2. `点击`右上角的`Use this template`,选择[`Create a new repository`](https://github.com/new?template_name=LeetcodePracticeTemplate&template_owner=EternalHeartTeam)。
+3. 就像创建一个正常的仓库一样去填写信息即可。
+4. 等待...然后完成,从此你就有了一个自己的`leetcode题解仓库`,并且长期受`leetcode-practice`官方支持!
+
+> 填充创建过程图
+
+##### 2. 使用模板项目
+
+###### 1. 拉取项目,并进行初始化依赖。
+
+e.g. 以我个人的项目为例
+
+```shell
+# 这里只是示例,请拉取自己的项目(在你看到这进行尝试的时候,此项目可能已经被清理,正常现象请勿疑惑)
+git clone git@github.com:wh131462/my-leetcode-practice.git
+# 移动进项目目录
+cd my-leetcode-practice
+# 初始化
+npm i
+```
+
+###### 2. 在项目中的使用
+
+在模板项目中使用`leetcode-practice`的方式有两种,一种是`项目内指令`的形式,一种是`npm脚本`的形式。接下来演示创建的过程,其他的指令用法和参数与脚手架一致,请参考[KFC及其关键参数说明](#3-kfc及其关键参数说明-三种方案通用的参考手册)部分。
+
+```shell
+# 在项目的根目录下 执行npm run lc 创建今日一题,因为默认配置了 -d src 所以 会在 src 目录下进行创建
+npm run lc
+# 也可以使用 yarn :任意一种你喜欢的包管理工具
+yarn lc
+```
+
+你也可以使用指令`lc`来创建,当然,你只能在项目中使用我们的脚本(如果你没有全局安装`leetcode-practice`的话)。
+
+```shell
+# 使用lc 会在当前工作目录创建 如果 需要和脚本的表现保持一致(指在src目录下创建),请使用 -d src 参数
+lc
+```
+
+> 注意:在这里进行一下强调,项目内指令的说法是指指令的作用范围限制是当前的项目目录,也就是说在其他的目录,你尝试使用lc指令会发现不起作用。
+>
+> 同样的,你也会发现在第一次安装好的时候,在项目内使用lc指令,也是不起作用的,这个时候需要关闭终端(terminal)再打开进行手动的刷新缓存。
+>
+> npm脚本指在 package.json 中的 scripts 字段下封装的脚本指令。
+
+###### 3. 更新依赖
+
+当你想要进行更新的时候,可以执行封装好的npm指令:`update`,可以帮你安装`最新版本(latest)`的`leetcode-practice`。
+
+```shell
+# 使用任意一种包管理工具执行即可
+npm run update
+# 当然你也可以自己执行指令
+npm i --save-dev leetcode-practice
+```
+
+#### 方案C.插件 Plugin (待开发)
+
+### 3. KFC及其关键参数说明 (三种方案通用的参考手册)
+
+#### [0].什么是KFC?
+
+`KFC`是一个简便记法,可以快速记忆我们的三个核心指令:`lk`,`lf`,`lc`。
+
+| 指令 | 说明 |
+| ---- | ------------------------------------------------------------------------------------------------------ |
+| lc | 核心创建指令,支持三种创建模式 ( 每日一题、指定题目、随机题目 ) 进行题目的创建 |
+| lk | 核心检查指令,支持三种模式对应的题目检测 |
+| lf | 核心查找指令,可以快捷的搜索你想要的题目,支持Hot100,关键词搜索,条件筛选等模式进行搜索题目并支持创建 |
+
+#### [1].lc
+
+| 简单参数 | 完整参数 | 说明 |
+| ------------- | ------------ | -------------------------------- |
+| 无参数/`-t` | `--today` | 创建今日的每日一题 |
+| 题目编号/`-i` | `--identity` | 创建指定编号对应的题目 |
+| `-r` | `--random` | 创建当前目录下未出现过的随机题目 |
+| `-e` | `--easy` | 交互式创建题目 |
+
+#### [2].lk
+
+| 简单参数 | 完整参数 | 说明 |
+| ------------- | ------------ | ---------------------------------------------------------------------- |
+| 无参数/`-t` | `--today` | 检查今日的每日一题 |
+| 题目编号/`-i` | `--identity` | 检查指定编号对应的题目,会检查当前工作目录下的是否存在指定id对应的题目 |
+| `-r` | `--random` | 检查上一次使用随机模式创建的题目 |
+| `-e` | `--easy` | 交互式的根据提示去检查对应的题目 |
+
+> 注意: 当你检测的时候需要注意,使用什么模式去检查,请确保你已经执行过对应模式的创建操作。
+> 指定编号模式除外,因为会优先检查指定的id是否在当前工作目录存在。
+
+#### [3].lf
+
+| 简单参数 | 完整参数 | 说明 |
+| -------- | -------- | -------------------------------------------------- |
+| 无参数 | 无 | 进入交互式查询,可根据提示搜索或筛选题目并创建题目 |
+
+#### [4].通用参数
+
+| 简单参数 | 完整参数 | 说明 |
+| ---------------- | ------------------------- | ---------------------------------------------------------------------------------------------------------------------- |
+| `-d ` | `--directory ` | 指定工作目录(是一个当前执行目录的相对地址),会影响创建和检查 |
+| `-V` | `--version` | 检查版本号 |
+| `-h` | `--help` | 获取帮助信息 |
+| `-l [language]` | `--language [language]` | 不指定参数为获取当前的语言环境(默认为javascript),指定参数可以设置语言环境为对应语言(如`-l java`可以指定语言环境为java) |
+| `-u` | `--update` | 更新当前脚本或者依赖 |
+
+> 注意:通用参数指三个脚本`lk`,`lf`,`lc`都支持的参数,使用上的语义一般来说是相同的,但是可能有些指令上的行为含义会有所不同(比如`lc`指令指定`-d`参数是指`在指定目录中创建题目`,而`lk`指令指定`-d`参数就是指`在指定目录创建题目`)。
+
+## III.其他信息
+
+### 1. 贡献者们
+
+项目的开发和完善离不开这些贡献者的辛勤付出,在此真诚感谢各位大佬的付出!
+
+
+
+### 2.使用反馈
+
+如果你有使用上的问题需要解惑,或者一些好的建议想要提出,可以加我们的使用反馈群进行反馈!
+
+在群里和开发者面对面的交流,希望我们能产生共鸣,迸发出新的火花!
+
+
+
+### 3.Star趋势图
+
+[](https://star-history.com/#EternalHeartTeam/leetcode-practice&Date)
diff --git a/README_JP.md b/README_JP.md
new file mode 100644
index 0000000..ae0b4dd
--- /dev/null
+++ b/README_JP.md
@@ -0,0 +1,291 @@
+# Leetcode practice
+
+[中文文档](./README_CN.md)|[English Document](./README.md)|**日本語の文書**
+
+## I.プロジェクト情報
+
+### 1.概要
+
+一文で述べると、「エディタで毎日の`leetcode`問題を練習し始めましょう!」
+
+もし、エディタで問題を解きたい場合...
+
+もし、簡単で迅速に毎日の問題を取得したい場合...
+
+もし、自分の解答リポジトリを作成したい場合...
+
+そのすべてができるのが`leetcode-practice`です!
+
+### 2.プレビュー
+
+
+
+## II.使用上の注意
+
+### 0.前提条件
+
+| ツール | 備考 |
+| ------------ | :----------------------------------------------: |
+| nodejs | lts |
+| git | lts |
+| コンピュータ | chromeとコードエディタを実行できる必要があります |
+| 我慢 | 問題を解き続けるための心 |
+
+> ノート: nodejs:[nodejsのインストールガイド](https://nodejs.org/en/learn/getting-started/how-to-install-nodejs)
+>
+> git:[gitのダウンロードリンク](https://git-scm.com/downloads)
+
+### 1. どう使えるのか? (3つの選択肢)
+
+#### オプションA.スクリプトCLI (おすすめ)
+
+この方法は、自由自在に`lc`、`lk`、`lf`のスクリプトコマンドを使用して、任意のディレクトリで問題を作成およびチェックするためにお勧めされています。
+
+> 使用例
+
+#### オプションB.テンプレートプロジェクト (サポート)
+
+自分の解答リポジトリを素早く作成したい場合は、当社のテンプレートプロジェクトを使用して、GitHubプロジェクトを素早く作成し、初期化されたコンテンツを取得できます。
+
+> 使用例
+
+#### オプションC.プラグイン (サポート、開発中)
+
+エディタで問題を作成するためにクリック操作を使用したい場合は、当社のエディタプラグイン(予定では`WebStorm`および`VSCode`をサポート)を使用して、エディタで問題を作成できます。
+
+> 使用例
+
+### 2. どうすればいいですか?(3つの選択肢の詳細なインストールおよび使用手順)
+
+#### オプションA.スクリプトCLI
+
+##### 1.インストール
+
+`lc`、`lk`、`lf`のスクリプトを使用して、任意のnpmパッケージ管理ソフトウェア(たとえば*`npm`*、_`yarn`_、*`pnpm`*など)で`プロジェクト`または`グローバル`にインストールできます。
+
+```shell
+# 例:グローバルインストール
+# npmを使用してグローバルにインストール
+npm install -g leetcode-practice
+# pnpmを使用してインストール
+pnpm install -g leetcode-practice
+# yarnを使用してインストール
+yarn global install leetcode-practice
+
+# 例:プロジェクト内のインストール
+yarn add --dev leetcode-practice
+```
+
+> ヒント: プロジェクト内およびグローバルインストールの違いは、スクリプトの範囲が異なることです。プロジェクト内でインストールすると、スクリプトはそのプロジェクト内でのみ使用できますが、他のプロジェクトでは(leetcode-practiceパッケージがインストールされていない場合)スクリプトを使用できません。一方、グローバルインストールでは、どのディレクトリでもスクリプトを使用できます。
+
+##### 2.使用
+
+ここでは、毎日の`作成`および`チェック`、およびキーワード検索の方法を簡単に説明します。詳細なスクリプトとパラメータについては、[KFCとその重要なパラメータの説明](#3-kfcとその重要なパラメータの説明-3つのオプション共通のリファレンスガイド)を参照してください。
+
+###### 2.1 問題の作成
+
+スクリプトの範囲内で、指定の日の毎日の問題を作成するには、`lc`を実行します。
+
+```shell
+# 私の作業ディレクトリに移動する
+cd my-workspace
+# 毎日の問題を作成する
+lc
+```
+
+次のプロンプトが表示されると:
+
+```shell
+MODE: today
+問題[299.猜数字游戏]を取得しました!
+問題ファイルの場所:/my-workspace/299.bulls-and-cows/question.js
+```
+
+問題は作成されました!エディタで問題を解く準備ができました!
+
+###### 2.2 問題のチェック
+
+問題の解答コードを書き終えたら、`lk`スクリプトを使用して問題の簡単なチェックを行うことができます!
+
+```shell
+# lkスクリプトはlcスクリプトと対応しています。パラメータなし
+
+の場合、今日の問題をチェックすることを意味します
+lk
+```
+
+以下のようなメッセージが表示されます:
+
+```shell
+MODE: today
+問題[299.猜数字游戏]のテスト結果:
+┌────────────┬──────────────────────────────────────────┬──────────────────────────────────────────┬────────────┬────────────┐
+│ テスト結果 │ 期待結果 │ 実行結果 │ 実行時間 │ メモリ使用量 │
+├────────────┼──────────────────────────────────────────┼──────────────────────────────────────────┼────────────┼────────────┤
+│ パス │ "1A3B" │ "1A3B" │ 0.1361ms │ 2.79 KB │
+│ パス │ "1A1B" │ "1A1B" │ 0.0623ms │ 2.93 KB │
+└────────────┴──────────────────────────────────────────┴──────────────────────────────────────────┴────────────┴────────────┘
+問題提出へのリンクをクリックしてください: https://leetcode.cn/problems/bulls-and-cows/
+```
+
+`テスト結果`、`期待結果`、`実行結果`、`実行時間`、`メモリ使用量`の情報が表示されます。
+
+###### 2.3 問題の検索
+
+キーワード検索は、`lf`スクリプトの主要な機能の1つです。キーワードの形式で問題情報を取得し、簡単に作成できます。
+
+```shell
+# lfスクリプトは完全なインタラクティブなスクリプトで、プロンプトに従って入力操作を行うことで、希望する情報を簡単に取得できます
+lf
+```
+
+以下は、`two-sum`問題をキーワードで検索して作成する方法の例です。
+
+```shell
+# キーワード "two sum" を入力し、Enterキーを押すと、すべての"two sum"に関連する問題が表示されます。キーボードの上下キーを使用して選択し、Enterキーを押して確認します。
+? 検索モードを選択してください? キーワード検索
+? キーワードを入力してください 二つの数
+? 問題を選んでください 1.两数之和
+1
+MODE: identity
+問題[1.两数之和]を取得しました!
+問題ファイルの場所:fill:///my-workspace/1.two-sum/question.js:36
+```
+
+> 注意: 作成時に、クリック可能なファイルパスが表示され、エディタのコンソールでクリックすると、対応するファイルの関数の開始位置が直接開きます。
+
+#### オプションB.テンプレートプロジェクト
+
+##### 1.テンプレートプロジェクトの作成
+
+1. GitHubでテンプレートプロジェクト[leetcodePracticeTemplate](https://github.com/EternalHeartTeam/LeetcodePracticeTemplate)を開きます。
+2. 右上隅の`Use this template`をクリックし、[`Create a new repository`](https://github.com/new?template_name=LeetcodePracticeTemplate&template_owner=EternalHeartTeam)を選択します。
+3. 通常のリポジトリの作成と同様に情報を入力します。
+4. しばらく待ちます...そして完了です。これで、自分の`leetcode解答リポジトリ`ができました!
+
+> 作成プロセスの準備画像
+
+##### 2. テンプレートプロジェクトの使用
+
+###### 1. プロジェクトをクローンし、依存関係を初期化します。
+
+例: 個人的なプロジェクトを使用します。
+
+```shell
+# これは例です。自分のプロジェクトをクローンしてください。(あなたがこれを試している時点で、このプロジェクトはもうクリアされているかもしれませんが、正常な現象なので疑わないでください)
+git clone git@github.com:wh131462/my-leetcode-practice.git
+# プロジェクトディレクトリに移動
+cd my-leetcode-practice
+# 初期化
+npm i
+```
+
+###### 2. プロジェクト内での使用
+
+テンプレートプロジェクトでは、`leetcode-practice`を使用する方法は2つあります。1つは`プロジェクト内コマンド`の形式、もう1つは`npmスクリプト`の形式です。詳細な使い方とパラメータについては、[KFCとその重要なパラメータの説明](#3-kfcとその重要なパラメータの説明-3つのオプション共通のリファレンスガイド)を参照してください。
+
+```shell
+# ルートディレクトリで実行するnpm run lc コマンドを使用して、今日の問題を作成します。デフォルトで -d src を設定しているため、src ディレクトリ内で作成されます
+npm run lc
+# または yarn: 好きなどちらかのパッケージ管理ツールを使用できます
+yarn lc
+```
+
+あなたはまた、`lc`コマンドを使用して作成することもできますが、あなたはプ
+
+ロジェクト内でしかスクリプトを使用できません(あなたが`leetcode-practice`をグローバルにインストールしていない場合)。
+
+```shell
+# ここでの注意点として、プロジェクト内コマンドとは、コマンドの作用範囲が現在のプロジェクトディレクトリに限定されることを意味します。つまり、他のディレクトリで lc コマンドを試しても効果はありません。
+# 同様に、最初にインストールしたときに、プロジェクト内で lc コマンドを使用しても、そのコマンドが機能しない場合があります。この場合は、ターミナル(terminal)を閉じて再度開いて、キャッシュを手動で更新する必要があります。
+# npmスクリプトは、package.jsonのscriptsフィールドにエンベロープされたスクリプトコマンドのことです。
+
+# lcコマンドを使用して作成することもできますが、その場合はプロジェクト内でしか使用できません(あなたが"leetcode-practice"をグローバルにインストールしていない場合)。
+lc
+```
+
+> 注意: ここで強調すると、プロジェクト内コマンドは、コマンドの作用範囲が現在のプロジェクトディレクトリに限定されることを意味します。つまり、他のディレクトリで `lc` コマンドを試しても効果はありません。同様に、最初にインストールしたときに、プロジェクト内で `lc` コマンドを使用しても、そのコマンドが機能しない場合があります。この場合は、ターミナル(terminal)を閉じてから再度開き、キャッシュを手動で更新する必要があります。npmスクリプトは、package.jsonのscriptsフィールドにエンベロープされたスクリプトコマンドのことです。
+
+###### 3. 依存関係の更新
+
+更新したい場合は、`update`という名前の封印されたnpmコマンドを使用して、`最新バージョン(latest)`の`leetcode-practice`をインストールできます。
+
+```shell
+# どちらかのパッケージ管理ツールを使用して実行できます
+npm run update
+# もちろん、コマンドを手動で実行することもできます
+npm i --save-dev leetcode-practice
+```
+
+#### オプションC.プラグイン(開発中)
+
+### 3. KFCとその重要なパラメータの説明 (3つのオプション共通のリファレンスガイド)
+
+#### [0].KFCとは?
+
+`KFC`は、当社の3つの主要コマンド`lk`、`lf`、`lc`を素早く覚えるための簡単な記憶法です。
+
+| コマンド | 説明 |
+| -------- | ------------------------------------------------------------------------------------------------------------------------- |
+| lc | 主要な作成コマンドであり、3つの作成モード(毎日の問題、指定された問題、ランダムな問題)をサポートし、問題の作成を行います |
+| lk | 主要なチェックコマンドであり、3つのモードに対応する問題のチェックを行います |
+| lf | 主要な検索コマンドであり、Hot100、キーワード検索、条件検索などのモードで問題を検索し、問題を作成します |
+
+#### [1]. lc (問題の作成)
+
+| 簡易パラメータ | 完全パラメータ | 説明 |
+| -------------- | -------------- | -------------------------------------------- |
+| 無し/`-t` | `--today` | 今日の毎日の問題を作成します。 |
+| 問題番号/`-i` | `--identity` | 指定された番号に対応する問題を作成します。 |
+| `-r` | `--random` | まだ現れていないランダムな問題を作成します。 |
+| `-e` | `--easy` | インタラクティブに問題を作成します。 |
+
+#### [2]. lk (問題のチェック)
+
+| 簡易パラメータ | 完全パラメータ | 説明 |
+| -------------- | -------------- | ------------------------------------------------------------------------------------------------------------------ |
+| 無し/`-t` | `--today` | 今日の毎日の問題をチェックします。 |
+| 問題番号/`-i` | `--identity` | 指定された番号に対応する問題をチェックします。指定されたIDが現在の作業ディレクトリに存在するかどうかも確認します。 |
+| `-r` | `--random` | 最後に使用されたランダムモードで作成された問題をチェックします。 |
+| `-e` | `--easy` | インタラクティブにプロンプトに従って問題をチェックします。 |
+
+> 注意: チェックする際は、どのモードを使用するかに注意してください。対応するモードの作成操作をすでに実行したことを確認してください。
+> 指定番号モードは例外であり、作成されていない問題をチェックすることもできます。
+
+#### [3]. lf (問題の検索)
+
+| 簡易パラメータ | 完全パラメータ | 説明 |
+| -------------- | -------------- | -------------------------------------------------------------------------------------------------------- |
+| 無し | 無し | インタラクティブにクエリに入り、ヒントに従って問題を検索したりフィルタリングしたりして問題を作成します。 |
+
+#### [4]. 汎用パラメータ
+
+| 簡易パラメータ | 完全パラメータ | 説明 |
+| ---------------- | ------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| `-d ` | `--directory ` | 作業ディレクトリを指定します(現在の実行ディレクトリの相対パス)。これは作成とチェックの両方に影響を与えます。 |
+| `-V` | `--version` | バージョン番号を確認します。 |
+| `-h` | `--help` | ヘルプ情報を取得します。 |
+| `-l [language]` | `--language [language]` | パラメータなしで現在の言語環境を取得します(デフォルトはJavaScript)。言語を指定すると、その言語の環境が設定されます(たとえば、`-l java`でJavaの環境が設定されます)。 |
+| `-u` | `--update` | 現在のスクリプトまたは依存関係を更新します。 |
+
+> 注意: 汎用パラメータは`lk`,`lf`,`lc`の3つのスクリプトでサポートされていますが、その使用法の意味論は一般的には同じですが、いくつかの指示には異なる挙動が含まれる場合があります(たとえば、`lc`コマンドで`-d`パラメータを指定した場合は、`指定したディレクトリ内で問題を作成`するのに対し、`lk`コマンドで`-d`パラメータを指定すると`指定したディレクトリに問題をチェック`します)。
+
+## III. その他の情報
+
+### 1. 貢献者たち
+
+このプロジェクトの開発と改善には、これらの貢献者のご努力が不可欠です。ここに、すべての方々に心から感謝いたします!
+
+
+
+### 2. 使用フィードバック
+
+使用上の問題がある場合や、提案がある場合は、使用フィードバックグループにご参加ください!
+
+グループで開発者と対面してコミュニケーションを取り、新たなアイデアを生み出すことを願っています!
+
+
+
+### 3. Starのトレンドチャート
+
+[](https://star-history.com/#EternalHeartTeam/leetcode-practice&Date)
diff --git a/common/utils/question-getter/getPlanQuestionList.js b/common/utils/question-getter/getPlanQuestionList.js
new file mode 100644
index 0000000..0b5e54f
--- /dev/null
+++ b/common/utils/question-getter/getPlanQuestionList.js
@@ -0,0 +1,10 @@
+import { graphql } from '#common/utils/http/graphql.js'
+import { getPlanQuestionListJson } from '#resources/headers/planQuestionListJson.js'
+
+export async function getPlanQuestionList(slug) {
+ const res = await graphql(getPlanQuestionListJson(slug))
+ const {
+ data: { studyPlanV2Detail }
+ } = res
+ return studyPlanV2Detail
+}
diff --git a/common/utils/question-getter/getQuestionListHot100.js b/common/utils/question-getter/getQuestionListHot100.js
deleted file mode 100644
index 2c1f32b..0000000
--- a/common/utils/question-getter/getQuestionListHot100.js
+++ /dev/null
@@ -1,10 +0,0 @@
-import { graphql } from '#common/utils/http/graphql.js'
-import { getQuestionListHot100Json } from '#resources/headers/questionListHot100Json.js'
-
-export async function getQuestionListHot100() {
- const res = await graphql(getQuestionListHot100Json())
- const {
- data: { studyPlanV2Detail }
- } = res
- return studyPlanV2Detail
-}
diff --git a/common/utils/question-getter/getStudyPlanList.js b/common/utils/question-getter/getStudyPlanList.js
new file mode 100644
index 0000000..e1cc5fd
--- /dev/null
+++ b/common/utils/question-getter/getStudyPlanList.js
@@ -0,0 +1,10 @@
+import { graphql } from '#common/utils/http/graphql.js'
+import { getStudyPlanListJson } from '#resources/headers/studyPlanListJson.js'
+
+export async function getStudyPlanList() {
+ const res = await graphql(getStudyPlanListJson())
+ const {
+ data: { studyPlansV2AdQuestionPage }
+ } = res
+ return studyPlansV2AdQuestionPage
+}
diff --git a/common/utils/question-handler/getHot100QuestionListCode.js b/common/utils/question-handler/getHot100QuestionListCode.js
index 752f88b..d3a6d8b 100644
--- a/common/utils/question-handler/getHot100QuestionListCode.js
+++ b/common/utils/question-handler/getHot100QuestionListCode.js
@@ -1,10 +1,10 @@
import path from 'node:path'
import { createQuestionByTitleSlug } from '../create-check/createUtil.js'
-import { getQuestionListHot100 } from '#common/utils/question-getter/getQuestionListHot100.js'
+import { getPlanQuestionList } from '#common/utils/question-getter/getPlanQuestionList.js'
// 获取题目列表
export async function getTitleSlugList() {
- const res = await getQuestionListHot100()
+ const res = await getPlanQuestionList()
const { planSubGroups } = res
return planSubGroups.reduce((acc, cur) => {
acc.push(...cur.questions.map((res) => res.titleSlug))
diff --git a/common/view/finder.view.js b/common/view/finder.view.js
index b190155..c10ef78 100644
--- a/common/view/finder.view.js
+++ b/common/view/finder.view.js
@@ -1,38 +1,58 @@
import select from '@inquirer/select'
import input from '@inquirer/input'
-import {
- getHot100QuestionListCode,
- getTitleSlugList
-} from '#common/utils/question-handler/getHot100QuestionListCode.js'
+// import { getHot100QuestionListCode } from '#common/utils/question-handler/getHot100QuestionListCode.js'
import {
createQuestionById,
createQuestionByTitleSlug
} from '#common/utils/create-check/createUtil.js'
import { getQuestionByKeyword } from '#common/utils/question-getter/getQuestionByKeyword.js'
+import { getStudyPlanList } from '#common/utils/question-getter/getStudyPlanList.js'
+import { getPlanQuestionList } from '#common/utils/question-getter/getPlanQuestionList.js'
-async function hotMode(baseDir = process.cwd()) {
+async function studyMode(baseDir = process.cwd()) {
+ const questionList = await getStudyPlanList()
+ const planListMode = {
+ message: '请选择学习计划',
+ choices: questionList.map((item) => ({
+ name: `${item.name}${item.premiumOnly ? '(VIP)' : ''}`,
+ value: item.slug
+ }))
+ }
+ const planSlug = await select(planListMode)
const createMode = await select({
message: '拉题模式',
choices: [
{ name: '单个选择', value: 'single' },
- { name: '全部拉取', value: 'all' }
+ { name: '全部拉取(暂不支持)', value: 'all' }
]
})
if (createMode === 'single') {
- const titleSlugList = await getTitleSlugList()
+ const { planSubGroups } = await getPlanQuestionList(planSlug)
+ const planList = planSubGroups.reduce((acc, cur) => {
+ acc.push(
+ ...cur.questions.map((res) => {
+ return {
+ cnTitle: res.translatedTitle,
+ enTitle: res.titleSlug
+ }
+ })
+ )
+ return acc
+ }, [])
const singleMode = {
message: '请选择题目?',
- choices: titleSlugList.map((res) => ({
- name: res,
- value: res
+ choices: planList.map((res) => ({
+ name: res.cnTitle,
+ value: res.enTitle
}))
}
const singleChoice = await select(singleMode)
await createQuestionByTitleSlug(singleChoice, baseDir)
}
- if (createMode === 'all') await getHot100QuestionListCode()
+ if (createMode === 'all') console.log('暂不支持')
+ // await getHot100QuestionListCode()
}
async function keywordMode(baseDir = process.cwd()) {
@@ -54,6 +74,7 @@ async function keywordMode(baseDir = process.cwd()) {
console.log(chooseQuestion)
await createQuestionById(chooseQuestion, baseDir)
}
+
async function selectMode(baseDir) {
console.log(baseDir)
}
@@ -61,12 +82,8 @@ async function selectMode(baseDir) {
export async function easyFinderView(baseDir = process.cwd()) {
const choices = [
{ name: '关键词搜索', value: 'keyword', description: '关键词描述' },
- {
- name: 'hot 100列表查询',
- value: 'hot',
- description: '最受欢迎的100道题目'
- }
- // { name: '筛选模式', value: 'select', description: '筛选题目' }
+ { name: '学习计划', value: 'study', description: '企业和经典面试题目列表' },
+ { name: '筛选模式', value: 'select', description: '筛选题目' }
]
const modeQuestion = {
@@ -76,7 +93,7 @@ export async function easyFinderView(baseDir = process.cwd()) {
const mode = await select(modeQuestion)
const modeMap = {
- hot: hotMode,
+ study: studyMode,
keyword: keywordMode,
select: selectMode
}
diff --git a/directory.md b/directory.md
deleted file mode 100644
index 62acc61..0000000
--- a/directory.md
+++ /dev/null
@@ -1,16 +0,0 @@
-# 目录结构
-
-```tree
-.
-├── bin # 指令入口目录
-├── common # 通用目录
-│ ├── resources # 通用资源目录
-│ ├── structures # 数据结构目录
-│ ├── utils # 通用工具目录
-│ └── view # 交互视图相关脚本
-├── coverage # 测试覆盖图目录
-├── resources # 资源目录(存放图片和一些静态内容)
-├── scripts # 项目脚本存放目录
-├── src # 问题存放的默认目录
-└── test # 测试目录
-```
diff --git a/docs/README_CN.md b/docs/README_CN.md
deleted file mode 100644
index 0958fbe..0000000
--- a/docs/README_CN.md
+++ /dev/null
@@ -1,499 +0,0 @@
-# Leetcode practice
-
-**中文文档**|[英文文档](../README.md)|[日文文档](./README_JP.md)|[韩文文档](./README_KR.md)
-
-## 简介
-
-一句话介绍:“在编辑器中开始练习你的`leetcode`每日一题!”
-
-如果,你想要在编辑器中编写你的题解...
-
-如果,你想要简单快速的获取每日一题...
-
-如果,你想要创建你自己的题解仓库...
-
-那么,`leetcode-practice`将满足你的一切想要!
-
-## 预览
-
-
-
-## 我应该怎么使用?(三种方案供你选择)
-
-### 方案 A : CLI (推荐使用)
-
-最好的也是最自由的使用方法是:在终端中使用我们的脚手架,通过三个核心指令:`lk`,`lf`,`lc`,来创建和检查你的题解。
-
-[安装](<#一全局安装脚手架-(方案-A)>) · [使用](#CLI的使用)
-
-### 方案 B : fork (受支持的)
-
-你也可以使用`github`的`fork`功能来创建我们的项目副本,然后,直接使用项目内置指令进行题解的创建和检查。
-
-[安装](<#二使用fork创建你自己的leetcode-practice仓库副本-(方案-B)>) · [使用](#fork项目的使用)
-
-### 方案 C : plugin (受支持的)
-
-你同样可以使用我们发布在插件市场的插件`leetcode-practice`来进行交互式的创建和检查题解。(支持两个主流编辑器:`WebStorm` 和 `VS Code`)
-
-[安装](<#三在编辑器的插件市场安装插件-(方案-C)>) · [使用](#插件的使用)
-
-## 预备条件
-
-| 依赖包 | 版本 |
-| ------ | ---- |
-| nodejs | lts |
-| git | lts |
-
-> note: nodejs:[nodejs安装向导](https://nodejs.org/en/learn/getting-started/how-to-install-nodejs)
->
-> git:[git下载地址](https://git-scm.com/downloads)
-
-## 安装
-
-### 一.全局安装脚手架 (方案 A)
-
-你可以使用任意npm包管理软件(例如`npm`,`yarn`,`pnpm`等)的全局安装方法进行安装。
-
-```shell
-# 使用npm进行安装
-npm install -g leetcode-practice
-# 使用pnpm进行安装
-pnpm install -g leetcode-practice
-# 使用yarn进行安装
-yarn global install leetcode-practice
-```
-
-### 二.使用fork创建你自己的leetcode-practice仓库副本 (方案 B)
-
-#### 常规方法
-
-1. 打开我们的项目地址:[leetcode-practice](https://github.com/wh131462/leetcode-practice)
-
-
-
-2. 点击`fork`按钮
-
-你会看到这样的一个页面,然后修改仓库名和描述,确认勾选`Copy the master branch only`
-
-
-3. 点击确认创建,等待创建
-
-
-
-4. 创建完成,然后拉取这个仓库愉快地开始你的解题吧!
-
-
-
-#### 简便方法
-
-1. 拉取我们的仓库到本地
-
-```shell
-git clone https://github.com/wh131462/leetcode-practice.git
-```
-
-2. 执行我们的部署脚本
-
-```shell
-# 使用你喜欢的包管理器进行执行脚本即可
-npm run easy-fork
-```
-
-3. 完成部署
-
-### 三.在编辑器的插件市场安装插件 (方案 C)
-
-待开发...
-
-## 使用方法
-
-### CLI的使用
-
-#### 1.创建题解 - `lc`
-
-##### [1]. 获取今日题目 - [`-t`/`--today`]
-
-在终端中键入`lc`指令,即可默认在当前终端的工作区中获取今日的题目。
-
-```shell
-lc
-# 完整指令
-lc -t
-```
-
-示例获取今日题目:
-
-```shell
-# 例如当前执行目录为src目录
-➜ src git:(dev) ✗ lc
-MODE: today
-题目[2867.统计树中的合法路径数目]获取成功!
-题目文件地址为:/home/wh131462/workspace/leetcode-practice/src/2867.count-valid-paths-in-a-tree/index.js
-```
-
-##### [2]. 获取指定题目 - [`-i`/`--identity`]
-
-在终端中键入`lc`指令加上对应的题号,即可在当前工作区中获取指定题目。
-
-```shell
-lc 1314
-# 完整指令
-lc -i 1314
-# 使用双引号(")进行包裹 可以确保指定编号准确,对于带空格的题目编号尤其有用
-lc -i "LCP 50"
-```
-
-示例获取`LCP 50`:
-
-```shell
-➜ src git:(dev) ✗ lc "LCP 50"
-MODE: identity
-题目[LCP 50.宝石补给]获取成功!
-题目文件地址为:/home/wh131462/workspace/leetcode-practice/src/LCP 50.WHnhjV/index.js
-```
-
-##### [3]. 获取随机题目 - [`-r`/`--random`]
-
-在终端中键入`lc`指令加上参数`-r`,即可在当前工作区中获取随机题目,会优先获取不存在当前目录中的题目。
-
-```shell
-# 完整指令
-lc -r
-```
-
-示例获取随机题目:
-
-```shell
-➜ src git:(dev) ✗ lc -r
-MODE: random
-题目[14.最长公共前缀]获取成功!
-题目文件地址为:/home/wh131462/workspace/leetcode-practice/src/14.longest-common-prefix/index.js
-```
-
-##### [4]. 简单创建模式(交互式创建) - [`-e`/`--easy`]
-
-除了如上的使用精准的指令快速创建题目外,还可以使用简单创建模式来进行交互式创建。
-
-```shell
-lc -e
-```
-
-使用简单模式创建今日题目示例:
-
-```shell
-➜ src git:(dev) ✗ lc -e
-? 请选择创建问题的模式: today
-? 是否在目录[ /home/wh131462/workspace/leetcode-practice/src ]下创建题目[ 2867.count-valid-paths-in-a-tree ]? Yes
-题目[2867.count-valid-paths-in-a-tree]创建完成!
-文件地址为: /home/wh131462/workspace/leetcode-practice/src/2867.count-valid-paths-in-a-tree/index.js
-
-```
-
-#### 2.检查题解 - `lk`
-
-##### [1]. 检查今日题解 [`-t`/`--today`]
-
-在终端中键入`lk`指令,即可在当前工作区中检查今日题解。
-
-```shell
-# 默认执行检查今日题解
-lk
-# 完整指令
-lk -t
-```
-
-使用示例:
-
-```shell
-# 指定了src目录为根目录
-workspace/leetcode-practice [dev●] » lk -d src -t
-MODE: today
-题目[2581.统计可能的树根数目]检测结果:
-```
-
-| index | 测量结果 | 预期结果 | 执行结果 | 执行用时 | 内存占用 |
-| ----- | -------- | -------- | --------- | -------- | -------- |
-| 0 | 未通过 | '3' | undefined | 0.0921ms | 2.52 KB |
-| 1 | 通过 | '5' | undefined | 0.0119ms | 2.66 KB |
-
-> 点击跳转到题目提交:
-
-##### [2]. 检查指定题解 [`-i`/`--identity` + ``]
-
-在终端中键入`lk`指令,并输入题目编号,即可在当前工作区中检查指定题解。
-
-```shell
-# 检查指定题解
-lk 2581
-# 完整指令
-lk -i 2581
-# 带空格的编号 使用双引号包裹
-lk "LCP 50"
-```
-
-使用示例检查指定题解:
-
-```shell
-workspace/leetcode-practice [dev●] » lk -d src 2581
-MODE: identity
-题目[2581.统计可能的树根数目]检测结果:
-```
-
-| index | 测量结果 | 预期结果 | 执行结果 | 执行用时 | 内存占用 |
-| ----- | -------- | -------- | -------- | -------- | -------- |
-| 0 | 通过 | '3' | '3' | 0.1668ms | 2.52 KB |
-| 1 | 通过 | '5' | '5' | 0.0234ms | 2.66 KB |
-
-> 点击跳转到题目提交:
-
-##### [3]. 检查随机获取的题解 [`-r`/`--random`]
-
-在终端中键入`lk`指令,使用参数`-r`,即可在当前工作区中检查上一个随机获取的题解。
-
-```shell
-# 完整指令
-lk -r
-```
-
-使用示例:
-
-```shell
-workspace/leetcode-practice [dev●] » lk -r
-MODE: random
-题目[41.缺失的第一个正数]检测结果:
-```
-
-| index | 测量结果 | 预期结果 | 执行结果 | 执行用时 | 内存占用 |
-| ----- | -------- | -------- | --------- | -------- | -------- |
-| 0 | 未通过 | '3' | undefined | 0.0896ms | 2.42 KB |
-| 1 | 未通过 | '2' | undefined | 0.0110ms | 2.56 KB |
-| 2 | 未通过 | '1' | undefined | 0.0045ms | 2.56 KB |
-
-> 点击跳转到题目提交:
->
-> 注意:在执行此指令之前请务必先执行过,`lc -r`创建了随机题目。
-
-##### [4]. 简单模式(交互式检查) [`-e`/`--easy`]
-
-在终端中键入`lk`指令,使用参数`-e`,即可使用交互式的进行题目检查。
-
-```shell
-# 完整指令
-lk -e
-```
-
-使用简单模式检测指定题目:
-
-```shell
-workspace/leetcode-practice [dev●] » lk -e
-? 请选择检查问题的模式: identity
-? 请输入题目编号: 41
-? 是否检测当前目录[ /Users/mac-106/wh131462/workspace/leetcode-practice ]下的题目[ 41.first-missing-positive ]? Yes
-```
-
-| index | 测量结果 | 预期结果 | 执行结果 | 执行用时 | 内存占用 |
-| ----- | -------- | -------- | --------- | -------- | -------- |
-| 0 | 未通过 | '3' | undefined | 0.0969ms | 2.42 KB |
-| 1 | 未通过 | '2' | undefined | 0.0139ms | 2.56 KB |
-| 2 | 未通过 | '1' | undefined | 0.0051ms | 2.56 KB |
-
-> 点击跳转到题目提交:
-> 题目[41.first-missing-positive]检查完成!
-> 文件地址为: /Users/mac-106/wh131462/workspace/leetcode-practice/41.first-missing-positive/index.js
-
-#### 3.题目查找 - `lf`
-
-待开发...
-
-##### [1]. 查看题目列表[待开发]
-
-#### 4.通用参数
-
-##### [1]. 获取或指定当前编程语言 - [`-l`/`-language` [language]]
-
-可以通过`-l`不带参数来获取当前的编程语言设定,也可以通过指定语言参数将当前cli的语言环境设定为指定的语言。
-
-```shell
-# 此参数在 lc/lk/lf 中的表现一致
-lc -l
-lk -l java
-```
-
-使用示例:
-
-```shell
-# 获取语言环境
-➜ leetcode-practice git:(dev) ✗ lc -l
-当前CLI语言环境为:javascript
-# 更改语言环境
-➜ leetcode-practice git:(dev) ✗ lc -l java
-? 请确认你要设置CLI的语言环境(如果选项匹配成功,那么按下回车确认即可) java
-设置语言环境为: java
-
-```
-
-> 注意: 在这个环境下无法执行检测测试用例。
-
-##### [2]. 指定目录 - [`-d`/`-directory`]
-
-`创建`和`检查`指令还可以使用参数`-d`来指定基于当前工作目录的相对地址作为指定目录。
-当指定目录后会在指定目录中进行创建或者检查操作。
-
-```shell
-# 指定当前目录的子目录src作为生成目录
-lc -d src -t
-# 指定当前目录的子目录src作为检查目录
-lk -d src -i
-```
-
-使用示例:
-
-```shell
-➜ src git:(dev) ✗ lc -d src -t
-MODE: today
-题目[2867.统计树中的合法路径数目]获取成功!
-题目文件地址为:/home/wh131462/workspace/leetcode-practice/src/src/2867.count-valid-paths-in-a-tree/index.js
-```
-
-> 注意: 如果指定的目录不存在,会自动生成一个空目录进行创建。
-
-##### [3]. 检查版本号 [`-V`/`--version`]
-
-```shell
-# 查看lc版本
-lc -V
-# 查看lk版本
-lk -V
-# 查看lf版本
-lf -V
-```
-
-查看lc版本示例:
-
-```shell
-workspace/leetcode-practice [dev●] » lc -V
-0.0.0
-```
-
-##### [4]. 更新检测 [`-u`/`--update`]
-
-使用`-u`或者`--update`参数可以检测当前版本是否为最新版本,如果当前版本不是最新版本,会提示用户是否进行更新.
-
-```shell
-lk -u
-lf -u
-lc -u
-```
-
-```shell
-? 自动检测到的环境为[ project ],如果不是,请进行选择,如是,请按下回车确认. project
-开始获取npm仓库中的版本号...
-npm仓库中的版本号获取成功!
-开始获取github仓库的版本号...
-github仓库的版本号获取成功!
-开始获取本地版本号...
-本地版本号获取成功!
-当前版本:[ 1.0.0 ] npm包最新版本:[ 1.0.1 ] github版本:[ 1.0.1 ]
-? 检测到[ project ]可更新版本[ 1.0.1 ],是否进行更新? (Y/n) Yes
-更新完成~祝你使用愉快~
-```
-
-### fork项目的使用
-
-#### [0]. 安装依赖
-
-在使用之前,先使用包管理工具进行依赖的安装.
-
-```shell
-# 安装依赖
-npm install
-# 或者 使用yarn (你可以使用任意一种你喜欢的包管理工具)
-yarn
-```
-
-fork项目中的指令,使用上和脚手架CLI的使用参数是一致的,只不过需要通过`npm run`类似的包管理工具执行命令来执行脚本.
-
-> 注意:在项目中的脚本,和脚手架的唯一区别就是默认指定了`-d`参数,指向了项目根目录的`src`目录,所以所有的指令都是在src中默认执行的.
-
-#### [1]. 创建题解 [`lc`]
-
-参数参考cli的`lc`部分: [lc](#1创建题解---lc)
-
-简单使用示例:
-
-```shell
-# 使用yarn执行
-yarn lc 1314
-```
-
-执行结果:
-
-```shell
-# 会在src目录下进行生成
-> yarn lc 1314
-yarn run v1.22.19
-$ node bin/lc.js -d src 1314
-MODE: identity
-题目[1314.矩阵区域和]获取成功!
-题目文件地址为:/Users/mac-106/wh131462/workspace/leetcode-practice/src/1314.matrix-block-sum/index.js
-✨ Done in 1.06s.
-```
-
-#### [2]. 检查题解 [`lk`]
-
-参数参考cli的`lk`部分: [lk](#2检查题解---lk)
-
-简单使用示例:
-
-```shell
-# 使用yarn执行
-yarn lk 1314
-```
-
-执行结果:
-
-```shell
-# 会在src目录下进行检查
-> yarn lk 1314
-yarn run v1.22.19
-$ node bin/lk.js -d src 1314
-MODE: identity
-题目[1314.矩阵区域和]检测结果:
-```
-
-| index | 测量结果 | 预期结果 | 执行结果 | 执行用时 | 内存占用 |
-| ----- | -------- | ------------------------------------ | --------- | -------- | -------- |
-| 0 | 未通过 | '[[12,21,16],[27,45,33],[24,39,28]]' | undefined | 0.1487ms | 2.47 KB |
-| 1 | 未通过 | '[[45,45,45],[45,45,45],[45,45,45]]' | undefined | 0.0278ms | 2.61 KB |
-
-> 点击跳转到题目提交:
-> ✨ Done in 1.13s.
-
-#### [3]. 查找题解 [`lf`]
-
-参数参考cli的`lf`部分: [lf](#3题目查找---lf)
-
-待开发...
-
-#### [4]. 更新 [`update`]
-
-特定更新本地项目的脚本,会更新所有的非src目录,用以同步项目最新特性.
-
-> 注意: 如果你有自己的优化更改代码,这一步请谨慎操作! 请参考我们的[特殊情况下的升级方案](./update.md)!
-
-### 插件的使用
-
-待开发...
-
-## 贡献者
-
-[
](https://github.com/wh131462)
-[
](https://github.com/SmallTeddy)
-[
](https://github.com/Hedwig-Fang)
-
-## 使用反馈
-
-如果有使用上的`问题`,或者一些`好的建议`,可以加我们的`使用反馈群`进行`反馈`!我们会及时处理!
-
-
diff --git a/docs/README_JP.md b/docs/README_JP.md
deleted file mode 100644
index e70d186..0000000
--- a/docs/README_JP.md
+++ /dev/null
@@ -1,509 +0,0 @@
-# Leetcode practice
-
-[中文文件](./README_CN.md)|[英文文件](../README.md)|**日本語ファイル**|[韓国語ファイル](./README_KR.md)
-
-## はじめに
-
-一言で言うと:"エディタで LeetCode のデイリー問題を練習しよう!"
-
-もし、あなたがエディタで問題を解きたい場合...
-
-もし、毎日の問題を簡単に取得したい場合...
-
-もし、独自の解決策リポジトリを作成したい場合...
-
-そうであれば、leetcode-practiceがあなたのすべての要望を叶えます!
-
-## プレビュー
-
-
-
-## どのように使うか?(3つの選択肢)
-
-### 選択肢 A: CLI(推奨)
-
-最も自由度が高く、使いやすい方法は、ターミナルで `lk`, `lf`, `lc` の3つの主要コマンドを使って問題を作成し、チェックすることです。
-
-[インストール](<#一全局インストールスクリプト-(オプション-A)>) · [使用](#CLIの使用)
-
-### 選択肢 B: フォーク(サポートされています)
-
-GitHubのフォーク機能を使用して、プロジェクトのコピーを作成し、プロジェクト内の指示に従って問題を作成およびチェックします。
-
-[インストール](<#二フォークを使用して独自のleetcode-practiceリポジトリのコピーを作成する-(オプション-B)>) · [使用](#プロジェクトのフォークの使用)
-
-### 選択肢 C: プラグイン(サポートされています)
-
-インタラクティブに問題を作成し、チェックするために、插件市場に公開されている`leetcode-practice`プラグインを使用することもできます。(主要な2つのエディタ `WebStorm` と `VS Code` に対応)
-
-[インストール](<#三エディタのプラグイン市場にプラグインをインストールする-(オプション-C)>) · [使用](#プラグインの使用)
-
-## 準備条件
-
-| 必要なパッケージ | バージョン |
-| ---------------- | ---------- |
-| nodejs | lts |
-| git | lts |
-
-> メモ:nodejs:[nodejsのインストールガイド](https://nodejs.org/en/learn/getting-started/how-to-install-nodejs)
->
-> git:[gitダウンロードリンク](https://git-scm.com/downloads)
-
-## インストール
-
-### 一.全局インストールスクリプト (オプション A)
-
-npm、yarn、pnpmなどの任意のnpmパッケージ管理ソフトウェアを使用して、グローバルインストールメソッドを使用してインストールできます。
-
-```shell
-# npmを使用してインストール
-npm install -g leetcode-practice
-# pnpmを使用してインストール
-pnpm install -g leetcode-practice
-# yarnを使用してインストール
-yarn global install leetcode-practice
-```
-
-### 二.フォークを使用して独自のleetcode-practiceリポジトリのコピーを作成する (オプション B)
-
-#### 標準的な方法
-
-1. 当社のプロジェクトのURLを開きます:[leetcode-practice](https://github.com/wh131462/leetcode-practice)
-
-
-
-2. `フォーク` ボタンをクリックします。
-
-次のようなページが表示されます。そして、リポジトリ名と説明を変更し、「マスターブランチのみをコピーする」を選択してください。
-
-
-3. 作成を確認して待機してください。
-
-
-
-4. 作成が完了したら、このリポジトリをクローンして、楽しい問題解決を開始できます!
-
-
-
-#### 簡単な方法
-
-1. 当社のリポジトリをローカルにクローンします。
-
-```shell
-git clone https://github.com/wh131462/leetcode-practice.git
-```
-
-2. 当社のデプロイスクリプトを実行します。
-
-```shell
-# 使用するパッケージマネージャに従ってスクリプトを実行してください
-npm run easy-fork
-```
-
-3. 完了したら、デプロイが完了します
-
-### 三.エディタのプラグイン市場にプラグインをインストールする (オプション C)
-
-まだ開発中...
-
-## 使い方
-
-### CLIの使用
-
-#### 1.問題の作成 - `lc`
-
-##### [1]. 今日の問題の取得 - [`-t`/`--today`]
-
-ターミナルに `lc` コマンドを入力すると、デフォルトで今日の問題を現在のターミナルの作業ディレクトリに取得します。
-
-```shell
-lc
-# フルコマンド
-lc -t
-```
-
-今日の問題の取得の例:
-
-```shell
-# たとえば、現在の実行ディレクトリがsrcディレクトリの場合
-➜ src git:(dev) ✗ lc
-MODE:
-
- today
-問題[2867.統計ツリー内の有効なパスの数]が取得されました!
-問題ファイルの場所は:/home/wh131462/workspace/leetcode-practice/src/2867.count-valid-paths-in-a-tree/index.js
-```
-
-##### [2]. 特定の問題の取得 - [`-i`/`--identity`]
-
-ターミナルに `lc` コマンドに対応する問題番号を入力すると、指定された問題を現在の作業ディレクトリに取得します。
-
-```shell
-lc 1314
-# フルコマンド
-lc -i 1314
-# ダブルクオーテーション(")で囲むと、指定された番号が正確に指定され、特にスペースが含まれる問題番号に特に便利です。
-lc -i "LCP 50"
-```
-
-`LCP 50` の取得の例:
-
-```shell
-➜ src git:(dev) ✗ lc "LCP 50"
-MODE: identity
-問題[LCP 50.宝石の供給]が取得されました!
-問題ファイルの場所は:/home/wh131462/workspace/leetcode-practice/src/LCP 50.WHnhjV/index.js
-```
-
-##### [3]. ランダムな問題の取得 - [`-r`/`--random`]
-
-ターミナルに `lc` コマンドに `-r` パラメータを追加すると、ランダムな問題を取得し、現在のディレクトリに優先的に存在しない問題を取得します。
-
-```shell
-# フルコマンド
-lc -r
-```
-
-ランダムな問題の取得の例:
-
-```shell
-➜ src git:(dev) ✗ lc -r
-MODE: random
-問題[14.最長共通接頭辞]が取得されました!
-問題ファイルの場所は:/home/wh131462/workspace/leetcode-practice/src/14.longest-common-prefix/index.js
-```
-
-##### [4]. 簡易作成モード(対話形式で作成) - [`-e`/`--easy`]
-
-正確な指示を使用して問題を素早く作成するだけでなく、簡単な作成モードを使用して対話形式で作成することもできます。
-
-```shell
-lc -e
-```
-
-簡易モードで今日の問題を作成する例:
-
-```shell
-➜ src git:(dev) ✗ lc -e
-? 問題の作成モードを選択してください: today
-? ディレクトリ[ /home/wh131462/workspace/leetcode-practice/src ]に問題[ 2867.count-valid-paths-in-a-tree ]を作成しますか? Yes
-問題[2867.count-valid-paths-in-a-tree]の作成が完了しました!
-ファイルの場所は: /home/wh131462/workspace/leetcode-practice/src/2867.count-valid-paths-in-a-tree/index.js
-```
-
-#### 2.問題のチェック - `lk`
-
-##### [1]. 今日の解答をチェックする [`-t`/`--today`]
-
-`lk` コマンドをターミナルに入力すると、現在の作業ディレクトリで今日の解答をチェックします。
-
-```shell
-# デフォルトで今日の解答をチェック
-lk
-# フルコマンド
-lk -t
-```
-
-使用例:
-
-```shell
-# ディレクトリsrcをルートディレクトリとして指定している
-workspace/leetcode-practice [dev●] » lk -d src -t
-MODE: today
-問題[2581.可能なツリールートの数を数える]のチェック結果:
-┌─────────┬──────────┬──────────┬───────────┬────────────┬───────────┐
-│ (index) │ テスト結果 │ 期待結果 │ 実行結果 │ 実行時間 │ メモリ使用量 │
-├─────────┼──────────┼──────────┼───────────┼────────────┼───────────┤
-│ 0 │ '不合格' │ '3' │ undefined │ '0.0921ms' │ '2.52 KB' │
-│ 1 │ '不合格' │ '5' │ undefined │ '0.0119ms' │ '2.66 KB' │
-└─────────┴──────────┴──────────┴───────────┴────────────┴───────────┘
-問題の提出ページに移動するにはここをクリックしてください:https://leetcode-cn/problems/count-number-of-possible-root-nodes/
-```
-
-##### [2]. 特定の解答をチェックする [`-i`/`--identity` + ``]
-
-上記のコマンドを使って、`lk`をターミナルに入力し、問題番号を入力すると、指定された問題の解答を現在の作業スペースで確認できます。
-
-例えば:
-
-```shell
-# 指定された問題の解答を確認する
-lk 2581
-# 完全なコマンド
-lk -i 2581
-# スペースが含まれる番号はダブルクォーテーションで囲む
-lk "LCP 50"
-```
-
-解答を確認する例:
-
-```shell
-workspace/leetcode-practice [dev●] » lk -d src 2581
-MODE: identity
-問題[2581.可能な根の数を数える]の検査結果:
-┌─────────┬──────────┬──────────┬───────────┬────────────┬───────────┐
-│ (index) │ テスト結果 │ 期待結果 │ 実行結果 │ 実行時間 │ メモリ使用量 │
-├─────────┼──────────┼──────────┼───────────┼────────────┼───────────┤
-│ 0 │ '合格' │ '3' │ '3' │ '0.1668ms' │ '2.52 KB' │
-│ 1 │ '合格' │ '5' │ '5' │ '0.0234ms' │ '2.66 KB' │
-└─────────┴──────────┴──────────┴───────────┴────────────┴───────────┘
-問題の提出にジャンプする:https://leetcode.cn/problems/count-number-of-possible-root-nodes/
-```
-
-#### [3]. ランダムな解答を確認する [`-r`/`--random`]
-
-`lk`をターミナルに入力し、`-r`オプションを使用すると、直前にランダムに取得した解答を現在の作業スペースで確認できます。
-
-例えば:
-
-```shell
-# 完全なコマンド
-lk -r
-```
-
-使用例:
-
-```shell
-workspace/leetcode-practice [dev●] » lk -r
-MODE: random
-問題[41.最初の不足している正の数]の検査結果:
-┌─────────┬──────────┬──────────┬───────────┬────────────┬───────────┐
-│ (index) │ テスト結果 │ 期待結果 │ 実行結果 │ 実行時間 │ メモリ使用量 │
-├─────────┼──────────┼──────────┼───────────┼────────────┼───────────┤
-│ 0 │ '不合格' │ '3' │ undefined │ '0.0896ms' │ '2.42 KB' │
-│ 1 │ '不合格' │ '2' │ undefined │ '0.0110ms' │ '2.56 KB' │
-│ 2 │ '不合格' │ '1' │ undefined │ '0.0045ms' │ '2.56 KB' │
-└─────────┴──────────┴──────────┴───────────┴────────────┴───────────┘
-問題の提出にジャンプする:https://leetcode.cn/problems/first-missing-positive/
-```
-
-> 注意: このコマンドを実行する前に、`lc -r`を実行してランダムな問題を作成してください。
-
-#### [4]. 簡易モード(対話式確認) [`-e`/`--easy`]
-
-`lk`をターミナルに入力し、`-e`オプションを使用すると、対話式で問題を確認できます。
-
-例えば:
-
-```shell
-# 完全なコマンド
-lk -e
-```
-
-簡易モードで指定された問題を確認する例:
-
-```shell
-workspace/leetcode-practice [dev●] » lk -e
-? モードを選択してください: identity
-? 問題番号を入力してください: 41
-? 現在のディレクトリ[ /Users/mac-106/wh131462/workspace/leetcode-practice ]で問題[ 41.first-missing-positive ]を確認しますか? Yes
-┌─────────┬──────────┬──────────┬───────────┬────────────┬───────────┐
-│ (index) │ テスト結果 │ 期待結果 │ 実行結果 │ 実行時間 │ メモリ使用量 │
-├─────────┼──────────┼──────────┼───────────┼────────────┼───────────┤
-│ 0 │ '不合格' │ '3' │ undefined │ '0.0969ms' │ '2.42 KB' │
-│ 1 │ '不合格' │ '2' │ undefined │ '0.0139ms' │ '2.56 KB' │
-│ 2 │ '不合格' │ '1' │ undefined │ '0.0051ms' │ '2.56 KB' │
-└─────────┴──────────┴──────────┴───────────┴────────────┴───────────┘
-問題の提出にジャンプする:https://leetcode.cn/problems/first-missing-positive/
-問題[41.first-missing-positive]の確認が完了しました!
-ファイルの場所: /Users/mac-106/wh131462/workspace/leetcode-practice/41.first-missing-positive/index.js
-```
-
-#### 3.問題検索 - `lf`
-
-開発中...
-
-#### 4.一般的なオプション
-
-##### [1]. 現在のプログラミング言語の取得または指定 - [`-l`/`-language` [language]]
-
-`-l`を引数なしで使用すると、現在のプログラミング言語の設定を取得できます。また、言語のパラメータを指定することで、現在のCLIの言語環境を指定の言語に設定することもできます。
-
-```shell
-# このパラメータは lc/lk/lf で同様の動作をします
-lc -l
-lk -l java
-```
-
-使用例:
-
-```shell
-# 言語環境の取得
-➜ leetcode-practice git:(dev) ✗ lc -l
-現在のCLIの言語環境は:javascript
-# 言語環境の変更
-➜ leetcode-practice git:(dev) ✗ lc -l java
-? CLIの言語環境を設定してください (オプションが一致した場合、Enterキーを押して確認してください) java
-言語環境が設定されました: java
-
-```
-
-> 注意: この環境ではテストケースの実行はできません。
-
-##### [2]. ディレクトリを指定する - [`-d`/`-directory`]
-
-`-d`オプ
-
-ションを使用して、作業ディレクトリの相対パスを指定ディレクトリとして使用できます。指定ディレクトリ内での作成または確認操作が行われます。
-
-例えば:
-
-```shell
-# srcディレクトリを指定して生成
-lc -d src -t
-# srcディレクトリを指定して確認
-lk -d src -i
-```
-
-使用例:
-
-```shell
-➜ src git:(dev) ✗ lc -d src -t
-MODE: today
-問題[2867.木の有効なパスの数を数える]を取得しました!
-問題のファイルの場所:/home/wh131462/workspace/leetcode-practice/src/src/2867.count-valid-paths-in-a-tree/index.js
-```
-
-> 注意: 指定したディレクトリが存在しない場合、空のディレクトリが作成されます。
-
-##### [3]. バージョンを確認する [`-V`/`--version`]
-
-```shell
-# lcのバージョンを確認する
-lc -V
-# lkのバージョンを確認する
-lk -V
-# lfのバージョンを確認する
-lf -V
-```
-
-lcのバージョンを確認する例:
-
-```shell
-workspace/leetcode-practice [dev●] » lc -V
-0.0.0
-```
-
-##### [4]. 更新をチェックする [`-u`/`--update`]
-
-`-u`または`--update`オプションを使用すると、現在のバージョンが最新バージョンでないかどうかをチェックできます。現在のバージョンが最新バージョンでない場合、更新を行うかどうかをユーザーに確認します。
-
-```shell
-lk -u
-lf -u
-lc -u
-```
-
-```shell
-? 自動検出された環境は[ プロジェクト ]です。もしそうでない場合は選択してください。そうであれば、Enterを押して確認してください。 project
-npmリポジトリのバージョン番号の取得を開始します...
-npmリポジトリのバージョン番号の取得が完了しました!
-githubリポジトリのバージョン番号の取得を開始します...
-githubリポジトリのバージョン番号の取得が完了しました!
-ローカルバージョン番号の取得を開始します...
-ローカルバージョン番号の取得が完了しました!
-現在のバージョン:[ 1.0.0 ] npmパッケージの最新バージョン:[ 1.0.1 ] GitHubのバージョン:[ 1.0.1 ]
-? [ プロジェクト ]でアップデート可能なバージョン[ 1.0.1 ]が検出されました。アップデートしますか? (Y/n) Yes
-更新が完了しました。お楽しみください!
-```
-
-### プロジェクトのフォークの使用
-
-##### [0]. 依存関係のインストール
-
-使用する前に、依存関係のインストールを行います。
-
-```shell
-# 依存関係のインストール
-npm install
-# または、yarnを使用する(お好みのパッケージ管理ツールを使用できます)
-yarn
-```
-
-プロジェクト内のコマンドは、CLIの使用と同じようにパラメータを指定して実行されますが、`npm run`などのパッケージ管理ツールを使用してスクリプトを実行する必要があります。
-
-> 注意: プロジェクト内のスクリプトは、デフォルトで`-d`パラメータが設定されており、プロジェクトのルートディレクトリの`src`ディレクトリを指すようになっています。そのため、すべてのコマンドはデフォルトでsrc内で実行されます。
-
-##### [1]. 解答を作成する [`lc`]
-
-パラメータはCLIの`lc`部分を参照してください: [lc](#1問題の作成---lc)
-
-例:
-
-```shell
-# yarnで実行
-yarn lc 1314
-```
-
-実行結果:
-
-```shell
-# srcディレクトリ内で生成されます
-> yarn lc 1314
-yarn run v1.22.19
-$ node bin/lc.js -d src 1314
-MODE: identity
-問題[1314.マトリックスブロック和]を取得しました!
-問題のファイルの場所:/Users/mac-106/wh131462/workspace/leetcode-practice/src/1314.matrix-block-sum/index.js
-✨ Done in 1.06s.
-```
-
-##### [2]. 解答を確認する [`lk`]
-
-パラメータはCLIの`lk`部分を参照してください: [lk](#2問題のチェック---lk)
-
-例:
-
-```shell
-# yarnで実行
-yarn lk 1314
-```
-
-実行結果:
-
-```shell
-# srcディレクトリ内で確認されます
-> yarn lk 1314
-yarn run v1.22.19
-$ node bin/lk.js -d src 1314
-MODE: identity
-問題[1314.マトリックスブロック和]の検査結果:
-┌─────────┬──────────┬──────────────────────────────────────┬───────────┬────────────┬───────────┐
-│ (index) │ テスト結果 │ 期待結果 │ 実行結果 │ 実行時間 │ メモリ使用量 │
-├────────
-
-─┼──────────┼──────────────────────────────────────┼───────────┼────────────┼───────────┤
-│ 0 │ '不合格' │ '[[12,21,16],[27,45,33],[24,39,28]]' │ undefined │ '0.1487ms' │ '2.47 KB' │
-│ 1 │ '不合格' │ '[[45,45,45],[45,45,45],[45,45,45]]' │ undefined │ '0.0278ms' │ '2.61 KB' │
-└─────────┴──────────┴──────────────────────────────────────┴───────────┴────────────┴───────────┘
-問題の提出にジャンプする:https://leetcode.cn/problems/matrix-block-sum/
-✨ Done in 1.13s.
-```
-
-##### [3]. 解答を検索する [`lf`]
-
-パラメータはCLIの`lf`部分を参照してください: [lf](#3問題検索---lf)
-
-開発中...
-
-##### [4]. アップデート [`update`]
-
-プロジェクトのローカルファイルを更新する特定のスクリプトです。プロジェクトの最新機能を同期するために、srcディレクトリ以外のすべてのディレクトリが更新されます。
-
-> 注意: 自分で最適化や変更を加えたコードがある場合は、このステップを慎重に行ってくださいを参照してください!
-
-### プラグインの使用
-
-開発中...
-
-## 貢献者
-
-[
](https://github.com/wh131462)
-[
](https://github.com/SmallTeddy)
-[
](https://github.com/Hedwig-Fang)
-
-## フィードバック
-
-もし何か`問題`があったり、`素晴らしい提案`があれば、お気軽に`フィードバックグループ`にご参加いただき、`フィードバック`を提供してください!私たちは迅速に対処いたします!
-
-
diff --git a/docs/README_KR.md b/docs/README_KR.md
deleted file mode 100644
index 5fc660a..0000000
--- a/docs/README_KR.md
+++ /dev/null
@@ -1,503 +0,0 @@
-# Leetcode practice
-
-[중국어 문서](./README_CN.md)|[영어 문서](../README.md)|[일본어 문서](./README_JP.md)|**한국어 문서**
-
-## 소개
-
-한 문장으로 설명하면: "에디터에서 `LeetCode` 매일 한 문제를 연습하세요!"
-
-만약 당신이 에디터에서 당신의 문제 해결을 작성하고 싶다면...
-
-만약 당신이 매일 한 문제를 간편하고 빠르게 받고 싶다면...
-
-만약 당신이 자신의 문제 해결 저장소를 만들고 싶다면...
-
-그러면 `LeetCode 연습`이 당신의 모든 요구를 충족시켜줄 것입니다!
-
-## 미리보기
-
-
-
-## 어떻게 사용할까요? (3가지 옵션)
-
-### 옵션 A: CLI (추천)
-
-가장 좋고 자유로운 사용 방법은 터미널에서 우리의 스캐폴딩을 사용하여 세 가지 핵심 명령어 `lk`, `lf`, `lc`를 사용하여 당신의 문제를 생성하고 검사하는 것입니다.
-
-[설치](<#전역-스캐폴딩-설치-(옵션-A)>) · [사용](#CLI의-사용)
-
-### 옵션 B: fork (지원됨)
-
-`github`의 `fork` 기능을 사용하여 프로젝트의 복제본을 만들고, 프로젝트 내부 명령을 사용하여 문제를 생성하고 검사할 수 있습니다.
-
-[설치](<#fork를-사용하여-나만의-Leetcode-연습-저장소-복제-(옵션-B)>) · [사용](#fork-프로젝트의-사용)
-
-### 옵션 C: 플러그인 (지원됨)
-
-플러그인 시장에서 배포된 `LeetCode 연습` 플러그인을 사용하여 대화 형으로 문제를 생성하고 검사할 수도 있습니다. (`WebStorm` 및 `VS Code`와 같은 두 가지 주요 편집기를 지원합니다.)
-
-[설치](<#플러그인-마켓에서-플러그인-설치-(옵션-C)>) · [사용](#플러그인의-사용)
-
-## 준비 사항
-
-| 의존성 패키지 | 버전 |
-| ------------- | ---- |
-| nodejs | lts |
-| git | lts |
-
-> 참고: nodejs:[nodejs 설치 안내](https://nodejs.org/en/learn/getting-started/how-to-install-nodejs)
->
-> git:[git 다운로드 링크](https://git-scm.com/downloads)
-
-## 설치
-
-### 전역 스캐폴딩 설치 (옵션 A)
-
-원하는 npm 패키지 관리 소프트웨어(예: `npm`, `yarn`, `pnpm` 등)를 사용하여 전역 설치를 수행할 수 있습니다.
-
-```shell
-# npm을 사용하여 설치
-npm install -g leetcode-practice
-# pnpm을 사용하여 설치
-pnpm install -g leetcode-practice
-# yarn을 사용하여 설치
-yarn global install leetcode-practice
-```
-
-### fork를 사용하여 나만의 Leetcode 연습 저장소 복제 (옵션 B)
-
-#### 일반적인 방법
-
-1. 우리의 프로젝트 주소를 엽니다: [Leetcode 연습](https://github.com/wh131462/leetcode-practice)
-
-
-
-2. `fork` 버튼을 클릭합니다.
-
-다음과 같은 페이지가 표시됩니다. 그런 다음 리포지토리 이름과 설명을 수정하고, `Copy the master branch only`를 선택하십시오.
-
-
-
-3. 확인하여 생성을 기다립니다.
-
-
-
-4. 생성이 완료되면 리포지토리를 가져와서 문제 해결을 시작할 수 있습니다!
-
-
-
-#### 간편한 방법
-
-1. 로컬로 리포지토리를 가져옵니다.
-
-```shell
-git clone https://github.com/wh131462/leetcode-practice.git
-```
-
-2. 배포 스크립트를 실행합니다.
-
-```shell
-# 원하는 패키지 관리자로 스크립트를 실행하십시오.
-npm run easy-fork
-```
-
-3. 배포 완료
-
-### 플러그인 마켓에서 플러그인 설치 (옵션 C)
-
-개발 중...
-
-## 사용법
-
-### CLI의 사용
-
-#### 1. 문제 생성 - `lc`
-
-##### [1]. 오늘의 문제 가져오기 - [`-t`/`--today`]
-
-터미널에서 `lc` 명령어를 입력하면 현재 터미널 작업 영역에 오늘의 문제가 기본적으로 가져와집니다.
-
-```shell
-lc
-# 완전한 명령어
-lc -t
-```
-
-오늘의 문제 가져오기 예시:
-
-```shell
-# 예를 들어 현재 실행 디렉토리가 src 디렉토리인 경우
-➜ src git:(dev) ✗ lc
-MODE: today
-문제[2867.통계 트리에서 유효한 경로 수 세기] 가져오기 성공!
-문제 파일 주소는: /home/wh131462/workspace/leetcode-practice/src/2867.count-valid-paths-in-a-tree/index.js
-```
-
-##### [2]. 특정 문제 가져
-
-오기 - [`-i`/`--identity`]
-
-터미널에서 `lc` 명령어 다음에 해당 문제 번호를 입력하면 현재 작업 영역에서 해당 문제를 가져옵니다.
-
-```shell
-lc 1314
-# 완전한 명령어
-lc -i 1314
-# 큰따옴표(")를 사용하여 번호를 둘러싸면 문제 번호를 정확하게 지정할 수 있습니다. 특히 공백이 포함된 문제 번호의 경우에 유용합니다.
-lc -i "LCP 50"
-```
-
-특정 문제 가져오기 예시:
-
-```shell
-➜ src git:(dev) ✗ lc "LCP 50"
-MODE: identity
-문제[LCP 50.보석 공급] 가져오기 성공!
-문제 파일 주소는: /home/wh131462/workspace/leetcode-practice/src/LCP 50.WHnhjV/index.js
-```
-
-##### [3]. 무작위 문제 가져오기 - [`-r`/`--random`]
-
-터미널에서 `lc` 명령어 뒤에 `-r` 매개변수를 추가하면 현재 작업 영역에서 무작위 문제를 가져옵니다. 현재 디렉토리에 문제가 없는 경우 우선적으로 가져옵니다.
-
-```shell
-# 완전한 명령어
-lc -r
-```
-
-무작위 문제 가져오기 예시:
-
-```shell
-➜ src git:(dev) ✗ lc -r
-MODE: random
-문제[14.가장 긴 공통 접두사] 가져오기 성공!
-문제 파일 주소는: /home/wh131462/workspace/leetcode-practice/src/14.longest-common-prefix/index.js
-```
-
-##### [4]. 간편 생성 모드(대화형 생성) - [`-e`/`--easy`]
-
-정확한 명령어를 사용하여 빠르게 문제를 생성하는 것 외에도 간단한 생성 모드를 사용하여 대화형으로 문제를 생성할 수도 있습니다.
-
-```shell
-lc -e
-```
-
-간단한 모드를 사용하여 오늘의 문제 만들기 예시:
-
-```shell
-➜ src git:(dev) ✗ lc -e
-? 문제 생성 모드를 선택하십시오: today
-? 디렉토리 [ /home/wh131462/workspace/leetcode-practice/src ]에서 문제 [ 2867.count-valid-paths-in-a-tree ]를 만드시겠습니까? Yes
-문제[2867.count-valid-paths-in-a-tree] 생성 완료!
-파일 주소는: /home/wh131462/workspace/leetcode-practice/src/2867.count-valid-paths-in-a-tree/index.js
-
-```
-
-#### 2. 문제 검사 - `lk`
-
-##### [1]. 오늘의 문제 검사 [`-t`/`--today`]
-
-터미널에서 `lk` 명령어를 입력하면 현재 작업 영역에서 오늘의 문제를 검사합니다.
-
-```shell
-# 기본적으로 오늘의 문제를 검사합니다.
-lk
-# 완전한 명령어
-lk -t
-```
-
-사용 예시:
-
-```shell
-# src 디렉토리가 루트 디렉토리로 지정되었습니다.
-workspace/leetcode-practice [dev●] » lk -d src -t
-MODE: today
-문제[2581.가능한 트리 루트 수를 세는 것] 검사 결과:
-┌─────────┬──────────┬──────────┬───────────┬────────────┬───────────┐
-│ (index) │ 테스트 결과 │ 예상 결과 │ 실행 결과 │ 실행 시간 │ 메모리 사용량 │
-├─────────┼──────────┼──────────┼───────────┼────────────┼───────────┤
-│ 0 │ '미통과' │ '3' │ undefined │ '0.0921ms' │ '2.52 KB' │
-│ 1 │ '미통과' │ '5' │ undefined │ '0.0119ms' │ '2.66 KB' │
-└─────────┴──────────┴──────────┴───────────┴────────────┴───────────┘
-문제 제출로 이동하려면 클릭하십시오: https://leetcode-cn/problems/count-number-of-possible-root-nodes/
-```
-
-##### [2]. 특정 문제 검사 [`-i`/`--identity` + ``]
-
-터미널에서 `lk` 명령어를 입력하고 문제 번호를 입력하면 현재 작업 영역에서 해당 문제를 검사합니다.
-
-```shell
-# 특정 문제 검사
-lk 2581
-# 완전한 명령어
-lk -i 2581
-# 큰따옴표(")를 사용하여 번호를 둘러싸면 문제 번호
-
-를 정확하게 지정할 수 있습니다. 특히 공백이 포함된 문제 번호의 경우에 유용합니다.
-lk "LCP 50"
-```
-
-특정 문제 검사 사용 예시:
-
-```shell
-workspace/leetcode-practice [dev●] » lk -d src 2581
-MODE: identity
-문제[2581.가능한 트리 루트 수를 세는 것] 검사 결과:
-┌─────────┬──────────┬──────────┬───────────┬────────────┬───────────┐
-│ (index) │ 테스트 결과 │ 예상 결과 │ 실행 결과 │ 실행 시간 │ 메모리 사용량 │
-├─────────┼──────────┼──────────┼───────────┼────────────┼───────────┤
-│ 0 │ '통과' │ '3' │ '3' │ '0.1668ms' │ '2.52 KB' │
-│ 1 │ '통과' │ '5' │ '5' │ '0.0234ms' │ '2.66 KB' │
-└─────────┴──────────┴──────────┴───────────┴────────────┴───────────┘
-문제 제출로 이동하려면 클릭하십시오: https://leetcode-cn/problems/count-number-of-possible-root-nodes/
-```
-
-##### [3]. 무작위로 가져온 문제 검사 [`-r`/`--random`]
-
-터미널에서 `lk` 명령어를 입력하고 `-r` 매개변수를 사용하면 최근에 가져온 무작위 문제를 현재 작업 영역에서 검사합니다.
-
-```shell
-# 완전한 명령어
-lk -r
-```
-
-사용 예시:
-
-```shell
-workspace/leetcode-practice [dev●] » lk -r
-MODE: random
-문제[41.누락된 첫 번째 양의 정수] 검사 결과:
-┌─────────┬──────────┬──────────┬───────────┬────────────┬───────────┐
-│ (index) │ 테스트 결과 │ 예상 결과 │ 실행 결과 │ 실행 시간 │ 메모리 사용량 │
-├─────────┼──────────┼──────────┼───────────┼────────────┼───────────┤
-│ 0 │ '미통과' │ '3' │ undefined │ '0.0896ms' │ '2.42 KB' │
-│ 1 │ '미통과' │ '2' │ undefined │ '0.0110ms' │ '2.56 KB' │
-│ 2 │ '미통과' │ '1' │ undefined │ '0.0045ms' │ '2.56 KB' │
-└─────────┴──────────┴──────────┴───────────┴────────────┴───────────┘
-문제 제출로 이동하려면 클릭하십시오: https://leetcode-cn/problems/first-missing-positive/
-```
-
-> 참고: 이 명령을 실행하기 전에 반드시 `lc -r`을 실행하여 무작위 문제를 만들어야 합니다.
-
-##### [4]. 간편 모드(대화형 검사) [`-e`/`--easy`]
-
-터미널에서 `lk` 명령어를 입력하고 `-e` 매개변수를 사용하면 대화형으로 문제를 검사할 수 있습니다.
-
-```shell
-# 완전한 명령어
-lk -e
-```
-
-간단한 모드를 사용하여 특정 문제 검사:
-
-```shell
-workspace/leetcode-practice [dev●] » lk -e
-? 검사 모드를 선택하십시오: identity
-? 문제 번호를 입력하십시오: 41
-? 현재 디렉토리 [ /Users/mac-106/wh131462/workspace/leetcode-practice ]에서 문제 [ 41.first-missing-positive ]를 검사하시겠습니까? Yes
-┌─────────┬──────────┬──────────┬───────────┬────────────┬───────────┐
-│ (index) │ 테스트 결과 │ 예상 결과 │ 실행 결과 │ 실행 시간 │ 메모리 사용량 │
-├─────────┼──────────┼──────────┼───────────┼────────────┼───────────┤
-│ 0 │ '미통과' │ '3' │ undefined │ '0.0969ms' │ '2.42 KB' │
-│ 1 │ '미통과' │ '2' │ undefined │ '0.0139ms' │ '2.56 KB' │
-│ 2 │ '미통과' │ '1' │ undefined │ '0.0051ms' │ '2.56 KB' │
-└─────────┴──────────┴──────────┴───────────┴────────────┴───────────┘
-문제 제출로 이동하려면 클릭하십시오: https://leetcode-cn/problems/first-missing-positive/
-문제[41.first-missing-positive] 검사 완료!
-파일 주소는: /Users/mac-106/wh131462/workspace/leetcode-practice/41.first-missing-positive/index.js
-```
-
-#### 3. 문제 찾기 - `lf`
-
-- 개발 중...
-
-##### [1]. 문제 목록 보기[미개발]
-
-#### 4. 일반 매개변수
-
-##### [1]. 현재 프로그래밍 언어 가져오거나 지정하기 - [`-l`/`-language` [언어]]
-
-`-l`을 인수 없이 사용하여 현재 프로그래밍 언어 설정을 가져올 수 있습니다. 또한 언어 매개변수를 지정하여 현재 CLI의 언어 환경을 지정된 언어로 설정할 수도 있습니다.
-
-```shell
-# lc/lk/lf에서 이 매개변수는 동일하게 동작합니다
-lc -l
-lk -l java
-```
-
-사용 예시:
-
-```shell
-# 언어 환경 가져오기
-➜ leetcode-practice git:(dev) ✗ lc -l
-현재 CLI 언어 환경은:javascript
-# 언어 환경 변경
-➜ leetcode-practice git:(dev) ✗ lc -l java
-? CLI의 언어 환경을 설정하시겠습니까 (옵션과 일치하는 경우 Enter 키를 눌러 확인하십시오) java
-언어 환경이 설정되었습니다: java
-
-```
-
-> 참고: 이 환경에서는 테스트 케이스를 실행할 수 없습니다.
-
-##### [2]. 디렉터리 지정 - [`-d`/`-directory`]
-
-`생성` 및 `검사` 명령은 현재 작업 디렉터리를 기준으로 상대 주소를 지정하는 `-d` 매개변수를 사용할 수 있습니다. 지정된 디렉터리에서 생성 또는 검사 작업이 수행됩니다.
-
-```shell
-# 현재 디렉터리의 하위 디렉터리 src를 생성 디렉터리로 지정
-lc -d src -t
-# 현재 디렉터리의 하위 디렉터리 src를 검사 디렉터리로 지정
-lk -d src -i
-```
-
-사용 예시:
-
-```shell
-➜ src git:(dev) ✗ lc -d src -t
-MODE: today
-문제[2867.트리에서 유효한 경로 수 세기]가 생성되었습니다!
-문제 파일 주소는:/home/wh131462/workspace/leetcode-practice/src/src/2867.count-valid-paths-in-a-tree/index.js
-```
-
-> 참고: 지정된 디렉터리가 존재하지 않으면 빈 디렉터리가 자동으로 생성됩니다.
-
-##### [3]. 버전 확인 [`-V`/`--version`]
-
-```shell
-# lc 버전 확인
-lc -V
-# lk 버전 확인
-lk -V
-# lf 버전 확인
-lf -V
-```
-
-lc 버전 확인 예시:
-
-```shell
-workspace/leetcode-practice [dev●] » lc -V
-0.0.0
-```
-
-##### [4]. 업데이트 확인 [`-u`/`--update`]
-
-`-u` 또는 `--update` 매개변수를 사용하여 현재 버전이 최신 버전인지 확인할 수 있습니다. 현재 버전이 최신 버전이 아닌 경우 사용자에게 업데이트를 진행할지 여부를 알립니다.
-
-```shell
-lk -u
-lf -u
-lc -u
-```
-
-```shell
-? 자동 감지된 환경은 [프로젝트]입니다. 아닌 경우 선택하고, 맞으면 엔터를 누르십시오. 프로젝트
-npm 저장소에서 버전 번호 가져 오기 시작 ...
-npm 저장소의 버전 번호를 성공적으로 가져 왔습니다!
-github 저장소의 버전 번호 가져 오기 시작 ...
-github 저장소의 버전 번호를 성공적으로 가져 왔습니다!
-로컬 버전 번호 가져 오기 시작 ...
-로컬 버전 번호가 성공적으로 가져 왔습니다!
-현재 버전 : [1.0.0] npm 패키지의 최신 버전 : [1.0.1] github 버전 : [1.0.1]
-? [프로젝트]에서 업데이트 가능한 버전 [1.0.1] 감지되었습니다. 업데이트를 수행 하시겠습니까? (Y/n) Yes
-업데이트 완료 ~ 즐거운 사용 되세요 ~
-```
-
-### fork 프로젝트의 사용
-
-##### [0]. 의존성 설치
-
-사용하기 전에 의존성을 설치하기 위해 패키지 관리 도구를 사용하세요.
-
-```shell
-# 의존성 설치
-npm install
-# 또는 yarn (원하는 패키지 관리 도구를 사용할 수 있습니다.)
-yarn
-```
-
-fork된 프로젝트의 명령어는 CLI의 사용 방법과 매개변수가 동일하지만, 스크립트를 실행하기 위해 `npm run`과 같은 패키지 관리 도구를 사용해야 합니다.
-
-> 참고: 프로젝트의 스크립트는 "src" 디렉토리를 기본적으로 `-d` 매개변수로 지정하여 프로젝트의 루트 디렉토리에 있는 파일을 실행하도록 되어 있습니다. 따라서 모든 명령은 기본적으로 src에서 실행됩니다.
-
-##### [1]. 문제 생성 [`lc`]
-
-CLI의 `lc` 섹션을 참고하여 매개변수를 사용할 수 있습니다: [lc](#1-문제-생성---lc)
-
-간단한 사용 예시:
-
-```shell
-# yarn을 사용하여 실행
-yarn lc 1314
-```
-
-실행 결과:
-
-```shell
-# src 디렉토리에 생성됩니다
-> yarn lc 1314
-yarn run v1.22.19
-$ node bin/lc.js -d src 1314
-MODE: identity
-문제[1314.행렬 블록 합]이 생성되었습니다!
-문제 파일 주소는: /Users/mac-106/wh131462/workspace/leetcode-practice/src/1314.matrix-block-sum/index.js
-✨ Done in 1.06s.
-```
-
-##### [2]. 문제 검사 [`lk`]
-
-CLI의 `lk` 섹션을 참고하여 매개변수를 사용할 수 있습니다: [lk](#2-문제-검사---lk)
-
-간단한 사용 예시:
-
-```shell
-# yarn을 사용하여 실행
-yarn lk 1314
-```
-
-실행 결과:
-
-```shell
-# src 디렉토리에서 검사됩니다
-> yarn lk 1314
-yarn run v1.22.19
-$ node bin/lk.js -d src 1314
-MODE: identity
-문제[1314.행렬 블록 합] 검사 결과:
-┌─────────┬──────────┬──────────────────────────────────────┬───────────┬────────────┬───────────┐
-│ (index) │ 테스트 결과 │ 예상 결과 │ 실행 결과 │ 실행 시간 │ 메모리 사용량 │
-├─────────┼──────────┼──────────────────────────────────────┼───────────┼────────────┼───────────┤
-│ 0 │ '미통과' │ '[[12,21,16],[27,45,33],[24,39,28]]' │ undefined │ '0.1487ms' │ '2.47 KB' │
-│ 1 │ '미통과' │ '[[45,45,45],[45,45,45],[45,45,45]]' │ undefined │ '0.0278ms' │ '2.61 KB' │
-└─────────┴──────────┴──────────────────────────────────────┴───────────┴────────────┴───────────┘
-문제 제출로 이동하려면 클릭하십시오: https://leetcode-cn/problems/matrix-block-sum/
-✨ Done in 1.13s.
-```
-
-##### [3]. 문제 찾기 [`lf`]
-
-CLI의 `lf` 섹션을 참고하여 매개변수를 사용할 수 있습니다: [lf](#3-문제-찾기---lf)
-
-미개발...
-
-##### [4]. 업데이트 [`update`]
-
-로컬 프로젝트를 업데이트하는 특정 스크립트는 모든 src 디렉토리가 아닌 업데이트를 위해 모든 비-src 디렉토리를 업데이트합니다.
-
-> 참고: 자체적으로 최적화된 변경 코드가 있는 경우 이 단계를 신중하게 수행하십시오! 특별한 경우의 업그레이드 방법은 [특별한 경우의 업그레이드 방법](./update.md)을 참조하십시오!
-
-### 플러그인의 사용
-
-미개발...
-
-## 기여자
-
-[
](https://github.com/wh131462)
-[
](https://github.com/SmallTeddy)
-[
](https://github.com/Hedwig-Fang)
-
-## 피드백
-
-사용 중에 `문제`가 있거나 `좋은 제안`이 있으면 언제든지 `피드백 그룹`에 참여하여 `피드백`을 제공하십시오! 우리는 신속하게 처리할 것입니다!
-
-
diff --git a/docs/update.md b/docs/update.md
deleted file mode 100644
index d8d2b17..0000000
--- a/docs/update.md
+++ /dev/null
@@ -1,11 +0,0 @@
-# 中文说明
-
-## 特殊情况下的升级方案
-
-待编写...
-
-# English Explanation
-
-## Upgrade Plan for Special Cases
-
-To be written...
diff --git a/package.json b/package.json
index 1ce9f95..35c6d6f 100644
--- a/package.json
+++ b/package.json
@@ -1,7 +1,7 @@
{
"name": "leetcode-practice",
"type": "module",
- "version": "1.0.5",
+ "version": "1.0.6",
"packageManager": "yarn@1.22.0",
"description": "A powerful practice platform for leetcode.Using any way you want to create questions.",
"author": {
@@ -51,13 +51,9 @@
"chalk": "^5.3.0",
"commander": "^12.0.0",
"console-table-printer": "^2.12.0",
- "eslint-config-prettier": "^9.1.0",
- "eslint-plugin-prettier": "^5.1.3",
"glob": "^10.3.10",
"inquirer": "^9.2.14",
- "lint-staged": "^15.2.2",
- "prettier": "^3.2.5",
- "realm": "^12.6.0"
+ "realm": "^11.0.0"
},
"devDependencies": {
"@antfu/eslint-config": "^2.8.0",
@@ -72,11 +68,16 @@
"esbuild": "^0.20.0",
"eslint": "^8.57.0",
"eslint-config-airbnb-base": "^15.0.0",
+ "eslint-config-prettier": "^9.1.0",
"eslint-plugin-import": "^2.29.1",
+ "eslint-plugin-prettier": "^5.1.3",
"gradient-string": "^2.0.2",
"husky": "^8.0.1",
+ "lint-staged": "^15.2.2",
+ "prettier": "^3.2.5",
"release-it": "^17.1.1",
"rimraf": "^5.0.5",
+ "typescript": "^5.4.2",
"vite": "^5.0.11",
"vitest": "^1.2.2"
},
diff --git a/resources/headers/questionListHot100Json.js b/resources/headers/planQuestionListJson.js
similarity index 56%
rename from resources/headers/questionListHot100Json.js
rename to resources/headers/planQuestionListJson.js
index 2d3707d..e08d174 100644
--- a/resources/headers/questionListHot100Json.js
+++ b/resources/headers/planQuestionListJson.js
@@ -2,10 +2,10 @@
* 获取hot 100 的请求header
* @returns {{headers: {"content-type": string}, method: string, body: string}}
*/
-export function getQuestionListHot100Json() {
+export function getPlanQuestionListJson(slug) {
return {
headers: { 'content-type': 'application/json' },
- body: '{"query":"\\n query studyPlanPastSolved($slug: String!) {\\n studyPlanV2Detail(planSlug: $slug) {\\n planSubGroups {\\n slug\\n questions {\\n titleSlug\\n status\\n }\\n }\\n }\\n}\\n ","variables":{"slug":"top-100-liked"},"operationName":"studyPlanPastSolved"}',
+ body: `{"query":"\\n query studyPlanPastSolved($slug: String!) {\\n studyPlanV2Detail(planSlug: $slug) {\\n planSubGroups {\\n slug\\n questions {\\n titleSlug\\n translatedTitle\\n status\\n }\\n }\\n }\\n}\\n ","variables":{"slug":"${slug}"},"operationName":"studyPlanPastSolved"}`,
method: 'POST'
}
}
diff --git a/resources/headers/studyPlanListJson.js b/resources/headers/studyPlanListJson.js
new file mode 100644
index 0000000..ef910a7
--- /dev/null
+++ b/resources/headers/studyPlanListJson.js
@@ -0,0 +1,7 @@
+export function getStudyPlanListJson() {
+ return {
+ headers: { 'content-type': 'application/json' },
+ body: '{"query":"\\n query GetProblemSetStudyPlanAds {\\n studyPlansV2AdQuestionPage {\\n cover\\n highlight\\n name\\n onGoing\\n premiumOnly\\n questionNum\\n slug\\n }\\n}\\n ","variables":{},"operationName":"GetProblemSetStudyPlanAds"}',
+ method: 'POST'
+ }
+}
diff --git a/resources/images/create-finish.png b/resources/images/create-finish.png
new file mode 100644
index 0000000..fd6a514
Binary files /dev/null and b/resources/images/create-finish.png differ
diff --git a/resources/images/create-new-by-template.png b/resources/images/create-new-by-template.png
new file mode 100644
index 0000000..06db0bf
Binary files /dev/null and b/resources/images/create-new-by-template.png differ
diff --git a/resources/images/fulfill-template-new.png b/resources/images/fulfill-template-new.png
new file mode 100644
index 0000000..280cb8a
Binary files /dev/null and b/resources/images/fulfill-template-new.png differ
diff --git a/resources/images/generating-your-template.png b/resources/images/generating-your-template.png
new file mode 100644
index 0000000..612d93f
Binary files /dev/null and b/resources/images/generating-your-template.png differ
diff --git a/resources/images/github-fork.png b/resources/images/github-fork.png
deleted file mode 100644
index a4ac9b8..0000000
Binary files a/resources/images/github-fork.png and /dev/null differ
diff --git a/resources/images/github-forked.png b/resources/images/github-forked.png
deleted file mode 100644
index 2d4376f..0000000
Binary files a/resources/images/github-forked.png and /dev/null differ
diff --git a/resources/images/github-forking.png b/resources/images/github-forking.png
deleted file mode 100644
index 7f9fe35..0000000
Binary files a/resources/images/github-forking.png and /dev/null differ
diff --git a/resources/images/leetcode-practice-github.png b/resources/images/leetcode-practice-github.png
deleted file mode 100644
index 936643e..0000000
Binary files a/resources/images/leetcode-practice-github.png and /dev/null differ
diff --git a/resources/images/template-page.png b/resources/images/template-page.png
new file mode 100644
index 0000000..252a7c7
Binary files /dev/null and b/resources/images/template-page.png differ
diff --git a/test/getHot100List.spec.js b/test/getHot100List.spec.js
deleted file mode 100644
index 8b74225..0000000
--- a/test/getHot100List.spec.js
+++ /dev/null
@@ -1,10 +0,0 @@
-import { describe, expect, it } from 'vitest'
-import { getQuestionListHot100 } from '#common/utils/question-getter/getQuestionListHot100.js'
-
-describe('hot 100获取数据测试', () => {
- it('是否正确获取了hot 100合集', async () => {
- const res = await getQuestionListHot100()
-
- expect(Object.keys(res)).toStrictEqual(['planSubGroups'])
- })
-})