Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
43 changes: 43 additions & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
// For format details, see https://aka.ms/devcontainer.json. For config options, see the
// README at: https://github.com/devcontainers/templates/tree/main/src/python
{
"name": "Python 3",
// Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile
"image": "mcr.microsoft.com/devcontainers/python:0-3.10",
"features": {
"ghcr.io/devcontainers/features/github-cli:1": {},
"ghcr.io/devcontainers-contrib/features/pipx-package:1": {},
"ghcr.io/devcontainers-contrib/features/poetry:2": {},
"ghcr.io/devcontainers-contrib/features/pre-commit:2": {}
},
// Features to add to the dev container. More info: https://containers.dev/features.
// "features": {},
// Use 'forwardPorts' to make a list of ports inside the container available locally.
// "forwardPorts": [],
"forwardPorts": [
8000
],
"portsAttributes": {
"8000": {
"label": "mkdocs serve",
"onAutoForward": "notify"
}
},
// Use 'postCreateCommand' to run commands after the container is created.
// "postCreateCommand": "pip3 install --user -r requirements.txt",
"postStartCommand": "git config --global --add safe.directory ${containerWorkspaceFolder} && pre-commit && poetry install",
"customizations": {
"vscode": {
"extensions": [
"EditorConfig.EditorConfig",
"GitHub.vscode-pull-request-github",
"yzhang.markdown-all-in-one",
"ms-vscode-remote.vscode-remote-extensionpack"
]
}
}
// Configure tool-specific properties.
// "customizations": {},
// Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root.
// "remoteUser": "root"
}
2 changes: 2 additions & 0 deletions .flake8
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[flake8]
max-line-length = 88
6 changes: 6 additions & 0 deletions .github/workflows/workflow.pr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,9 +30,15 @@ jobs:
- name: Install dependencies
run: poetry install --only=dev

- name: Check imports sort
run: poetry run isort --check-only .

- name: Check formatting
run: poetry run black --check .

- name: Check formatting
run: poetry run flake8 --count .

test:
name: Test
needs: lint
Expand Down
13 changes: 13 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
repos:
- repo: https://github.com/psf/black
rev: 23.1.0
hooks:
- id: black
- repo: https://github.com/PyCQA/isort
rev: 5.12.0
hooks:
- id: isort
- repo: https://github.com/pycqa/flake8
rev: 6.0.0
hooks:
- id: flake8
7 changes: 7 additions & 0 deletions dev.build.sh
Original file line number Diff line number Diff line change
@@ -1,7 +1,14 @@
#!/bin/bash

rm -rf dist && rm -rf build && rm -rf site && rm -rf *.egg-info

poetry run isort .
poetry run black .
poetry run flake8 --count .

poetry build

pip uninstall -y mkdocs_file_filter_plugin
pip install dist/mkdocs_file_filter_plugin-*.tar.gz

poetry run mkdocs serve --verbose
2 changes: 1 addition & 1 deletion mkdocs.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
INHERIT: mkdocs.base.yml

dev_addr: 127.0.0.1:1357
#! dev_addr: 127.0.0.1:1357

plugins:
- search
Expand Down
6 changes: 4 additions & 2 deletions mkdocs_file_filter_plugin/external_config.py
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
import os
import pathlib

import yaml
from yaml_env_tag import construct_env_tag
from schema import Optional, Schema, SchemaError
from mkdocs.exceptions import PluginError
from schema import Optional, Schema, SchemaError
from yaml_env_tag import construct_env_tag

from . import util as LOG


Expand Down
12 changes: 7 additions & 5 deletions mkdocs_file_filter_plugin/judger.py
Original file line number Diff line number Diff line change
@@ -1,12 +1,14 @@
import os
import fnmatch
import re
import os
import pathlib
import re

import igittigitt
from .plugin_config import PluginConfig
from mkdocs.config.defaults import MkDocsConfig
from mkdocs.structure.files import File as MkDocsFile
from mkdocs.structure.pages import Page as MkDocsPage
from mkdocs.config.defaults import MkDocsConfig

from .plugin_config import PluginConfig


class Judger:
Expand Down Expand Up @@ -52,7 +54,7 @@ def evaluate(self, file: MkDocsFile):
return True, "no rule"

def __path_fix(self, src_path, abs_src_path):
if os.sep is not "/":
if os.sep != "/":
src_path = src_path.replace(os.sep, "/")
abs_src_path = abs_src_path.replace(os.sep, "/")
return src_path, abs_src_path
Expand Down
10 changes: 6 additions & 4 deletions mkdocs_file_filter_plugin/plugin.py
Original file line number Diff line number Diff line change
@@ -1,11 +1,13 @@
import pathlib
from mkdocs.plugins import BasePlugin as MkDocsPlugin

from mkdocs.config.defaults import MkDocsConfig
from mkdocs.structure.files import Files as MkDocsFiles
from mkdocs.exceptions import PluginError as MkDocsPluginError
from mkdocs.plugins import BasePlugin as MkDocsPlugin
from mkdocs.structure.files import Files as MkDocsFiles

from . import util as LOG
from .judger import Judger
from .external_config import ExternalConfig
from .judger import Judger
from .plugin_config import PluginConfig


Expand All @@ -19,7 +21,7 @@ def on_config(self, config: MkDocsConfig):
file_filter_config = external_config.load(self.config.config)

for k in self.config.keys():
if k is not "config":
if k != "config":
self.config[k] = file_filter_config.get(k, self.config[k])

config.watch.append(pathlib.Path(self.config.config))
Expand Down
2 changes: 1 addition & 1 deletion mkdocs_file_filter_plugin/plugin_config.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
from mkdocs.config.base import Config as MkDocsConfigBase
import mkdocs.config.config_options as MkDocsConfigOptions
from mkdocs.config.base import Config as MkDocsConfigBase


class PluginConfig(MkDocsConfigBase):
Expand Down
1 change: 1 addition & 0 deletions mkdocs_file_filter_plugin/util.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import logging

from mkdocs.utils import warning_filter

# ------------------------------------------
Expand Down
Loading