import argparse import bpy import json import re import sys from pathlib import Path sys.path.append(Path(__file__).parents[3]) from asset_library.common.bl_utils import ( get_preview, ) def rename_pose(src_name='', dst_name=''): scn = bpy.context.scene action = bpy.data.actions.get(src_name) if not action: print(f'No {src_name} not found.') bpy.ops.wm.quit_blender() action.name = dst_name preview = get_preview(asset_path=bpy.data.filepath, asset_name=src_name) if preview: preview.rename(re.sub(src_name, dst_name, str(preview))) bpy.ops.wm.save_mainfile( filepath=bpy.data.filepath, compress=True, exit=True ) if __name__ == '__main__' : parser = argparse.ArgumentParser(description='Add Comment To the tracker', formatter_class=argparse.ArgumentDefaultsHelpFormatter) parser.add_argument('--src-name') parser.add_argument('--dst-name') if '--' in sys.argv : index = sys.argv.index('--') sys.argv = [sys.argv[index-1], *sys.argv[index+1:]] args = parser.parse_args() rename_pose(**vars(args))