Save blender files with lowercase
Override the Save Mainfile operator
Similarly to Add prefix to filename on &quot;Save Blender File&quot;  which on a quick parse could be given the standard CtrlS shortcut.
Another method is to override the save operator and simply pass the converted filepath to the save as operator.  Proof of concept code below. Simply prints the filepath to be &quot;rejigged&quot; and saved.  Notice how it becomess the operator in the menu and called by shortcut.
Below is the export operator from the templates rejigged to override &quot;wm.save_mainfile&quot;
import bpy

from bpy_extras.io_utils import ExportHelper
from bpy.props import StringProperty
from bpy.types import Operator


class ExportSomeData(Operator, ExportHelper):
    &quot;&quot;&quot;This appears in the tooltip of the operator and in the generated docs&quot;&quot;&quot;
    bl_idname = &quot;wm.save_mainfile&quot;  # 
    bl_label = &quot;Save...&quot;

    # ExportHelper mixin class uses this
    filename_ext = &quot;.blend&quot;

    filter_glob: StringProperty(
        default=&quot;*.blend&quot;,
        options={'HIDDEN'},
        maxlen=255, 
    )



    def execute(self, context):
        print(f&quot;Call save as, rejig {self.filepath}&quot;)
        #bpy.ops.wm.save_as_mainfile(filepath=self.filepath)
        return {'FINISHED'}




def register():
    bpy.utils.register_class(ExportSomeData)



def unregister():
    bpy.utils.unregister_class(ExportSomeData)



if __name__ == &quot;__main__&quot;:
    register()

This ofcourse won't help if a user chooses save as instead and uses an uppercase filename.