commit 04397ece791d704087c211c641d7dd41b867399b parent 714dfa88e8b0b3d1b58e5be99b77fe3b2fd6f175 Author: Andrew Laack <andrew@laack.co> Date: Thu, 27 Aug 2026 16:33:40 -0500 Better page finding logic Diffstat:
| M | learning/bin/main.ml | | | 11 | ++++++++--- |
1 file changed, 8 insertions(+), 3 deletions(-)
diff --git a/learning/bin/main.ml b/learning/bin/main.ml @@ -64,11 +64,16 @@ let render_course_list = let prepend prefix s = prefix ^ s +(* Assumes length >= 3*) +let has_sl_postfix s = + let len = String.length(s) in + s.[len - 1] = 'l' && s.[len - 2] = 's' && s.[len - 3] = '.' let get_pages_in_order course_name = let arr = Sys.readdir (course_dir ^ course_name) in Array.sort compare arr; - arr + let lst = List.filter has_sl_postfix (Array.to_list arr) in + lst let get_pages page_arr = readFile page_arr.(0) @@ -80,10 +85,10 @@ let arr_to_string arr = in go "" 0 let get_course_home course_name = - Array.map to_tval (get_pages_in_order course_name) + List.map to_tval (get_pages_in_order course_name) let render_course_home course_name = - (Jg_template.from_file "./templates/course_home.jingoo" ~models:[("pages", (Jg_types.Tlist (Array.to_list (get_course_home course_name))))]) + (Jg_template.from_file "./templates/course_home.jingoo" ~models:[("pages", (Jg_types.Tlist (get_course_home course_name)))]) let get_path_to_page course page = course_dir ^ course ^ "/" ^ page