mirror of
https://github.com/emmabostian/developer-portfolios.git
synced 2025-02-28 22:09:41 +00:00
43 lines
1.2 KiB
Python
43 lines
1.2 KiB
Python
import re
|
|
|
|
def sort_lists_alphabetically(lines):
|
|
header_pattern = re.compile(r'^##\s+([A-Z])')
|
|
current_header = None
|
|
list_items = []
|
|
sorted_lines = []
|
|
header_indices = []
|
|
|
|
for i, line in enumerate(lines):
|
|
header_match = header_pattern.match(line)
|
|
if header_match:
|
|
if current_header and list_items:
|
|
sorted_lines.extend(sorted(list_items))
|
|
list_items = []
|
|
current_header = header_match.group(1)
|
|
sorted_lines.append(line)
|
|
header_indices.append(i)
|
|
elif current_header and line.startswith('- '):
|
|
list_items.append(line)
|
|
else:
|
|
if list_items and not line.startswith('- '):
|
|
sorted_lines.extend(sorted(list_items))
|
|
list_items = []
|
|
sorted_lines.append(line)
|
|
|
|
if current_header and list_items:
|
|
sorted_lines.extend(sorted(list_items))
|
|
|
|
return sorted_lines, header_indices
|
|
|
|
def main():
|
|
with open('README.md', 'r') as file:
|
|
lines = file.readlines()
|
|
|
|
sorted_lines, header_indices = sort_lists_alphabetically(lines)
|
|
|
|
with open('README.md', 'w') as file:
|
|
file.writelines(sorted_lines)
|
|
|
|
if __name__ == "__main__":
|
|
main()
|