Fri, 02 Aug 2024 14:35:21 +0200
Changed the logic to setup the initial size of the editor outline widget. Somehow the width of the splitter did not get set correctly in certain situations (see issue 567).
#!/usr/bin/env python3 # -*- coding: utf-8 -*- # Copyright (c) 2014 - 2024 Detlev Offenbach <detlev@die-offenbachs.de> # """ Script for eric to clean up the source tree. """ import fnmatch import os import shutil def cleanupSource(dirName): """ Cleanup the sources directory to get rid of leftover files and directories. @param dirName name of the directory to prune @type str """ # step 1: delete all Ui_*.py files without a corresponding # *.ui file dirListing = os.listdir(dirName) for formName, sourceName in [ (f.replace("Ui_", "").replace(".py", ".ui"), f) for f in dirListing if fnmatch.fnmatch(f, "Ui_*.py") ]: if not os.path.exists(os.path.join(dirName, formName)): os.remove(os.path.join(dirName, sourceName)) if os.path.exists(os.path.join(dirName, sourceName + "c")): os.remove(os.path.join(dirName, sourceName + "c")) # step 2: delete the __pycache__ directory and all remaining *.pyc files if os.path.exists(os.path.join(dirName, "__pycache__")): shutil.rmtree(os.path.join(dirName, "__pycache__")) for name in [f for f in os.listdir(dirName) if fnmatch.fnmatch(f, "*.pyc")]: os.remove(os.path.join(dirName, name)) # step 3: descent into subdirectories and delete them if empty for name in os.listdir(dirName): name = os.path.join(dirName, name) if os.path.isdir(name): cleanupSource(name) if len(os.listdir(name)) == 0: os.rmdir(name) def main(): """ The main function of the script. """ print("Cleaning up source ...") sourceDir = os.path.dirname(os.path.dirname(__file__)) or "." cleanupSource(sourceDir) if __name__ == "__main__": try: main() except SystemExit: raise except Exception: print( "\nAn internal error occured. Please report all the output of the" " program, \nincluding the following traceback, to" " eric-bugs@eric-ide.python-projects.org.\n" ) raise # # eflag: noqa = M801