Bisakah saya membuat pintasan untuk membuka aplikasi tertentu pada OS X?

51

Saya ingin membuat pintasan keyboard untuk membuka Firefox saat saya bekerja di aplikasi lain. Saya tahu saya dapat menggunakan ⌘ CMD+ Tketika berada di Firefox untuk membuka tab baru.

Saya belum menemukan cara untuk membuat pintasan semacam itu di System Preferences.

Ada ide?

politicus
sumber
1
Jadi maksud Anda pintasan keyboard ?
Rabarberski
Lihatlah Layanan pada menu Aplikasi, semua aplikasi Kakao yang ditulis secara wajar akan memiliki ini dan mereka dapat diberikan kunci. Sayangnya saya pikir Firefox tidak ditulis untuk menggunakan ini. Safari dapat digunakan di sini
user151019
Ini mungkin bukan opsi di 2011 ketika pertanyaan pertama kali diajukan, tetapi sekarang cukup mudah untuk menggunakan Automator. Lihat howtogeek.com/209725/… untuk tutorial.
Edward Falk
Sungguh menakjubkan bagi saya bahwa Apple, dengan kegunaan yang membanggakan, belum melihatnya cocok untuk membangun ke dalam MacOS cara langsung menetapkan cara pintas kunci untuk meluncurkan aplikasi.
Teemu Leisti

Jawaban:

44

Karabiner-Elements (10.12 dan lebih tinggi)

Karabiner berhenti bekerja di 10.12 karena perubahan dalam arsitektur kernel, dan Karabiner ditulis ulang sebagai Karabiner-Elements yang menggunakan format JSON baru untuk file konfigurasi.

