add-feedback-improvements #5

Open
admin wants to merge 10 commits from add-feedback-improvements into main
3 changed files with 29 additions and 4 deletions
Showing only changes of commit 70414a552d - Show all commits

View File

@@ -254,6 +254,13 @@ def main():
help="Use vault directory instead of pub (vault/rocky instead of pub/rocky)",
)
parser.add_argument(
"--existing-versions",
nargs="*",
metavar="VERSION",
help="List of existing versions to include in root index (e.g., 8.10 9.7)",
)
parser.add_argument(
"--template-dir",
type=Path,
@@ -333,13 +340,24 @@ def main():
allow_all_sections=args.allow_all_sections,
)
# Scan for existing versions in output directory
existing_versions = [
# Get existing versions from scan and argument
scanned_versions = [
d.name
for d in config.output_dir.iterdir()
if d.is_dir() and re.match(r"\d+\.\d+", d.name)
]
all_versions = sorted(set(existing_versions + config.versions))
arg_versions = args.existing_versions or []
# Sort versions numerically by (major, minor)
def version_key(v):
try:
major, minor = v.split(".")
return (int(major), int(minor))
except (ValueError, AttributeError):
return (0, 0)
existing_versions = sorted(set(scanned_versions + arg_versions), key=version_key)
all_versions = sorted(set(existing_versions + config.versions), key=version_key)
logger.info("Rocky Man - Rocky Linux Man Page Generator")
logger.info(f"Versions to process: {', '.join(config.versions)}")

View File

@@ -292,6 +292,8 @@ class WebGenerator:
minors_list = sorted(major_to_minors[major], key=int, reverse=True)
if minor_idx < len(minors_list):
row.append((major, minors_list[minor_idx]))
else:
row.append(None) # Empty cell placeholder
version_rows.append(row)
html = template.render(

View File

@@ -164,7 +164,9 @@
<div class="version-grid">
{% for row in version_rows %}
{% set outer_loop = loop %}
{% for major, minor in row %}
{% for item in row %}
{% if item %}
{% set major, minor = item %}
<a href="{{ major }}.{{ minor }}/index.html" class="version-card{% if not outer_loop.first %} small{% endif %}">
<div class="version-number">{{ major }}.{{ minor }}</div>
{% if outer_loop.first %}
@@ -172,6 +174,9 @@
<div class="version-browse">Browse man pages →</div>
{% endif %}
</a>
{% else %}
<div></div>
{% endif %}
{% endfor %}
{% endfor %}
</div>