mirror of
https://github.com/PR0M3TH3AN/Marlin.git
synced 2025-09-08 07:08:44 +00:00
Merge pull request #38 from PR0M3TH3AN/codex/update-cli-bin/build.rs-and-run-tests
Fix CLI build script lookups and clippy lints
This commit is contained in:
@@ -29,12 +29,12 @@ fn generate_cheatsheet() -> Result<(), Box<dyn std::error::Error>> {
|
|||||||
let cmd_name = cmd_name_val.as_str().unwrap_or("");
|
let cmd_name = cmd_name_val.as_str().unwrap_or("");
|
||||||
if let Value::Mapping(cmd_details) = cmd_details_val {
|
if let Value::Mapping(cmd_details) = cmd_details_val {
|
||||||
if let Some(Value::Mapping(actions)) =
|
if let Some(Value::Mapping(actions)) =
|
||||||
cmd_details.get(&Value::String("actions".into()))
|
cmd_details.get(Value::String("actions".into()))
|
||||||
{
|
{
|
||||||
for (action_name_val, action_body_val) in actions {
|
for (action_name_val, action_body_val) in actions {
|
||||||
let action_name = action_name_val.as_str().unwrap_or("");
|
let action_name = action_name_val.as_str().unwrap_or("");
|
||||||
let flags = if let Value::Mapping(action_map) = action_body_val {
|
let flags = if let Value::Mapping(action_map) = action_body_val {
|
||||||
match action_map.get(&Value::String("flags".into())) {
|
match action_map.get(Value::String("flags".into())) {
|
||||||
Some(Value::Sequence(seq)) => seq
|
Some(Value::Sequence(seq)) => seq
|
||||||
.iter()
|
.iter()
|
||||||
.filter_map(|v| v.as_str())
|
.filter_map(|v| v.as_str())
|
||||||
@@ -48,9 +48,8 @@ fn generate_cheatsheet() -> Result<(), Box<dyn std::error::Error>> {
|
|||||||
|
|
||||||
let flags_disp = if flags.is_empty() { "—" } else { &flags };
|
let flags_disp = if flags.is_empty() { "—" } else { &flags };
|
||||||
table.push_str(&format!(
|
table.push_str(&format!(
|
||||||
"| `{}` | {} |\n",
|
"| `{} {}` | {} |\n",
|
||||||
format!("{} {}", cmd_name, action_name),
|
cmd_name, action_name, flags_disp
|
||||||
flags_disp
|
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -16,8 +16,6 @@ use anyhow::{Context, Result};
|
|||||||
use clap::{CommandFactory, Parser};
|
use clap::{CommandFactory, Parser};
|
||||||
use clap_complete::generate;
|
use clap_complete::generate;
|
||||||
use glob::Pattern;
|
use glob::Pattern;
|
||||||
use shellexpand;
|
|
||||||
use shlex;
|
|
||||||
use std::{env, fs, io, path::Path, process::Command};
|
use std::{env, fs, io, path::Path, process::Command};
|
||||||
use tracing::{debug, error, info};
|
use tracing::{debug, error, info};
|
||||||
use walkdir::WalkDir;
|
use walkdir::WalkDir;
|
||||||
@@ -293,13 +291,11 @@ fn run_search(conn: &rusqlite::Connection, raw_query: &str, exec: Option<String>
|
|||||||
|
|
||||||
if let Some(cmd_tpl) = exec {
|
if let Some(cmd_tpl) = exec {
|
||||||
run_exec(&hits, &cmd_tpl)?;
|
run_exec(&hits, &cmd_tpl)?;
|
||||||
|
} else if hits.is_empty() {
|
||||||
|
eprintln!("No matches for query: `{raw_query}` (FTS expr: `{fts_expr}`)");
|
||||||
} else {
|
} else {
|
||||||
if hits.is_empty() {
|
for p in hits {
|
||||||
eprintln!("No matches for query: `{raw_query}` (FTS expr: `{fts_expr}`)");
|
println!("{p}");
|
||||||
} else {
|
|
||||||
for p in hits {
|
|
||||||
println!("{p}");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Ok(())
|
Ok(())
|
||||||
|
@@ -12,7 +12,7 @@ use std::path::PathBuf;
|
|||||||
pub fn determine_scan_root(pattern: &str) -> PathBuf {
|
pub fn determine_scan_root(pattern: &str) -> PathBuf {
|
||||||
// find first wildcard char
|
// find first wildcard char
|
||||||
let first_wild = pattern
|
let first_wild = pattern
|
||||||
.find(|c| matches!(c, '*' | '?' | '['))
|
.find(|c| ['*', '?', '['].contains(&c))
|
||||||
.unwrap_or(pattern.len());
|
.unwrap_or(pattern.len());
|
||||||
|
|
||||||
// everything up to the wildcard (or the whole string if none)
|
// everything up to the wildcard (or the whole string if none)
|
||||||
|
@@ -421,7 +421,7 @@ impl FileWatcher {
|
|||||||
};
|
};
|
||||||
debouncer.add_event(ProcessedEvent {
|
debouncer.add_event(ProcessedEvent {
|
||||||
path,
|
path,
|
||||||
kind: event.kind.clone(),
|
kind: event.kind,
|
||||||
priority: prio,
|
priority: prio,
|
||||||
timestamp: Instant::now(),
|
timestamp: Instant::now(),
|
||||||
});
|
});
|
||||||
|
Reference in New Issue
Block a user