Anda sekarang dapat menambahkan aturan seperti ini ke karabiner.json( https://pqrs.org/osx/karabiner/json.html ):

{
  "from": {
    "key_code": "t",
    "modifiers": {
      "mandatory": [
        "right_option"
      ]
    }
  },
  "to": [
    {
      "shell_command": "open -aterminal"
    }
  ],
  "type": "basic"
}

Ini membuat penekanan singkat dari tombol perintah kanan membuka Emacs:

{
  "from": {
    "key_code": "right_command",
    "modifiers": {
      "optional": [
        "any"
      ]
    }
  },
  "to": [
    {
      "key_code": "right_command",
      "lazy": true
    }
  ],
  "to_if_alone": [
    {
      "shell_command": "open -aemacs"
    }
  ],
  "type": "basic"
}

Karabiner (10.11 dan sebelumnya)

Simpan file seperti ini sebagai private.xml :

<?xml version="1.0"?>
<root>
  <vkopenurldef>
    <name>KeyCode::VK_OPEN_URL_Safari</name>
    <url>file:///Applications/Safari.app</url>
  </vkopenurldef>
  <vkopenurldef>
    <name>KeyCode::VK_OPEN_URL_iTunes</name>
    <url>file:///Applications/iTunes.app</url>
  </vkopenurldef>
  <vkopenurldef>
    <name>KeyCode::VK_OPEN_URL_EMACS</name>
    <url>file:///Applications/Emacs.app</url>
  </vkopenurldef>
  <item>
    <name>custom</name>
    <identifier>custom</identifier>
    <autogen>__KeyToKey__ KeyCode::F11, KeyCode::VK_OPEN_URL_Safari</autogen>

    <!-- change the right option key into an extra modifier key -->
    <autogen>__KeyToKey__ KeyCode::OPTION_R, KeyCode::VK_MODIFIER_EXTRA1</autogen>

    <autogen>__KeyToKey__ KeyCode::I, ModifierFlag::EXTRA1, KeyCode::VK_OPEN_URL_iTunes</autogen>

    <!-- make a short press of the right command open Emacs -->
    <autogen>__KeyOverlaidModifier__ KeyCode::COMMAND_R, KeyCode::COMMAND_R, KeyCode::VK_OPEN_URL_EMACS</autogen>
  </item>
</root>

Alfred 2

Jika Anda telah membeli Powerpack untuk Alfred 2, Anda dapat membuat alur kerja seperti ini:

Tombol pintas memiliki penundaan singkat secara default, tetapi Anda dapat mengurangi penundaan dengan mengubah opsi "Perilaku pemicu" dari "Simulasikan kunci pengubah yang dirilis" menjadi "Lewati kunci pengubah (Tercepat)":

Layanan automator

Buka Automator, pilih "Layanan" sebagai jenis dokumen, ubah "Layanan menerima" dari "teks" menjadi "tidak ada input", tambahkan tindakan "Luncurkan Aplikasi", dan simpan layanan. Kemudian tetapkan pintasan keyboard untuk layanan dari "System Preferences> Keyboard> Shortcuts> Services".

Saya tidak merekomendasikan opsi ini, karena setidaknya pada sistem saya, paling tidak ada penundaan sekitar setengah detik sebelum aplikasi difokuskan oleh cara pintas keyboard yang dibuat menggunakan metode ini, dan penundaan itu seringkali bahkan lebih lama. Ada juga bug sejak 10.7 di mana pintasan keyboard untuk layanan Automator tidak selalu berfungsi sampai Anda mengarahkan kursor ke menu layanan dari bilah menu. (Sunting: sekarang 8 tahun setelah saya menulis jawaban ini dan bug masih belum diperbaiki.) Juga pintasan keyboard untuk layanan tidak tersedia di beberapa aplikasi seperti Emacs.

Lri
sumber
3
private.xml MANA? Dimana saja? Apakah sudah ada? Saya tidak dapat menemukannya. Kemana perginya?
boulder_ruby
@boulder_ruby /Library/Application Support/Karabiner/private.xml,. Atau buka Karabiner GUI> misc & uninstall tab> tab "Open private.xml". Saya memiliki kesulitan yang sama persis.
Alexander Bird
Karabiner-Elements adalah awesomer, sekarang saya tahu saya bisa mengubah pengaturannya langsung dalam file json. Terima kasih! 😃
Quinn
2
Letakkan automator satu di atasnya yang paling mudah dilakukan bagi kebanyakan orang
Harry
8

Alfred

Alfred, dalam versi Power Pack-nya, dapat memetakan pintasan ke aplikasi, di antara banyak fitur lainnya.

David
sumber
5

Jika Anda tidak ingin menggunakan aplikasi pihak ketiga.
Kemudian Anda dapat menggunakan Automator (Layanan), dan pintasan keyboard bawaan.

Inilah caranya dalam menjawab pertanyaan serupa.

Sangat sederhana.

Pada Langkah 3 , menciptakan layanan.
Setel ke 'aplikasi apa saja'.

yaitu,
setel Layanan terima ke: 'tidak ada input' di 'aplikasi apa pun' (Lakukan ini dengan menggunakan drop down di bagian atas.)

markhunte
sumber
Bersikaplah baik untuk mengetahui mengapa ada suara turun pada ini. Tidak mengomentari suara turun tidak membantu siapa pun
markhunte
5

Dapatkan Quicksilver, http://www.blacktree.com/ , ini memungkinkan Anda untuk mengatur pintasan keyboard untuk membuka aplikasi. Sebenarnya ada lebih banyak lagi aplikasi yang melakukan ini (Alfred, Keyboard Maestro dll.)

Mac OS X sebenarnya memiliki cara untuk melakukan itu, tetapi tidak berfungsi untuk Firefox, karena tidak mendukung layanan! http://hints.macworld.com/article.php?story=20090903085255430

Pembaruan Jan 2012: Blacktree tidak lagi memperbarui Quicksilver - pengembang pergi ke Google dan telah merilis Kotak Pencarian Cepat Google . Quicksilver hidup terus, tetapi memiliki rumah baru di qsapp.com .

Paul Eccles
sumber
Terima kasih. Sangat membantu saya. menggunakan Google tetapi tidak menemukan tautan Anda.
politicus
Keren, jadi kamu datang benar?
Paul Eccles
1
"Iya". Instal Quicksilver (sangat kuat, tentu lebih baik daripada hanya memiliki jalan pintas). Mencoba Maestro Keyboard. Sekarang beristirahat sebelum mempelajari semua pintasan ini ;-)
politicus
Quicksilver bagus. Terima kasih banyak atas sarannya. Saya membuat skrip bash untuk membuka gmail dan yang lain untuk membuka mysms di browser. Lalu saya menggunakan skrip appify untuk membuatnya menjadi aplikasi OS X. Dari sana saya bisa menggunakan Quicksilver untuk membuka pintasan keyboard saya. Sangat bagus untuk dimiliki. mathiasbynens.be/notes/shell-script-mac-apps
jbrock
2

Ada banyak opsi bagus di sini, tetapi saya ingin menambahkan favorit pribadi saya yang telah saya gunakan sejak 10.5 dan masih bekerja pada 10.11.2: Spark 3 .

http://www.shadowlab.org/Software/spark.php

Ini freeware dan sangat mudah diatur. Berikut deskripsi pengembang:

