{"id":13593641,"url":"https://github.com/TonyCrane/mkdocs-changelog-plugin","last_synced_at":"2025-04-09T05:31:53.808Z","repository":{"id":65641334,"uuid":"572531478","full_name":"TonyCrane/mkdocs-changelog-plugin","owner":"TonyCrane","description":"A MkDocs plugin that create changelog in a page","archived":false,"fork":false,"pushed_at":"2023-11-22T23:30:11.000Z","size":20,"stargazers_count":17,"open_issues_count":1,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-04-24T02:01:02.498Z","etag":null,"topics":["changelog","mkdocs","mkdocs-material","mkdocs-plugin"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/TonyCrane.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2022-11-30T13:29:35.000Z","updated_at":"2024-04-05T14:50:19.000Z","dependencies_parsed_at":"2024-01-14T04:06:38.291Z","dependency_job_id":"54d01b7c-6636-43f6-bea9-f3747c62af64","html_url":"https://github.com/TonyCrane/mkdocs-changelog-plugin","commit_stats":{"total_commits":9,"total_committers":2,"mean_commits":4.5,"dds":"0.11111111111111116","last_synced_commit":"b90ffb47c85e451dd82ce2b0d8779a0f35bea8a0"},"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TonyCrane%2Fmkdocs-changelog-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TonyCrane%2Fmkdocs-changelog-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TonyCrane%2Fmkdocs-changelog-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TonyCrane%2Fmkdocs-changelog-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TonyCrane","download_url":"https://codeload.github.com/TonyCrane/mkdocs-changelog-plugin/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223365397,"owners_count":17133707,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["changelog","mkdocs","mkdocs-material","mkdocs-plugin"],"created_at":"2024-08-01T16:01:22.566Z","updated_at":"2024-11-06T15:30:56.575Z","avatar_url":"https://github.com/TonyCrane.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"# mkdocs-changelog-plugin\n\n一个用于在 mkdocs 文档中插入 changelog 时间轴的插件。\n\n预览：https://note.tonycrane.cc/changelog/\n\n## 安装\n可以通过 pypi 直接安装：\n```shell\n$ pip install mkdocs-changelog-plugin\n```\n\n也可以从源码安装\n\n```shell\n$ git clone https://github.com/TonyCrane/mkdocs-changelog-plugin.git\n$ cd mkdocs-changelog-plugin\n$ pip install . # or pip install -e .\n```\n\n## 使用\n- 在 mkdocs.yml 中启用插件：\n    ```yaml\n    plugins:\n        - changelog\n    ```\n- changelog 从外部的 yaml 文件读取，默认在 docs/changelog.yml 中，可以通过 file 选项来选择其他位置：\n    ```yaml\n    plugins:\n      - changelog:\n          file: changelog.yml\n    ```\n- 按照格式编写 changelog yaml 文件（见下）\n- 在需要插入 changelog 的页面 meta 部分中添加：\n    ```yaml\n    changelog: True\n    ```\n- 在页面需要插入对应部分的位置添加：\n    ```markdown\n    {{ placeholder }}\n    ```\n\n### changelog.yml 格式\n例如：\n```yaml\n- \"placeholder1\":\n  - \"time1\":\n    - \"type\": text\n    - \"type\": text\n- \"placeholder\":\n  - \"time2\":\n    - \"type\":\n        text: text\n        href: /link/to/page/\n    - \"type\":\n        text: text\n        href: /link/to/page/\n  - \"time3\":\n    - \"type\": text\n```\n\n- placeholder 是在 md 文件插入位置写入 {{ }} 的内容\n- time 是时间标题\n- type 是更改类型\n    - 插件内自带三种：\n        - newpage：新建页面\n        - pageupdate：页面更新\n        - function：功能性更新\n    - 可以自定义\n        - 插入 custom css 即可，例如自定义 refactor type：\n            ```css\n            .changelog-type-refactor {\n                background-color: #c63f94b0;\n            }\n            .changelog-type-refactor::before {\n                content: \"文档重构\";\n            }\n            ```\n        - 如果没有对应 css，则显示为蓝色的“更新”\n- type 后可以直接写文本，会直接写在更新类型后面（不支持 markdown，但可以 html）\n- type 后也可以按如上写 text 和 href，此时会给 text 加上 href 指定的 link（利用 a 元素）\n\n具体可以参考[我的 changelog.yml](https://github.com/TonyCrane/note/blob/master/docs/changelog.yml)。\n\n### 主题适配\n感觉 mkdocs 主流主题只有 material 用得多了，所以没做其他主题的适配。基本上就差在几个颜色的问题上，问题不大，可以自己通过 css 来覆盖这里规定的颜色，具体看 css/timeline.css。\n\n## 开发\n嘛，基本就是我用纯 html+css 糊出来自己用的，然后为了方便写了个插件，代码也比较乱，在别人的主题里面可能会~~格式混乱、颜色爆炸~~。有想修改、改进的我非常且热烈欢迎，尽管 PR 就好（\n\n## 参考\n- [timvink/mkdocs-git-revision-date-localized-plugin](https://github.com/timvink/mkdocs-git-revision-date-localized-plugin/)\n- [unverbuggt/mkdocs-encryptcontent-plugin](https://github.com/unverbuggt/mkdocs-encryptcontent-plugin)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FTonyCrane%2Fmkdocs-changelog-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FTonyCrane%2Fmkdocs-changelog-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FTonyCrane%2Fmkdocs-changelog-plugin/lists"}