Apakah ada pintasan keyboard (hotkey) untuk membuka Terminal di macOS?

125

Salah satu alat utama saya yang digunakan untuk pemrograman adalah Terminal saya. Itu membuat proses pemrograman saya lebih efisien ketika saya dapat dengan cepat membuka jendela Terminal.

Di Ubuntu, saya menggunakan ( window+ Alt+ T) untuk membuka Terminal. Tapi sekarang saya menggunakan Macbook untuk pekerjaan pemrograman saya.

Terkadang saya menggunakan Spotlight untuk mencari "Terminal", dan menekan Enter.

Saya ingin tahu apakah saya dapat menetapkan tombol pintas keyboard untuk melakukannya.

Terima kasih

Gopal Prasad
sumber
33
Saya memberikan suara untuk membuka kembali pertanyaan ini karena ini termasuk dalam "alat yang digunakan terutama untuk pemrograman". Pemrogram menggunakan terminal terutama untuk menjalankan tugas yang berhubungan dengan pemrograman.
Greg Kopff
1
@JonKiparsky Pertanyaannya adalah tentang membuka Terminal di suatu tempat dan membuka jendela baru ketika aplikasi lain memiliki fokus.
Quentin Pradet
4
Hanya karena menurut saya itu konyol ... Saya mengulangi apa yang dikatakan @GregKopff ... "kecuali mereka secara langsung melibatkan alat yang digunakan terutama untuk pemrograman" ... Gopal Prasad, OP, dengan jelas mengatakan "Salah satu alat utama saya yang digunakan untuk pemrograman adalah Terminal saya. " Like come on .. solusi untuk ini sangat berharga.
mmr118
1
Ini adalah pertanyaan yang sangat valid! Mungkin ada banyak orang yang datang dari Linux (menggunakan desktop seperti Unity, XFCE, Cinnamon, MATE, dll.) Mencari fungsionalitas seperti ini. Suara positif membuktikan minat tersebut.
Socrates
iTerm2 . Saya tidak mencoba bercanda, serius, gunakan saja iTerm2.
Benjamin R

Jawaban:

127

Saya menguji prosedur berikut pada macOS Mojave 10.14.6 (18G3020).

Luncurkan Automator. Buat dokumen jenis "Tindakan Cepat":

template tindakan cepat

(Di versi macOS yang lebih lama, gunakan template "Layanan".)

Di dokumen Automator baru, tambahkan tindakan "Jalankan AppleScript". (Anda dapat mengetik "run applescript" ke dalam bidang pencarian di bagian atas daftar tindakan untuk menemukannya.) Berikut AppleScript untuk ditempelkan ke dalam tindakan:

on run {input, parameters}
    tell application "Terminal"
        if it is running then
            do script ""
        end if
        activate
    end tell
end run

Setel munculan "Alur kerja menerima" ke "tidak ada masukan". Ini akan terlihat seperti ini secara keseluruhan:

alur kerja dengan applescript

Simpan dokumen dengan nama “Terminal Baru”. Lalu pergi ke menu Automator (atau menu aplikasi di aplikasi yang sedang berjalan) dan buka submenu Services. Sekarang Anda akan melihat tindakan cepat "Terminal Baru":

Item menu layanan Terminal baru

Jika Anda mengklik item menu "Terminal Baru", Anda akan mendapatkan kotak dialog:

dialog izin

Klik OK untuk mengizinkan aksi berjalan. Anda akan melihat dialog ini sekali di setiap aplikasi yang paling depan saat Anda menggunakan tindakan. Dengan kata lain, pertama kali Anda menggunakan tindakan saat Finder berada paling depan, Anda akan melihat dialog. Dan pertama kali Anda menggunakan tindakan saat Safari berada paling depan, Anda akan melihat dialog. Dan seterusnya.

Setelah Anda mengklik OK di dialog, Terminal akan membuka jendela baru.

Untuk menetapkan pintasan keyboard ke tindakan cepat , pilih item "Preferensi Layanan ..." dari menu Layanan. (Atau luncurkan Preferensi Sistem, pilih panel Papan Ketik, lalu pilih tab Pintasan, lalu pilih Layanan dari daftar sebelah kiri.) Gulir ke bagian bawah daftar sebelah kanan dan temukan layanan Terminal Baru. Klik dan Anda akan melihat tombol "Tambahkan Pintasan":

tambahkan tombol pintasan

