Pular para o conteúdo principal

Open in VSCode

· 2 min para ler
David Puziol Prata
DevOps at @ Encora

Olá pessoal,

Vamos facilitar abrir os projetos direto no VSCode sem precisar abrir o terminal e digitar code .?

É mais fácil do que parece...

Vamos precisar do pacote python3-nautilus instalado no sistema e preparar a pasta onde vamos colocar o nosso script

sudo apt-get install python3-nautilus -y
mkdir -p ~/.local/share/nautilus-python/extensions
cd ~/.local/share/nautilus-python/extensions

crie um arquivo open-vscode.py dentro da pasta acima criada e cole o conteúdo abaixo.

import os
import subprocess
from gi.repository import Nautilus, GObject

class OpenInVSCodeExtension(Nautilus.MenuProvider, GObject.GObject):
def __init__(self):
pass

def menu_activate_cb(self, menu, file):
subprocess.call(['code', file.get_location().get_path()])

def menu_background_activate_cb(self, menu, file):
subprocess.call(['code', file.get_location().get_path()])

def get_file_items(self, window, files):
if len(files) != 1:
return None

file = files[0]
if not file.is_directory() or file.get_uri_scheme() != 'file':
return None

item = Nautilus.MenuItem(name='NautilusPython::open_vscode_file_item',
label='Open in VSCode',
tip='Open this directory in VSCode')
item.connect('activate', self.menu_activate_cb, file)
return (item, )

def get_background_items(self, window, file):
item = Nautilus.MenuItem(name='NautilusPython::open_in_vscode',
label='Open in VSCode',
tip='Open this directory in VSCode')
item.connect('activate', self.menu_background_activate_cb, file)
return (item, )%

Esse script é ativado quando quando o botão esquerdo é acionado e simplemente faz o comando code + path.

Reinicie o nautilus com o comando nautilus -q && nautilus & ou reinicie o sistema.

openinvscode