From 69b39cb78e665fe81ae346a899333676d78a12f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Przemys=C5=82aw=20Wrzesi=C5=84ski?= Date: Sat, 12 Feb 2022 11:09:30 +0100 Subject: [PATCH] Allowed conversion from CamelCase to snake_case --- commands/conversions/change-case/snakecase.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/commands/conversions/change-case/snakecase.py b/commands/conversions/change-case/snakecase.py index df620551d..85f6e3ffb 100755 --- a/commands/conversions/change-case/snakecase.py +++ b/commands/conversions/change-case/snakecase.py @@ -17,6 +17,7 @@ # @raycast.description Change to clipboard text to snake case import subprocess +import re def getClipboardData(): p = subprocess.Popen(["pbpaste"], stdout=subprocess.PIPE) @@ -30,6 +31,7 @@ def setClipboardData(data): p.stdin.close() clipboard = str(getClipboardData()) -result = clipboard.lower().replace(" ", "_").replace("-", "_") +result = re.sub(r"([a-z])([A-Z])", r"\1_\2", clipboard) +result = result.lower().replace(" ", "_").replace("-", "_") setClipboardData(result) print(result)