ScriptDirectoryPath could use protected folder
In my domain the %userprofile%/Document folder is restricted and random application are not allowed to alter it. In my case it make NetPad hang on startup because it tries to create the Scripts folder.
Instead of using Environment.GetFolderPath(Environment.SpecialFolder.UserProfile) maybe it could use the local app data folder too. Or detect that it's not allowed (timeout) and fallback to something else, or just skip this part.
As a mitigation I believe I can setup another folder in config.