Spark adalah manajer Shortcuts yang kuat dan mudah. Dengan Spark Anda dapat membuat Hot Keys untuk meluncurkan aplikasi dan dokumen, menjalankan AppleScript, mengontrol iTunes, dan banyak lagi ... Anda juga dapat mengekspor dan mengimpor pustaka Hot Keys Anda, atau menyimpannya dalam format HTML untuk mencetaknya. Spark gratis, jadi gunakan tanpa moderasi!

Berikut screenshot dari antarmuka:

Spark Antarmuka Pengguna

billynoah
sumber
2

Saya menemukan Apptivate yang paling mudah digunakan. Anda cukup memilih aplikasi dan Anda menetapkan pintasan global. Itu dia.

Soid
sumber
1

Saya tahu Alfred telah disebutkan, tetapi saya pikir saya akan mengatakan sedikit tentang memilih tombol pintas. Pada awalnya tidak jelas bagi saya apa yang akan menjadi seperangkat pintasan yang baik yang (a) mudah diingat, (b) mudah digunakan, dan (c) tidak bertentangan dengan sistem atau tombol pintas aplikasi lainnya.

Saya akhirnya menggunakan kunci "alt" sebagai dasar, dan umumnya mengandalkan kunci yang dapat dipicu oleh tangan kiri, dan memilih huruf deskriptif (misalnya, x untuk Excel). ini memungkinkan Anda untuk memiliki mouse di tangan kanan dan tombol pintas dipicu dengan tangan kiri.

Manfaat lain menggunakan Alfred Hotkeys untuk mengaktifkan aplikasi adalah bahwa jika suatu aplikasi disembunyikan, itu tidak akan dibiarkan.

Berikut cuplikan layar tentang cara mengonfigurasinya: contoh konfigurasi hotkey alfred

Jeromy Anglim
sumber
1

Untuk membuka Terminal dengan pintasan keyboard tanpa perangkat lunak pihak ketiga:

  • Buka Automator ( ⌘ + Spasi , lalu ketik Automator)
  • Buka File -> Baru
  • Pilih Tindakan Cepat (atau Layanan , tergantung pada versi Mac Anda)
  • Di mana dikatakan Workflow menerima , pilih tidak ada input :

cara membuka terminal mac dengan pintasan keyboard

  • Di kolom Tindakan , cari Jalankan AppleScript dan seret ke kolom kanan
  • Rekatkan ini di area skrip:

    on run {input, parameters}
    
        tell application "Terminal"
            do script ""
            activate
        end tell
    
    end run
    

PS: Hapus do script ""jika Anda tidak ingin terminal baru setiap kali Anda menekan tombol pintas.

  • Klik File -> Simpan dan beri nama apa pun yang Anda inginkan

buka terminal mac dengan pintasan keyboard

  • Sekarang tutup Automator dan buka System Preferences -> Keyboard -> Shortcuts
  • Di kolom kiri, klik "Layanan"
  • Gulir ke bawah ke bagian paling bawah, Anda akan melihat skrip yang baru saja Anda simpan. Klik tidak ada untuk menetapkan hotkey untuk itu.

Namun, satu hal penting yang perlu dipertimbangkan adalah bahwa hotkey harus unik di semua aplikasi. Jika Anda menetapkan hotkey umum, seperti ⌘ + T , dan mencoba untuk membuka terminal saat menjelajah, itu akan bertentangan dengan kebanyakan hotkey browser untuk membuka tab baru, sehingga itu tidak akan berfungsi. Itu sebabnya Anda harus mencoba jalan pintas yang tidak akan bertentangan dengan aplikasi apa pun.

Saya telah memilih ⌘ + ⌥ + F12 . Bekerja dengan cukup baik.

Memperbarui

Jika Anda menggunakan iTerm2 + Oh My Zsh , cukup ganti Run AppleScript dengan Launch Application in Automator, dan pilih iTerm.app dari daftar.

Lucas Bustamante
sumber
Anda tidak perlu menggunakan AppleScript: ada tindakan Peluncuran Aplikasi.
benwiggy
1

Jika Aplikasi adalah Terminal, ini sudah memiliki tombol pintas yang dikonfigurasi dalam Preferensi: Preferensi Sistem Pintasan Keyboard Terminal Baru di Folder ^+ +T

Terminal Baru di Folder Tab + ^+ +T

Max MacLeod
sumber
Perhatikan bahwa saya akan menjawab ini di tombol pintas untuk pertanyaan peluncuran Terminal. Namun mereka tidak dapat dijawab karena mereka ditandai sebagai duplikat dari pertanyaan ini.
Max MacLeod