diff options
| author | Victor Kareh <[email protected]> | 2026-03-03 15:23:30 -0500 |
|---|---|---|
| committer | Victor Kareh <[email protected]> | 2026-03-03 15:23:30 -0500 |
| commit | ae37271573f7b5ab88614679bd3220f86c05262f (patch) | |
| tree | 2d10856378eaae54605da5e618a1fdd6f52f7e02 /Mozo/util.py | |
| parent | 89532fb843cedb669e3af7d20fc1c1ba5c618af6 (diff) | |
| download | mozo-new-app-name-filename.tar.bz2 mozo-new-app-name-filename.tar.xz | |
Use application name for generated .desktop filenamesnew-app-name-filename
Instead of naming user-created launchers mozo-made.desktop,
mozo-made-1.desktop, etc., derive the filename from the Name field (e.g.
"My App" becomes My-App.desktop). This makes it easier to identify
launcher files in ~/.local/share/applications/.
Fixes #27
Diffstat (limited to 'Mozo/util.py')
| -rw-r--r-- | Mozo/util.py | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/Mozo/util.py b/Mozo/util.py index 72df83e..a9bde70 100644 --- a/Mozo/util.py +++ b/Mozo/util.py @@ -18,6 +18,7 @@ # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA import os +import re import xml.dom.minidom import gi gi.require_version('Gtk', '3.0') @@ -41,6 +42,15 @@ def fillKeyFile(keyfile, items): elif isinstance(item, str): keyfile.set_string(DESKTOP_GROUP, key, item) +def sanitizeFileName(name): + name = name.strip() + name = re.sub(r'[/\\<>:"|?*\x00-\x1f]', '-', name) + name = name.replace(' ', '-') + name = name.strip('.') + if not name: + name = 'mozo-made' + return name + def getUniqueFileId(name, extension): append = 0 while 1: |
