Bagaimana saya bisa membuka ~ / Desktop jika saya mengklik "Open in terminal" dari Desktop?

8

Skenario:

  1. Saya ada di Desktop saya.
  2. Saya melakukan klik kanan mouse dan pilih "Open in terminal".
  3. Saya membayangkan ini untuk membuka terminal ~/Desktopdan bukan folder rumah saya.

Sistem:

  • Ubuntu 16.10
  • Kesatuan
  • Nautilus
orschiro
sumber
Bukankah ini jauh lebih cepat untuk Ctrl-T ke terminal baru dan kemudian $ cd Desktop? Anda bahkan dapat menyelesaikan tab setelah menulis Des
tomph

Jawaban:

7

Yang cepat & mudah secara kebetulan, karena saya hanya perlu mengubah skrip saya sudah punya sedikit :).

Script mengasumsikan Anda memiliki setidaknya satu item di desktop Anda.

Cara mengatur

  1. Buat, jika belum ada, direktori ~/.local/share/nautilus/scripts
  2. Salin skrip di bawah ini ke file kosong, simpan sebagai terminal_here2(tanpa ekstensi), dan buat agar dapat dieksekusi
  3. Logout dan kembali.

Sekarang klik kanan pada file apa saja di desktop Anda, pilih Scripts-> open_terminal2:

masukkan deskripsi gambar di sini

dan jendela terminal akan terbuka di direktori desktop ("Bureaublad" dalam kasus saya)

Naskah:

#!/usr/bin/env python3
import subprocess
import os

def replace(path):
    for c in [("%23", "#"), ("%5D", "]"), ("%5E", "^"),
              ("file://", ""), ("%20", " ")]:
        path = path.replace(c[0], c[1])
    return path

# get the current path
current = replace(os.getenv("NAUTILUS_SCRIPT_CURRENT_URI")) 
# raise the found terminal window
os.chdir(os.path.realpath(current))
subprocess.Popen("gnome-terminal")
Yakub Vlijm
sumber
1
Anda mungkin harus menggunakan urllib.parse.unquotealih-alih mengganti karakter%
-berkode
Terima kasih! Tidak ada cara untuk menggunakan entri menu konteks "Open in terminal" yang sudah ada?
orschiro
@orschiro Saya khawatir itu kode-nautilus. Jelas desktop tidak diklasifikasikan sebagai jendela "normal" di nautilus, meskipun NAUTILUS_SCRIPT_CURRENT_URImenunjukkan direktori yang benar.
Jacob Vlijm
Apakah menurut Anda layak mengajukan permintaan fitur untuk itu? Akan konsisten bahwa fungsi ini akan berfungsi seperti yang diharapkan.
orschiro
2
Tidak perlu menjalankan proses Python hanya untuk menunggu untuk gnome-terminalmengakhiri dan kemudian mengakhiri sendiri. Sebaliknya, Anda dapat menelepon os.execlp("gnome-terminal", "gnome-terminal")untuk mengganti proses Python dengan gnome-terminal.
David Foerster
8

Solusi tanpa skrip

  1. Buka Nautiuls di folder rumah Anda.
  2. Di folder rumah Anda, klik kanan Desktop, klik Make link. Anda akan disajikan dengan Link to Desktopfile.
  3. Tempatkan tautan di Desktop Anda. Sekarang setiap kali Anda mengklik kanan padanya, dan pilih Open in Terminalitu akan membuka terminal dengan direktori kerja saat ini ditetapkan sebagai desktop.
Sergiy Kolodyazhnyy
sumber
Ini adalah solusi cerdas!
orschiro
@orschiro Terima kasih, dan juga cepat. Butuh waktu kurang dari satu menit untuk mengatur.
Sergiy Kolodyazhnyy