]> jfr.im git - yt-dlp.git/blobdiff - devscripts/make_readme.py
[cleanup] Misc
[yt-dlp.git] / devscripts / make_readme.py
index 015212aa36b2bd7663daa58002a5c652033423a8..fad993a199d29a749ad4a281c6fd164cad3e71ca 100755 (executable)
@@ -1,10 +1,21 @@
 #!/usr/bin/env python3
 
-# yt-dlp --help | make_readme.py
-# This must be run in a console of correct width
+"""
+yt-dlp --help | make_readme.py
+This must be run in a console of correct width
+"""
+
+# Allow direct execution
+import os
+import sys
+
+sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
+
+
 import functools
 import re
-import sys
+
+from devscripts.utils import read_file, write_file
 
 README_FILE = 'README.md'
 
@@ -34,6 +45,10 @@ def apply_patch(text, patch):
 delim = f'\n{" " * switch_col_width}'
 
 PATCHES = (
+    (   # Standardize update message
+        r'(?m)^(    -U, --update\s+).+(\n    \s.+)*$',
+        r'\1Update this program to the latest version',
+    ),
     (  # Headings
         r'(?m)^  (\w.+\n)(    (?=\w))?',
         r'## \1'
@@ -59,12 +74,10 @@ def apply_patch(text, patch):
     ),
 )
 
-with open(README_FILE, encoding='utf-8') as f:
-    readme = f.read()
+readme = read_file(README_FILE)
 
-with open(README_FILE, 'w', encoding='utf-8') as f:
-    f.write(''.join((
-        take_section(readme, end=f'## {OPTIONS_START}'),
-        functools.reduce(apply_patch, PATCHES, options),
-        take_section(readme, f'# {OPTIONS_END}'),
-    )))
+write_file(README_FILE, ''.join((
+    take_section(readme, end=f'## {OPTIONS_START}'),
+    functools.reduce(apply_patch, PATCHES, options),
+    take_section(readme, f'# {OPTIONS_END}'),
+)))