Clipboardbuffers.py: Difference between revisions

From Lucca's Wiki
Jump to navigationJump to search
(Created page with "import os import sys from PyHotKey import Key, keyboard from tkinter import * scriptFolder = (os.path.dirname(__file__)) def inputbox(inputBuffer): inputText = "No Input Given Yet" master = Tk() textbox = Entry(master) textbox.pack() textbox.focus_set() def onclick(pos): nonlocal inputText inputText = textbox.get() print(f"Clipboard buffer {inputBuffer} was set to: {inputText}") master.destroy() b = Button(...")
 
No edit summary
 
(6 intermediate revisions by 2 users not shown)
Line 1: Line 1:
import sys
import os
import os
import sys
import time
import pyperclip
import pyautogui as pg
from PyHotKey import Key, keyboard
from PyHotKey import Key, keyboard
from tkinter import *
import pickle
scriptFolder = (os.path.dirname(__file__))
import tkinter as tk
 
#pg.prompt(text="deez nuts?", title="deez nutz!", default="deez nars")
 
def dumpClipboardBufferToFile():
    global clipboardBuffer
    with open("clipboardBufferData.pk", 'wb') as fi:
        pickle.dump(clipboardBuffer, fi)
 
def getClipboardBufferFromFile():
    global clipboardBuffer
    with open("clipboardBufferData.pk", 'rb') as fi:
        clipboardBuffer = pickle.load(fi)
 
#scriptFolder = (os.path.dirname(__file__))
clipboardBuffer = []
clipboardBuffer = ["No value in this clipboard buffer" for i in range(10)]
 
#check if pickle file exists, if not, then create one
if os.path.isfile("clipboardBufferData.pk"):
    getClipboardBufferFromFile()
else:
    dumpClipboardBufferToFile()


def inputbox(inputBuffer):
def inputbox(inputBuffer):
     inputText = "No Input Given Yet"  
     inputText = "No Input Given Yet"
     master = Tk()
     window = tk.Tk()
     textbox = Entry(master)
    window.title('clipboardbuffers')
     textbox = tk.Entry(window, width=400)
     textbox.pack()
     textbox.pack()
    textbox.insert(0, clipboardBuffer[inputBuffer])
     textbox.focus_set()
     textbox.focus_set()
    def entry_select_all(event):
        event.widget.select_range(0, 'end')
        event.widget.icursor('end')
        return 'break'
    def entry_ctrl_backspace(event):
        end_idx = textbox.index(tk.INSERT)
        start_idx = textbox.get().rfind(" ", None, end_idx)
        textbox.selection_range(start_idx, end_idx)
     def onclick(pos):
     def onclick(pos):
         nonlocal inputText
         nonlocal inputText
         inputText = textbox.get()
         inputText = textbox.get()
        global clipboardBuffer
        clipboardBuffer[inputBuffer] = inputText
         print(f"Clipboard buffer {inputBuffer} was set to: {inputText}")
         print(f"Clipboard buffer {inputBuffer} was set to: {inputText}")
         master.destroy()
         window.destroy()
     b = Button(master, text = "OK", width = 10, command = onclick)
     b = tk.Button(window, text="OK", width=10, command=onclick)
     b.pack()
     b.pack()
     textbox.bind('<Return>', onclick)
     textbox.bind('<Return>', onclick)
     mainloop()
     textbox.bind('<KP_Enter>', onclick)
     return(inputText)
    textbox.bind('<Control-BackSpace>', entry_ctrl_backspace)
 
    textbox.bind('<Control-Key-a>', entry_select_all)
id2 = keyboard.register_hotkey([Key.ctrl, Key.shift, 'z'], None, inputbox, 1)
    window.mainloop()
print(keyboard.hotkeys)
    print(clipboardBuffer)
    dumpClipboardBufferToFile()
     return (inputText)
   
def typeBuffer(inputBuffer):
    global clipboardBuffer
#    pyautogui.write(clipboardBuffer[inputBuffer])
    keyboard.type(clipboardBuffer[inputBuffer])
def copyToBuffer(inputBuffer):
    global clipboardBuffer
    clip = pyperclip.paste()
    clipboardBuffer[inputBuffer] = clip
    print(clipboardBuffer[inputBuffer])
    dumpClipboardBufferToFile()
   
if sys.argv[1] == "paste":
    typeBuffer(int(sys.argv[2]))
if sys.argv[1] == "copy":
    copyToBuffer(int(sys.argv[2]))
if sys.argv[1] == "edit":
    inputbox(int(sys.argv[2]))

Latest revision as of 05:48, 12 December 2024

import sys import os import time import pyperclip import pyautogui as pg from PyHotKey import Key, keyboard import pickle import tkinter as tk

  1. pg.prompt(text="deez nuts?", title="deez nutz!", default="deez nars")

def dumpClipboardBufferToFile():

   global clipboardBuffer
   with open("clipboardBufferData.pk", 'wb') as fi:
       pickle.dump(clipboardBuffer, fi)

def getClipboardBufferFromFile():

   global clipboardBuffer
   with open("clipboardBufferData.pk", 'rb') as fi:
       clipboardBuffer = pickle.load(fi)
  1. scriptFolder = (os.path.dirname(__file__))

clipboardBuffer = [] clipboardBuffer = ["No value in this clipboard buffer" for i in range(10)]

  1. check if pickle file exists, if not, then create one

if os.path.isfile("clipboardBufferData.pk"):

   getClipboardBufferFromFile()

else:

   dumpClipboardBufferToFile()

def inputbox(inputBuffer):

   inputText = "No Input Given Yet"
   window = tk.Tk()
   window.title('clipboardbuffers')
   textbox = tk.Entry(window, width=400)
   textbox.pack()
   textbox.insert(0, clipboardBuffer[inputBuffer])
   textbox.focus_set()
   def entry_select_all(event):
       event.widget.select_range(0, 'end')
       event.widget.icursor('end')
       return 'break'
   def entry_ctrl_backspace(event):
       end_idx = textbox.index(tk.INSERT)
       start_idx = textbox.get().rfind(" ", None, end_idx)
       textbox.selection_range(start_idx, end_idx)
   def onclick(pos):
       nonlocal inputText
       inputText = textbox.get()
       global clipboardBuffer
       clipboardBuffer[inputBuffer] = inputText
       print(f"Clipboard buffer {inputBuffer} was set to: {inputText}")
       window.destroy()
   b = tk.Button(window, text="OK", width=10, command=onclick)
   b.pack()
   textbox.bind('<Return>', onclick)
   textbox.bind('<KP_Enter>', onclick)
   textbox.bind('<Control-BackSpace>', entry_ctrl_backspace)
   textbox.bind('<Control-Key-a>', entry_select_all)
   window.mainloop()
   print(clipboardBuffer)
   dumpClipboardBufferToFile()
   return (inputText)
   

def typeBuffer(inputBuffer):

   global clipboardBuffer
  1. pyautogui.write(clipboardBuffer[inputBuffer])
   keyboard.type(clipboardBuffer[inputBuffer])

def copyToBuffer(inputBuffer):

   global clipboardBuffer
   clip = pyperclip.paste()
   clipboardBuffer[inputBuffer] = clip
   print(clipboardBuffer[inputBuffer])
   dumpClipboardBufferToFile()
   

if sys.argv[1] == "paste":

   typeBuffer(int(sys.argv[2]))

if sys.argv[1] == "copy":

   copyToBuffer(int(sys.argv[2]))

if sys.argv[1] == "edit":

   inputbox(int(sys.argv[2]))