forked from Github/Axter-Stash
75 lines
5.5 KiB
Markdown
75 lines
5.5 KiB
Markdown
# RenameFile: Ver 0.5.0 (By David Maisonave)
|
|
RenameFile is a [Stash](https://github.com/stashapp/stash) plugin which performs the following tasks.
|
|
- **Rename Scene File Name** (On-The-Fly)
|
|
- **Append tag names** to file name
|
|
- **Append Performer names** to file name
|
|
|
|
Users can rename the file name by editing the **[Title]** field and then click **[Save]**.
|
|
|
|
<img width="270" alt="RenameFileViaTitleUnderEditTab" src="https://github.com/user-attachments/assets/f27d0205-d4ed-44fb-9bb2-5b9a75cba2e0">
|
|
<img width="270" alt="RenameFileViaTitle_AfterSaved" src="https://github.com/user-attachments/assets/bf5779ea-77b3-478a-8f72-2dba695db6f0">
|
|
|
|
The [Title] field is located under the [Edit] tab.
|
|
|
|
<img width="560" alt="RenameFileViaTitle_AfterSaved_InExplorer" src="https://github.com/user-attachments/assets/60cd807b-dd49-4ac8-9eee-801050e20a2c">
|
|
|
|
Optionally, the plugin can also append tags and performers to the file name if the name does not already exist in the original file name.
|
|
|
|
### Using RenameFile
|
|
- Open a scene (via Stash), and click on the [**Edit**] tab. Populate the [**Title**] field with the desired file name.
|
|
- Note: Do **NOT** include the file folder name and do **NOT** include file extension.
|
|
- After populating the Title field, click the save button.
|
|
- After a few seconds, the file will get renamed and the screen will get updated with the new file name.
|
|
- The append tags and performers option is disable by default. To enable these options go to the Settings->Plugins->Plugins->[RenameFile] field options, and enable the associated field.
|
|
- When [Append Tags] is enabled, by default tag names are appended to the file name only if the tags do not exist in the original name. Same applies to [Append Performers] option.
|
|
- Since this plugin is largely based on the [Renamer](https://github.com/Serechops/Serechops-Stash/tree/main/plugins/Renamer) plugin, it inherited some of its features, like being able to include any of the following fields when auto-renaming is executed:
|
|
- studio, performers, date, height, video_codec, frame_rate
|
|
- To add these fields see the [Key Fields] option in Settings->Plugins->Plugins->[RenameFile].
|
|
- The [Key Fields] can also be used to change the order for the file name format.
|
|
- There are many options in Plugins->[RenameFile] UI, and all the options have detailed descriptions. Please advise us if any of the options need further clarification, and provide example details.
|
|
- **[Key Fields]**: (This option may require more detail than could be provided in the GUI)
|
|
- Define key fields to use to format the file name. This is a comma seperated list, and the list should be in the desired format order. (Default=title,performers,studio,tags)
|
|
- For example, if the user wants the performers name before the title, set the performers name first.
|
|
- Example:"performers,title,tags".
|
|
- This is an example of user adding height:"title,performers,tags,height"
|
|
- Here's an example using all of the supported fields: "title,performers,tags,studio,galleries,resolution,width,height,video_codec,frame_rate,date".
|
|
- The **resolution** field equals width + height.
|
|
- The date field is **not** populated by default unless the user explicitly adds the date value to a scene.
|
|
- If **[Key Fields]** is empty, the default value is used. (Default=title,performers,studio,tags)
|
|
- There are additional options in renamefile_settings.py, but these options should only be changed by advanced users, and any changes should be tested first with the [Dry-Run] option enabled.
|
|
|
|
**Note:** On Windows 10/11, the file can not be renamed while it's playing. It will result in following error:
|
|
`
|
|
Error: [WinError 32] The process cannot access the file because it is being used by another process
|
|
`
|
|
To avoid this error, refresh the URL before changing the Title field.
|
|
|
|
### Requirements
|
|
- pip install -r requirements.txt
|
|
- Or manually install each requirement:
|
|
- `pip install stashapp-tools --upgrade`
|
|
- `pip install pyYAML`
|
|
- `pip install requests`
|
|
|
|
### Installation
|
|
- Follow **Requirements** instructions.
|
|
- Create a folder named **RenameFile**, in the stash plugin directory (C:\Users\MyUserName\.stash\plugins).
|
|
- Download the latest version from the following link: [RenameFile](https://github.com/David-Maisonave/Axter-Stash/tree/main/plugins/RenameFile), and copy the plugin files to folder.(**C:\Users\MyUserName\\.stash\plugins\RenameFile**).
|
|
- Click the **[Reload Plugins]** button in Stash->Settings->Plugins->Plugins.
|
|
|
|
That's it!!!
|
|
|
|
### Options
|
|
- Main options are accessible in the GUI via Settings->Plugins->Plugins->[RenameFile].
|
|
- Advanced options are available in the **renamefile_settings.py** file. After making changes, go to http://localhost:9999/settings?tab=plugins, and click [Reload Plugins].
|
|
|
|
## Bugs and Feature Request
|
|
Please use the following link to report RenameFile bugs:
|
|
[RenameFile Bug Report](https://github.com/David-Maisonave/Axter-Stash/issues/new?assignees=&labels=Plugin_Bug&projects=&template=bug_report_plugin.yml&title=%F0%9F%AA%B2%5BRenameFile%5D+Your_Short_title)
|
|
|
|
Please use the following link to report RenameFile Feature Request:[RenameFile Feature Reques](https://github.com/David-Maisonave/Axter-Stash/issues/new?assignees=&labels=Enhancement&projects=&template=feature_request_plugin.yml&title=%F0%9F%92%A1%EF%B8%8F%5BEnhancement%5D%3A%5BRenameFile%5D+Your_Short_title)
|
|
|
|
Please do **NOT** use the feature request to include any problems associated with errors. Instead use the bug report for error issues.
|
|
|
|
**Note:** This script is **largely** based on the [Renamer](https://github.com/Serechops/Serechops-Stash/tree/main/plugins/Renamer) script.
|