use pyperclip for clipboard manipulation

This commit is contained in:
cswimr 2024-11-22 10:04:55 -05:00
parent ba7576efdb
commit 5eb09d9b85
Signed by: cswimr
GPG key ID: 0EC431A8DA8F8087
2 changed files with 4 additions and 22 deletions

View file

@ -1,5 +1,5 @@
#! /usr/bin/env nix-shell
#! nix-shell -i python -p python312
#! nix-shell -i python -p python312 libnotify
import argparse
import os

View file

@ -1,34 +1,16 @@
#! /usr/bin/env nix-shell
#! nix-shell -i python -p python312 python312Packages.tkinter python312Packages.requests libnotify
#! nix-shell -i python -p python312 python312Packages.pyperclip python312Packages.requests libnotify
import argparse
import mimetypes
import os
import subprocess
from pathlib import Path
from shutil import which
from tkinter import Tk
from typing import Any
import requests # type: ignore
from common.common import does_desktop_entry_exist, notify, read_secret_file
def copy_to_clipboard(text: str) -> None:
if which("xclip"):
subprocess.run(
["xclip", "-selection", "clipboard", "-t", "text/plain", "-i"],
input=text.encode(),
)
elif which("wl-copy"):
subprocess.run(["wl-copy", "--type", "text/plain"], input=text.encode())
else:
root = Tk()
root.withdraw()
root.clipboard_clear()
root.clipboard_append(text)
root.update()
root.destroy()
from pyperclip import copy
def zipline(
@ -72,7 +54,7 @@ def zipline(
link = response_data.get("files", [None])[0]
if link:
copy_to_clipboard(text=link)
copy(text=link)
print(f"Link copied to clipboard: {link}")
if use_send_notify: