added latest-first option

This commit is contained in:
Dooho Yi 2021-01-31 19:26:21 +09:00
parent 410efea672
commit ee4c33100a
2 changed files with 18 additions and 6 deletions

View file

@ -94,6 +94,12 @@ def build_argparser():
help="Enable unfolding detecting .unfolding", help="Enable unfolding detecting .unfolding",
action="store_true") action="store_true")
parser.add_argument(
'--latest-first',
help="sort file/folders to be latest object comes earlier",
action="store_true",
)
return parser return parser

View file

@ -111,10 +111,13 @@ def write_index(args,index, html, html_head, html_footer):
def render_dir(args, root): def render_dir(args, root):
reverse = False
if args.latest_first:
reverse = True
html = [] html = []
#for name in sorted(os.listdir(root)): for name in sorted(os.listdir(root),reverse=reverse):
for name in sorted(os.listdir(root),reverse=True):
if args.no_hidden: if args.no_hidden:
if name.startswith('.'): if name.startswith('.'):
@ -213,6 +216,11 @@ def render_dir(args, root):
def distribusify(args, directory): # noqa def distribusify(args, directory): # noqa
reverse = False
if args.latest_first:
reverse = True
for root, dirs, files in os.walk(directory): for root, dirs, files in os.walk(directory):
if args.exclude_directory: if args.exclude_directory:
@ -237,8 +245,7 @@ def distribusify(args, directory): # noqa
if args.verbose: if args.verbose:
print('Generating directory listing for', root) print('Generating directory listing for', root)
#for name in sorted(files): for name in sorted(files,reverse=reverse):
for name in sorted(files,reverse=True):
if 'index.html' not in name: if 'index.html' not in name:
full_path = os.path.join(root, name) full_path = os.path.join(root, name)
@ -308,8 +315,7 @@ def distribusify(args, directory): # noqa
else: else:
html.append('<a href="../">../</a>') html.append('<a href="../">../</a>')
#for name in dirs: for name in sorted(dirs,reverse=reverse):
for name in sorted(dirs,reverse=True):
#check - time string #check - time string
m = PATTERN_TSTR.search(name) m = PATTERN_TSTR.search(name)