[feat] integrate progress manager into speaker name prompts for better coordination
This commit is contained in:
15
src/main.rs
15
src/main.rs
@@ -133,7 +133,12 @@ fn sanitize_speaker_name(raw: &str) -> String {
|
|||||||
raw.to_string()
|
raw.to_string()
|
||||||
}
|
}
|
||||||
|
|
||||||
fn prompt_speaker_name_for_path(path: &Path, default_name: &str, enabled: bool) -> String {
|
fn prompt_speaker_name_for_path(
|
||||||
|
path: &Path,
|
||||||
|
default_name: &str,
|
||||||
|
enabled: bool,
|
||||||
|
_pm: Option<&polyscribe::ui::progress::ProgressManager>,
|
||||||
|
) -> String {
|
||||||
if !enabled {
|
if !enabled {
|
||||||
return default_name.to_string();
|
return default_name.to_string();
|
||||||
}
|
}
|
||||||
@@ -323,6 +328,12 @@ fn run() -> Result<()> {
|
|||||||
));
|
));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Initialize progress manager early to coordinate prompts
|
||||||
|
let mut pm = polyscribe::ui::progress::ProgressManager::default_for_files(inputs.len());
|
||||||
|
|
||||||
|
// Initialize progress manager early to coordinate prompts
|
||||||
|
let mut pm = polyscribe::ui::progress::ProgressManager::default_for_files(inputs.len());
|
||||||
|
|
||||||
// Collect all speaker names up front (one per input), before any file reading/transcription
|
// Collect all speaker names up front (one per input), before any file reading/transcription
|
||||||
let speakers: Vec<String> = inputs
|
let speakers: Vec<String> = inputs
|
||||||
.iter()
|
.iter()
|
||||||
@@ -333,7 +344,7 @@ fn run() -> Result<()> {
|
|||||||
.and_then(|s| s.to_str())
|
.and_then(|s| s.to_str())
|
||||||
.unwrap_or("speaker"),
|
.unwrap_or("speaker"),
|
||||||
);
|
);
|
||||||
prompt_speaker_name_for_path(path, &default_speaker, args.set_speaker_names)
|
prompt_speaker_name_for_path(path, &default_speaker, args.set_speaker_names, Some(&pm))
|
||||||
})
|
})
|
||||||
.collect();
|
.collect();
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user