{"id":16379672,"url":"https://github.com/antoinejt/bunch-rename","last_synced_at":"2025-07-04T10:33:13.865Z","repository":{"id":46398149,"uuid":"414792910","full_name":"AntoineJT/bunch-rename","owner":"AntoineJT","description":"A cli tool to change file name format","archived":false,"fork":false,"pushed_at":"2021-10-23T17:39:33.000Z","size":136,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-06-12T14:09:11.859Z","etag":null,"topics":["batch-rename-files","batch-renamer","cli","easy-to-use","hacktoberfest"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AntoineJT.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-10-08T00:09:09.000Z","updated_at":"2023-06-04T14:50:23.000Z","dependencies_parsed_at":"2022-09-19T05:40:45.894Z","dependency_job_id":null,"html_url":"https://github.com/AntoineJT/bunch-rename","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/AntoineJT/bunch-rename","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AntoineJT%2Fbunch-rename","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AntoineJT%2Fbunch-rename/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AntoineJT%2Fbunch-rename/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AntoineJT%2Fbunch-rename/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AntoineJT","download_url":"https://codeload.github.com/AntoineJT/bunch-rename/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AntoineJT%2Fbunch-rename/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263493221,"owners_count":23475159,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["batch-rename-files","batch-renamer","cli","easy-to-use","hacktoberfest"],"created_at":"2024-10-11T03:49:20.811Z","updated_at":"2025-07-04T10:33:13.841Z","avatar_url":"https://github.com/AntoineJT.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Bunch rename\nA cli tool to change file name format\n\n[![Windows](https://github.com/AntoineJT/bunch-rename/actions/workflows/windows.yml/badge.svg)](https://github.com/AntoineJT/bunch-rename/actions/workflows/windows.yml)\n\n![Demo](.images/demo.gif)\n\n## Why does this exists?\n\nOne night I wanted to rename a bunch\nof bad formatted musics to add the\nauthor name and the album at the\nbeginning of each files, but since I'm\na developer, instead of renaming each\nsong one after the other I decided to\nspent a night creating this software.\n\nI wanted to use a simple custom format\nlanguage, so I created an intuitive\nsyntax to easily rename a bunch of\nfiles.\n\nSince I'm relatively a beginner in C++\nI spent some time fixing errors, mostly\nin the parser.\n\n## How the custom format works?\n\nThe custom format is made to be simple.\nFor now, it is simple but relatively\nlimited.\nI plan to add support for standard\nregexes too.\n\nThe custom format support 2 types of\nthings : VARs and TEXTs.\n- VARs are undetermined text elements with undetermined length and content.\nAn example of var element would be\n\"{name}\".\n- TEXTs are determined text elements\nwith determined content and length.\nAn example of text element would be\n\"foo\".\n\nThe format is supposed to be intuitive\nenough that it needs no complex\nexplanations, and can be used with\ncurfmt help alone.\n\n![curfmt help](.images/curfmt_help.png)\n\nAntoine James Tournepiche\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fantoinejt%2Fbunch-rename","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fantoinejt%2Fbunch-rename","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fantoinejt%2Fbunch-rename/lists"}