Írtam egy saját vágólap kezelőt Mac OS-re

Létrehozva: 2025. december 12. - 10:45
This post thumbnail

A macOS vágólapja alapból csak egyetlen elemet tárol. Bár léteznek remek kiegészítők ennek orvoslására, a legtöbb vagy havidíjas, vagy tele van felesleges funkciókkal, vagy találkoztam már olyannal is ami pár óra után több GB memóriát használ. Én egy olyan eszközre vágytam, ami láthatatlanul teszi a dolgát, nem kér enni, és pontosan azt tudja, amire szükségem van. Így született meg a ClipboardMA.

A koncepció: Egyszerűség mindenek felett

A cél egy olyan "Menu Bar" alkalmazás volt, ami:

  • A háttérben figyeli a másolásokat.
  • Megőrzi az elmúlt N darab vágólap-elemet.
  • Egyetlen kattintással visszamásolja a kiválasztott szöveget.
  • Natívnak érződik macOS-en (Dark Mode támogatás, szép ikonok).

A Pythonnak van egy zseniális könyvtára, a rumps, ami kifejezetten arra készült, hogy egyszerű scriptekből macOS menüsor-alkalmazást varázsoljon.

A program lelke mindössze néhány sor:

@rumps.timer(1)
def check_clipboard(self, _):
    current_clipboard = pyperclip.paste()
    if current_clipboard != self.last_copied:
        self.history.insert(0, current_clipboard)
        self.update_menu()

Ez a kis kódrészlet ellenőrzi a vágólapot, és ha változást lát, azonnal menti az előzmények közé. Nincs felesleges erőforrás-pazarlás, csak tiszta logika.

"Igazi" alkalmazás lett belőle

A Python scriptek futtatása Terminálból fejlesztés közben rendben van, de felhasználóként kényelmetlen. Ezért a py2app segítségével az egész projektet egyetlen, önállóan futtatható .app csomagba konvertáltam.

Így a ClipboardMA most már úgy viselkedik, mint bármelyik másik Mac app:

  • Van saját ikonja
  • Nem kell hozzá telepített Python környezet a felhasználónak
  • Hozzáadható a "Login Items"-hez, így a gép indításakor automatikusan betöltődik

A projektet teljesen nyílt forráskódda, MIT licensz alatt tettem közzé a codebergen: https://codeberg.org/nagyfrantisek/ClipboardMA