Compare commits

..

No commits in common. "main" and "2.3.0" have entirely different histories.
main ... 2.3.0

6 changed files with 426 additions and 1003 deletions

1395
Cargo.lock generated

File diff suppressed because it is too large Load diff

View file

@ -1,6 +1,6 @@
[package] [package]
name = "movie-rename" name = "movie-rename"
version = "2.3.2" version = "2.3.0"
build = "build.rs" build = "build.rs"
edition = "2021" edition = "2021"
authors = ["Sayantan Santra <sayantan[dot]santra689[at]gmail[dot]com"] authors = ["Sayantan Santra <sayantan[dot]santra689[at]gmail[dot]com"]
@ -17,8 +17,8 @@ categories = ["command-line-utilities"]
[dependencies] [dependencies]
torrent-name-parser = "0.12.1" torrent-name-parser = "0.12.1"
tmdb-api = "0.8.0" tmdb-api = "0.5.0"
inquire = "0.7.5" inquire = "0.6.2"
load_file = "1.0.1" load_file = "1.0.1"
tokio = { version = "1.32.0", features = ["macros", "rt-multi-thread"] } tokio = { version = "1.32.0", features = ["macros", "rt-multi-thread"] }
clap = { version = "4.5.1", features = ["cargo"] } clap = { version = "4.5.1", features = ["cargo"] }

View file

@ -2,7 +2,7 @@ PREFIX := /usr/local
PKGNAME := movie-rename PKGNAME := movie-rename
build: build:
cargo zigbuild --release --target x86_64-unknown-linux-gnu.2.34 cargo build --release
build-debug: build-debug:
cargo build cargo build
@ -19,6 +19,6 @@ uninstall:
rm -f "$(DESTDIR)$(PREFIX)/man/man1/$(PKGNAME).1" rm -f "$(DESTDIR)$(PREFIX)/man/man1/$(PKGNAME).1"
aur: build aur: build
tar --transform 's/.*\///g' -czf $(PKGNAME).tar.gz target/x86_64-unknown-linux-gnu/release/$(PKGNAME) target/autocomplete/* $(PKGNAME).1 tar --transform 's/.*\///g' -czf $(PKGNAME).tar.gz target/release/$(PKGNAME) target/autocomplete/* $(PKGNAME).1
.PHONY: build build-debug install clean uninstall aur .PHONY: build build-debug install clean uninstall aur

View file

@ -17,6 +17,9 @@ Performs a dry run, without actually renaming anything.
-d, --directory -d, --directory
Runs in directory mode. In this mode, it is assumed that the arguments are directory names, which contain exactly one movie and optionally subtitles. Runs in directory mode. In this mode, it is assumed that the arguments are directory names, which contain exactly one movie and optionally subtitles.
.TP .TP
-dn, -nd
Performs a dry run in directory mode.
.TP
-h, --help -h, --help
Print help information. Print help information.
.TP .TP

View file

@ -4,9 +4,9 @@ use inquire::{
}; };
use std::{collections::HashMap, fs, path::Path}; use std::{collections::HashMap, fs, path::Path};
use tmdb_api::{ use tmdb_api::{
client::{reqwest::ReqwestExecutor, Client},
movie::{credits::MovieCredits, search::MovieSearch}, movie::{credits::MovieCredits, search::MovieSearch},
prelude::Command, prelude::Command,
Client,
}; };
use torrent_name_parser::Metadata; use torrent_name_parser::Metadata;
@ -15,7 +15,7 @@ use crate::structs::{get_long_lang, Language, MovieEntry};
// Function to process movie entries // Function to process movie entries
pub async fn process_file( pub async fn process_file(
filename: &String, filename: &String,
tmdb: &Client<ReqwestExecutor>, tmdb: &Client,
pattern: &str, pattern: &str,
dry_run: bool, dry_run: bool,
lucky: bool, lucky: bool,
@ -206,7 +206,7 @@ pub async fn process_file(
} }
// RenderConfig for the menu items // RenderConfig for the menu items
fn get_render_config() -> RenderConfig<'static> { fn get_render_config() -> RenderConfig {
let mut render_config = RenderConfig::default(); let mut render_config = RenderConfig::default();
render_config.option_index_prefix = IndexPrefix::Simple; render_config.option_index_prefix = IndexPrefix::Simple;

View file

@ -1,6 +1,6 @@
use load_file::{self, load_str}; use load_file::{self, load_str};
use std::{collections::HashMap, env, fs, path::Path, process::exit}; use std::{collections::HashMap, env, fs, path::Path, process::exit};
use tmdb_api::client::{reqwest::ReqwestExecutor, Client}; use tmdb_api::Client;
// Import all the modules // Import all the modules
mod functions; mod functions;
@ -16,17 +16,6 @@ async fn main() {
let flag_directory = settings["directory"]; let flag_directory = settings["directory"];
let flag_lucky = settings["i-feel-lucky"]; let flag_lucky = settings["i-feel-lucky"];
// Print some message when flags are set.
if flag_dry_run {
println!("Doing a dry run. No files will be modified.")
}
if flag_directory {
println!("Running in directory mode...")
}
if flag_lucky {
println!("Automatically selecting the first entry...")
}
// Try to read config file, or display error // Try to read config file, or display error
let mut config_file = env::var("XDG_CONFIG_HOME").unwrap_or(String::from("$HOME")); let mut config_file = env::var("XDG_CONFIG_HOME").unwrap_or(String::from("$HOME"));
if config_file == "$HOME" { if config_file == "$HOME" {
@ -50,7 +39,7 @@ async fn main() {
} }
// Create TMDb object for API calls // Create TMDb object for API calls
let tmdb = Client::<ReqwestExecutor>::new(String::from(api_key)); let tmdb = Client::new(String::from(api_key));
// Iterate over entries // Iterate over entries
for entry in entries { for entry in entries {