Compare commits
3 Commits
Author | SHA1 | Date | |
---|---|---|---|
32209ce982 | |||
11a791ed7c | |||
55e9ea9cdf |
@@ -1,6 +1,6 @@
|
||||
# Clip2Snips
|
||||
|
||||
Eine Go-Anwendung, die Text aus der Zwischenablage an [snips.sh](https://snips.sh/) sendet und die resultierende URL zurück in die Zwischenablage kopiert.
|
||||
Eine sehr kleine und wenig sinnvolle Go-Anwendung, die Text aus der Zwischenablage an [snips.sh](https://snips.sh/) sendet und die resultierende URL zurück in die Zwischenablage kopiert.
|
||||
|
||||
## Voraussetzungen
|
||||
|
||||
|
41
clip2snips.ps1
Normal file
41
clip2snips.ps1
Normal file
@@ -0,0 +1,41 @@
|
||||
# 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"
|
||||
exit 1
|
||||
}
|
Reference in New Issue
Block a user