diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/lib.rs | 19 |
1 files changed, 15 insertions, 4 deletions
@@ -361,11 +361,22 @@ impl Session { } } +const DEFAULT_PROFILE: &[u8] = include_bytes!("profile"); + fn exec_rc_file(se: Arc<Mutex<Session>>) { - let _ = run::source( - se, - basedir::config_dir().join(".pishrc").as_os_str().as_bytes(), - ); + let rcfile = basedir::config_dir().join(".pishrc"); + if let Ok(true) = fs::exists(&rcfile) { + let _ = run::source(se, rcfile.as_os_str().as_bytes()); + } else { + println!("{rcfile:?} does not exist. running default profile."); + let script = parse::Script::parse_from_bytes(DEFAULT_PROFILE).unwrap(); + run::run_script(se, script); + } +} + +#[test] +fn default_profile_should_parse() { + parse::Script::parse_from_bytes(DEFAULT_PROFILE).expect("default profile does not parse."); } pub fn event_loop() { |
