From 11a791ed7c3e7119e4af3f22336f2e18531249c4 Mon Sep 17 00:00:00 2001 From: elpatron Date: Mon, 31 Mar 2025 15:27:45 +0200 Subject: [PATCH] Powershell Alternative --- clip2snips.ps1 | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 clip2snips.ps1 diff --git a/clip2snips.ps1 b/clip2snips.ps1 new file mode 100644 index 0000000..59c049c --- /dev/null +++ b/clip2snips.ps1 @@ -0,0 +1,42 @@ +# clip2snips.ps1 + +# Setze Output-Encoding auf UTF-8 +[Console]::OutputEncoding = [System.Text.Encoding]::UTF8 +$OutputEncoding = [System.Text.Encoding]::UTF8 + +# Hole Text aus der Zwischenablage +$clipText = Get-Clipboard +if ([string]::IsNullOrWhiteSpace($clipText)) { + Write-Host "die zwischenablage ist leer" + exit 1 +} + +# Entferne Zeilenumbrüche am Ende +$clipText = $clipText.TrimEnd() + +# Sende Text an snips.sh und hole die Antwort +try { + # Verwende -rawOutput um Encoding-Probleme zu vermeiden + $output = $clipText | ssh -T snips.sh 2>&1 | Out-String + # Write-Host "Debug - SSH Antwort:" + #Write-Host $output +} catch { + Write-Host "fehler beim senden an snips.sh: $_" + exit 1 +} + +# Extrahiere die URL mit verbessertem Regex +if ($output -match 'f:([_a-zA-Z0-9]+)@snips\.sh') { + $id = $matches[1] + $url = "https://snips.sh/f/$id" + + # Kopiere URL in die Zwischenablage + $url | Set-Clipboard + + # Gib URL aus + Write-Host $url +} else { + Write-Host "keine url in der antwort gefunden" + Write-Host "Debug - Antwort enthält keine URL im Format: ssh f:ID@snips.sh" + exit 1 +} \ No newline at end of file