initial commit
This commit is contained in:
29
kitty-nautilus.py
Normal file
29
kitty-nautilus.py
Normal file
@@ -0,0 +1,29 @@
|
||||
import subprocess
|
||||
from gi.repository import Nautilus, GObject
|
||||
|
||||
|
||||
class KittyNautilusExtension(GObject.GObject, Nautilus.MenuProvider):
|
||||
|
||||
def __init__(self):
|
||||
pass
|
||||
|
||||
def launch_kitty(self, menu: Nautilus.MenuItem, file):
|
||||
path = file.get_location().get_path()
|
||||
subprocess.Popen(["kitty", "--working-directory", path], shell=False)
|
||||
|
||||
def make_item(self, name, file) -> Nautilus.MenuItem:
|
||||
item = Nautilus.MenuItem(
|
||||
name=name,
|
||||
label="Open in Kitty",
|
||||
tip="Open current folder in Kitty",
|
||||
icon="terminal",
|
||||
)
|
||||
item.connect("activate", self.launch_kitty, file)
|
||||
return item
|
||||
|
||||
def get_file_items(self, _window, files) -> [Nautilus.MenuItem]:
|
||||
if len(files) == 1:
|
||||
return [self.make_item("NautilusFileOpenKitty", files[0])]
|
||||
|
||||
def get_background_items(self, _window, file) -> [Nautilus.MenuItem]:
|
||||
return [self.make_item("NautilusBackgroundOpenKitty", file)]
|
||||
Reference in New Issue
Block a user