@@ -58,6 +58,38 @@ pub struct Config {
5858 pub approx_variation : u32 ,
5959}
6060
61+ impl std:: fmt:: Display for Config {
62+ fn fmt ( & self , f : & mut std:: fmt:: Formatter ) -> std:: fmt:: Result {
63+ let mut table = Table :: new ( ) ;
64+ table
65+ . load_preset ( UTF8_FULL )
66+ . apply_modifier ( UTF8_ROUND_CORNERS )
67+ . set_content_arrangement ( ContentArrangement :: Dynamic )
68+ . set_header ( vec ! [ "Quantities" . green( ) , "Value" . green( ) ] ) ;
69+ table. add_row ( vec ! [ "Add Weekday" , & self . add_weekday. to_string( ) ] ) ;
70+ table. add_row ( vec ! [ "Add Food Column" , & self . add_food_column. to_string( ) ] ) ;
71+ table. add_row ( vec ! [ "Add timestamp" , & self . add_timestamp. to_string( ) ] ) ;
72+ table. add_row ( vec ! [ "Default Editor" , & self . editor. to_string( ) ] ) ;
73+ table. add_row ( vec ! [ "Default Pager" , & self . pager. to_string( ) ] ) ;
74+ table. add_row ( vec ! [
75+ "Max rows to display for tags" ,
76+ & self . max_rows. to_string( ) ,
77+ ] ) ;
78+ table. add_row ( vec ! [ "When to use pager" , & self . when_pager. to_string( ) ] ) ;
79+ table. add_row ( vec ! [ "Default path" , & self . default_path. to_string( ) ] ) ;
80+ table. add_row ( vec ! [
81+ "Approximation sensitivity " ,
82+ & self . approx_variation. to_string( ) ,
83+ ] ) ;
84+ write ! (
85+ f,
86+ "{}\n {}" ,
87+ "CONFIGURATION" . cyan( ) . bold( ) . underline( ) ,
88+ table
89+ )
90+ }
91+ }
92+
6193/// Returns all headings(`# <stuff>`) and their corresponding line numbers
6294/// as a tuple: (headings, corresponding_line_no)
6395pub fn get_headings ( filename : & str ) -> ( Vec < String > , Vec < u32 > ) {
0 commit comments