@@ -3,7 +3,7 @@ use anyhow::{Context, Result, bail};
33use firefly_types:: Encode ;
44use std:: path:: Path ;
55
6- pub fn cmd_config_get ( vfs : & Path , _args : & ConfigGetArgs ) -> Result < ( ) > {
6+ pub fn cmd_config_get ( vfs : & Path , args : & ConfigGetArgs ) -> Result < ( ) > {
77 if !vfs. exists ( ) {
88 bail ! ( "vfs is not created yet" )
99 }
@@ -13,6 +13,32 @@ pub fn cmd_config_get(vfs: &Path, _args: &ConfigGetArgs) -> Result<()> {
1313 }
1414 let raw = std:: fs:: read ( settings_path) . context ( "read settings" ) ?;
1515 let s = firefly_types:: Settings :: decode ( & raw ) . context ( "parse settings" ) ?;
16+
17+ if let Some ( key) = & args. key {
18+ match key. as_str ( ) {
19+ "xp" => println ! ( "{}" , s. xp) ,
20+ "badges" => println ! ( "{}" , s. badges) ,
21+ "country" => println ! ( "{}" , p( & s. country) ) ,
22+ "lang" => println ! ( "{}" , p( & s. lang) ) ,
23+ "name" => println ! ( "{}" , s. name) ,
24+ "timezone" => println ! ( "{}" , s. timezone) ,
25+ "auto_lock" => println ! ( "{}" , s. auto_lock) ,
26+ "font_size" => println ! ( "{}" , s. font_size) ,
27+ "headphones_volume" => println ! ( "{}" , s. headphones_volume) ,
28+ "leds_brightness" => println ! ( "{}" , s. leds_brightness) ,
29+ "screen_brightness" => println ! ( "{}" , s. screen_brightness) ,
30+ "speakers_volume" => println ! ( "{}" , s. speakers_volume) ,
31+ "contrast" => println ! ( "{}" , s. contrast) ,
32+ "easter_eggs" => println ! ( "{}" , s. easter_eggs) ,
33+ "gamepad_mode" => println ! ( "{}" , s. gamepad_mode) ,
34+ "reduce_flashing" => println ! ( "{}" , s. reduce_flashing) ,
35+ "rotate_screen" => println ! ( "{}" , s. rotate_screen) ,
36+ "telemetry" => println ! ( "{}" , s. telemetry) ,
37+ _ => bail ! ( "unsupported key" ) ,
38+ }
39+ return Ok ( ( ) ) ;
40+ }
41+
1642 println ! ( "{{" ) ;
1743 println ! ( r#" "xp": {},"# , s. xp) ;
1844 println ! ( r#" "badges": {},"# , s. badges) ;
@@ -22,12 +48,12 @@ pub fn cmd_config_get(vfs: &Path, _args: &ConfigGetArgs) -> Result<()> {
2248 println ! ( r#" "timezone": "{}","# , s. timezone) ;
2349
2450 println ! ( ) ;
25- println ! ( r#" "auto_lock": {},"# , s. auto_lock) ;
26- println ! ( r#" "font_size": {},"# , s. font_size) ;
27- println ! ( r#" "headphones_volume": {},"# , s. headphones_volume) ;
28- println ! ( r#" "leds_brightness": {},"# , s. leds_brightness) ;
29- println ! ( r#" "screen_brightness": {},"# , s. screen_brightness) ;
30- println ! ( r#" "speakers_volume": {},"# , s. speakers_volume) ;
51+ println ! ( r#" "auto_lock": {:>3 },"# , s. auto_lock) ;
52+ println ! ( r#" "font_size": {:>3 },"# , s. font_size) ;
53+ println ! ( r#" "headphones_volume": {:>3 },"# , s. headphones_volume) ;
54+ println ! ( r#" "leds_brightness": {:>3 },"# , s. leds_brightness) ;
55+ println ! ( r#" "screen_brightness": {:>3 },"# , s. screen_brightness) ;
56+ println ! ( r#" "speakers_volume": {:>3 },"# , s. speakers_volume) ;
3157
3258 println ! ( ) ;
3359 println ! ( r#" "contrast": {},"# , s. contrast) ;
0 commit comments