support more illegal Windows filenames
See comments in #1031
diff --git a/.pre-commit-hooks.yaml b/.pre-commit-hooks.yaml
index 116392d..44a8648 100644
--- a/.pre-commit-hooks.yaml
+++ b/.pre-commit-hooks.yaml
@@ -44,7 +44,7 @@
name: check illegal windows names
entry: Illegal windows filenames detected
language: fail
- files: '(?i)(^|/)(CON|PRN|AUX|NUL|COM[1-9]|LPT[1-9])(\.|/|$)'
+ files: '(?i)((^|/)(CON|PRN|AUX|NUL|COM[1-9]|LPT[1-9])(\.|/|$)|:)'
- id: check-json
name: check json
description: checks json files for parseable syntax.
diff --git a/tests/check_illegal_windows_names_test.py b/tests/check_illegal_windows_names_test.py
index 4dce4f6..35a5be3 100644
--- a/tests/check_illegal_windows_names_test.py
+++ b/tests/check_illegal_windows_names_test.py
@@ -28,6 +28,8 @@
pytest.param('aux', id='without ext'),
pytest.param('AuX.tXt', id='capitals'),
pytest.param('com7.dat', id='com with digit'),
+ pytest.param(':', id='bare colon'),
+ pytest.param('file:Zone.Identifier', id='mid colon'),
),
)
def test_check_illegal_windows_names_matches(hook_re, s):