# 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 }