Klik tombol dan tekan pintasan keyboard pilihan Anda. Lalu, garuk kepala Anda, karena (saat saya mencobanya) tombol Add Shortcut muncul kembali. Tetapi klik tombol itu lagi dan Anda akan melihat pintasan Anda:

set pintasan keyboard

Sekarang Anda seharusnya dapat menekan pintasan keyboard Anda dalam banyak situasi untuk mendapatkan jendela terminal baru.

merampok mayoff
sumber
9
Saya suka jawaban Anda bahkan jika beberapa orang tidak menyukai pertanyaan itu! :-)
Mark Setchell
3
Ini berfungsi dengan baik untuk saya kecuali saat aplikasi Terminal belum dimulai. Dalam kasus seperti itu, maka saya mendapatkan dua jendela Terminal baru. Saya memperbaikinya dengan mengubah AppleScript menjadi yang berikut: saat dijalankan {input, parameter} beri tahu aplikasi "Terminal" jika sedang berjalan maka lakukan skrip "" akhiri jika aktifkan end tell return input end run
chrisdembia
3
@robmayoff Saya mengalami masalah dalam menerapkan skrip Anda. Ini berfungsi dengan baik ketika saya mengklik tombol putar di Automator, namun ketika saya mengklik tugas di bawah Layanan, sebuah kesalahan muncul The action "Run AppleScript" encountered an error. Ada ide? Saya menggunakan OSX 10.12.1 jika itu penting.
Sekitar
7
Saya mengalami masalah di mana ia akan membuka jendela jika Terminal tidak memiliki jendela, tetapi jika sudah ada jendela yang terbuka, itu hanya akan memilih jendela itu. Yang harus saya lakukan hanyalah menghapus kata "shell" dari skrip.
Holden Lewis
2
Saya punya masalah duplikasi windows dengan update terbaru dari jawaban ini. Saya telah memperbaikinya dengan skrip berikuton run {input, parameters} tell application "Terminal" if not (exists window 1) then reopen activate end tell end run
Jofsey
9

Sebagai pemrogram, kami menginginkan cara tercepat dan paling mudah untuk mendapatkan alat agar kami dapat mulai meretas. Berikut adalah cara saya membuatnya berfungsi di MacOS 10.13.1 (High Sierra):

  • Opsi 1: Pergi ke System Preferences | Keyboard | Shortcut | Services. Di bawah Files and Foldersbagian, aktifkan New Terminal at Folder dan / atau New Terminal Tab at Folderdan tetapkan tombol pintas untuk itu. Konfigurasi pintasan keyboard

  • Opsi 2: Jika Anda ingin tombol pintas berfungsi di mana saja, buat Layanan baru menggunakan Automator, lalu buka Pintasan Keyboard untuk menetapkan tombol pintasan ke sana. Batasan yang diketahui: tidak berfungsi dari desktop

masukkan deskripsi gambar di sini

Catatan:

  • Jika pintasan tidak berfungsi, mungkin ada konflik dengan pengikatan kunci lain (dan OS tidak akan memperingatkan Anda), coba yang lain, misalnya jika ⇧⌥T tidak berfungsi, coba ⇧⌘T.
  • Jangan mengoreksi ejaan MacOS, itu tidak perlu.
dnang
sumber
1
Opsi 2 berhasil untuk saya, terima kasih! Batasan aneh tidak berfungsi dari Desktop. Saya juga menyarankan agar tidak ⇧⌘T karena itu adalah pintasan umum untuk "buka kembali tab yang terakhir ditutup"
Charlie G
2

iTerm2 - alternatif untuk Terminal - memiliki opsi untuk menggunakan tombol pintas seluruh sistem yang dapat dikonfigurasi untuk menampilkan / menyembunyikan (awalnya diatur ke Alt+ Space, dinonaktifkan secara default)

Pemenang
sumber
Berbicara tentang iTerm2. Inilah yang saya coba luncurkan, menggunakan automator, tetapi saya mendapatkan "script"kesalahan itu ketika saya menentukan tell application "iTerm2"jadi bagaimana Anda membukanya iTerm2?
blamb
1
@blamb Saya biasanya membuka iTerm2 melalui tombol pintas ini (harus diaktifkan di preferensi iTerm2 -> tombol -> Tombol pintas). Saya belum pernah mencoba automator.
Victor
Untuk info lebih lanjut tentang menyesuaikan ini, lihat jawaban ini: superuser.com/a/1259726
Benjamin R