aboutsummaryrefslogtreecommitdiff
path: root/src/cliargs.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/cliargs.rs')
-rw-r--r--src/cliargs.rs16
1 files changed, 12 insertions, 4 deletions
diff --git a/src/cliargs.rs b/src/cliargs.rs
index 7fd512e..a298f65 100644
--- a/src/cliargs.rs
+++ b/src/cliargs.rs
@@ -34,7 +34,7 @@ sarge! {
pub struct CLIArgs {
pub helparg: bool,
pub versionarg: bool,
- pub bibfilearg: PathBuf,
+ pub bibfilearg: Vec<PathBuf>,
}
impl Default for CLIArgs {
@@ -47,10 +47,9 @@ impl CLIArgs {
pub fn new() -> Self {
let (cli_args, pos_args) = ArgumentsCLI::parse().expect("Could not parse CLI arguments");
let bibfilearg = if pos_args.len() > 1 {
- PathBuf::from(&pos_args[1])
- // pos_args[1].to_string()
+ parse_files(pos_args)
} else {
- PathBuf::new()
+ panic!("No bibfile provided")
};
Self {
helparg: cli_args.help,
@@ -60,6 +59,15 @@ impl CLIArgs {
}
}
+pub fn parse_files(args: Vec<String>) -> Vec<PathBuf> {
+ let mut files: Vec<PathBuf> = Vec::new();
+ for f in args {
+ files.push(PathBuf::from(f))
+ }
+ files.remove(0);
+ files
+}
+
pub fn help_func() -> String {
let help = format!(
"\