Tôi có thể tạo lối tắt để mở một ứng dụng cụ thể trên OS X không?


51

Tôi muốn tạo một phím tắt để mở Firefox trong khi tôi đang làm việc trong một ứng dụng khác. Tôi biết tôi có thể sử dụng ⌘ CMD+ Tkhi tôi ở Firefox để mở tab mới.

Tôi chưa tìm thấy cách tạo loại phím tắt đó trong Tùy chọn hệ thống.

Có ý kiến ​​gì không?


1
Vậy ý bạn là phím tắt?
Rabarberski

Nhìn vào Dịch vụ trên menu Ứng dụng, mọi ứng dụng Ca cao được viết hợp lý sẽ có những thứ này và chúng có thể được gán các khóa. Thật không may, tôi nghĩ Firefox không được viết để sử dụng chúng. Safari có thể được sử dụng tại đây
user151019 19/03/13

Điều này có thể không phải là một lựa chọn trong năm 2011 khi câu hỏi được hỏi lần đầu tiên, nhưng giờ đây việc sử dụng Automator khá dễ dàng. Xem howtogeek.com/209725/ Khăn để xem hướng dẫn.
Edward Falk

Đối với tôi, điều khá tuyệt vời là Apple, với khả năng sử dụng được khoe khoang của mình, đã không thấy nó phù hợp để xây dựng vào MacOS một cách đơn giản để gán một phím tắt chính để khởi chạy một ứng dụng.
Teemu Leisti

Câu trả lời:


44

Karabiner-Elements (10.12 trở lên)

Karabiner đã ngừng hoạt động vào 10.12 do những thay đổi trong kiến ​​trúc kernel và Karabiner được viết lại thành Karabiner-Elements sử dụng định dạng JSON mới cho các tệp cấu hình.

Bây giờ bạn có thể thêm quy tắc như thế này vào karabiner.json( https://pqrs.org/osx/karabiner/json.html ):

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

Điều này làm cho một cú nhấn ngắn của phím lệnh bên phải mở 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 trở về trước)

Lưu một tệp như thế này dưới dạng 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

Nếu bạn đã mua Powerpack cho Alfred 2, bạn có thể tạo quy trình làm việc như thế này:

Các phím nóng có độ trễ ngắn theo mặc định, nhưng bạn có thể giảm độ trễ bằng cách thay đổi tùy chọn "Hành vi kích hoạt" từ "Mô phỏng các phím sửa đổi được phát hành" thành "Chuyển qua các phím bổ trợ (Nhanh nhất)":

Dịch vụ tự động

Mở Automator, chọn "Dịch vụ" làm loại tài liệu, thay đổi "Dịch vụ nhận" từ "văn bản" thành "không nhập", thêm hành động "Khởi chạy ứng dụng" và lưu dịch vụ. Sau đó chỉ định phím tắt cho dịch vụ từ "Tùy chọn hệ thống> Bàn phím> Phím tắt> Dịch vụ".

Tôi không khuyến nghị tùy chọn này, vì ít nhất trên hệ thống của tôi, ít nhất có độ trễ khoảng nửa giây trước khi một ứng dụng được tập trung bởi một phím tắt được tạo bằng phương pháp này và độ trễ thường còn lâu hơn. Cũng có một lỗi kể từ ngày 10.7, trong đó các phím tắt cho dịch vụ Automator không luôn hoạt động cho đến khi bạn di chuột qua menu dịch vụ từ thanh menu. (Chỉnh sửa: bây giờ là 8 năm sau khi tôi viết câu trả lời này và lỗi vẫn chưa được sửa.) Ngoài ra, các phím tắt cho các dịch vụ không có sẵn trong một số ứng dụng như Emacs.


3
privateDB Ở ĐÂU? Bất cứ nơi nào? Nó đã tồn tại? Tôi không thể tìm thấy nó. Nó đi đâu?
boulder_ruby

@boulder_ruby /Library/Application Support/Karabiner/private.xml,. Hoặc mở GUI Karabiner> tab misc & gỡ cài đặt> tab "Open private.xml". Tôi đã có cùng một khó khăn chính xác.
Alexander Bird

Karabiner-Elements là một điều tuyệt vời, bây giờ tôi biết rằng tôi có thể sửa đổi các cài đặt của nó trực tiếp trong một tệp json. Cảm ơn! 😃
Quinn Comendant

2
Đặt máy tự động lên hàng đầu dễ làm nhất đối với hầu hết mọi người
Harry

8

Alfred

Alfred, trong phiên bản Power Pack, có thể ánh xạ các phím tắt đến các ứng dụng, trong số nhiều tính năng khác.


5

Nếu bạn không muốn sử dụng ứng dụng của bên thứ ba.
Sau đó, bạn có thể sử dụng Trình tự động (Dịch vụ) và Phím tắt tích hợp.

Đây là cách trả lời cho một câu hỏi tương tự.

Rất đơn giản.

Trong Bước 3 , tạo dịch vụ.
Đặt nó thành 'bất kỳ ứng dụng nào'.

tức là,
đặt Dịch vụ nhận thành: 'không có đầu vào' trong 'bất kỳ ứng dụng nào' (Thực hiện việc này bằng cách sử dụng danh sách thả xuống ở trên cùng.)


Hãy tốt đẹp để biết tại sao có một cuộc bỏ phiếu về điều này. Không bình luận về phiếu bầu xuống là không hữu ích cho bất cứ ai
markhunte


5

Nhận Quicksilver, http://www.blacktree.com/ , nó sẽ cho phép bạn đặt các phím tắt để mở ứng dụng. Thực tế có nhiều ứng dụng hơn làm điều này (Alfred, Bàn phím Maestro, v.v.)

Mac OS X thực sự có cách tích hợp sẵn để thực hiện điều đó, nhưng nó không hoạt động với Firefox, vì nó không hỗ trợ các dịch vụ! http://hints.macworld.com/article.php?story=20090903085255430

Cập nhật tháng 1 năm 2012: Blacktree không còn cập nhật Quicksilver - nhà phát triển đã lên Google và đã phát hành Google Quick Search Box . Quicksilver vẫn sống, nhưng nó có một ngôi nhà mới tại qsapp.com .


Cảm ơn. Rất hữu ích cho tôi. đã sử dụng Google nhưng không tìm thấy liên kết của bạn.
năm11

Thật tuyệt, vậy bạn đã đến phải không?
Paul Ecère

1
"Đúng". Đã cài đặt Quicksilver (rất mạnh mẽ, chắc chắn tốt hơn là chỉ có một phím tắt). Đã thử Bàn phím Maestro. Bây giờ hãy nghỉ ngơi trước khi học tất cả các phím tắt này ;-)
politicus

Quicksilver là tuyệt vời. Cảm ơn rất nhiều cho lời khuyên. Tôi đã tạo một tập lệnh bash để mở gmail và một tập lệnh khác để mở mysms trong trình duyệt. Sau đó, tôi đã sử dụng tập lệnh appify để biến chúng thành ứng dụng OS X. Từ đó tôi có thể sử dụng Quicksilver để có các phím tắt trên bàn phím để khởi chạy chúng. Rất đẹp để có. mathiasbynens.be/notes/shell-script-mac-apps
jbrock

2

Có rất nhiều lựa chọn tốt ở đây nhưng tôi muốn thêm vào mục yêu thích cá nhân mà tôi đã sử dụng từ ngày 10.5 và vẫn hoạt động vào ngày 10.11.2: Spark 3 .

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

Đó là phần mềm miễn phí và cực kỳ dễ cài đặt. Dưới đây là mô tả của nhà phát triển:

Spark là một trình quản lý Phím tắt mạnh mẽ và dễ dàng. Với Spark, bạn có thể tạo Phím nóng để khởi chạy ứng dụng và tài liệu, thực thi AppleScript, kiểm soát iTunes và hơn thế nữa ... Bạn cũng có thể xuất và nhập thư viện Phím nóng hoặc lưu ở định dạng HTML để in. Spark là miễn phí, vì vậy sử dụng nó mà không cần kiểm duyệt!

Đây là một ảnh chụp màn hình của giao diện:

Giao diện người dùng Spark


2

Tôi tìm thấy Kích hoạt dễ sử dụng nhất. Bạn chỉ cần chọn một ứng dụng và bạn chỉ định một phím tắt toàn cầu. Đó là nó.


1

Tôi biết Alfred đã được đề cập, nhưng tôi nghĩ tôi sẽ nói một chút về việc chọn các phím tắt. Ban đầu tôi không rõ ràng đâu là một bộ phím tắt tốt (a) dễ nhớ, (b) dễ sử dụng và (c) không xung đột với các phím tắt hệ thống hoặc ứng dụng khác.

Cuối cùng tôi đã sử dụng phím "alt" làm cơ sở và thường dựa vào các phím có thể được kích hoạt bằng tay trái và chọn các chữ cái mô tả (ví dụ: x cho Excel). điều này cho phép bạn có chuột trong tay phải và các phím tắt được kích hoạt bằng bên trái.

Một lợi ích khác của việc sử dụng Alfred Hotkeys để kích hoạt một ứng dụng là nếu một ứng dụng bị ẩn, nó sẽ không bị cấm.

Đây là một ảnh chụp màn hình về cách tôi đã cấu hình nó: ví dụ cấu hình phím nóng alfred


1

Để mở Terminal bằng phím tắt mà không cần bất kỳ phần mềm của bên thứ ba nào:

  • Mở Automator ( + Space , sau đó nhập Automator)
  • Chuyển đến Tệp -> Mới
  • Chọn Hành động nhanh (hoặc Dịch vụ , tùy thuộc vào phiên bản Mac của bạn)
  • Trường hợp thông báo Workflow nhận được , chọn không có đầu vào :

Làm thế nào để mở một thiết bị đầu cuối mac với phím tắt

  • Trong cột Hành động , tìm kiếm Chạy AppleScript và kéo nó sang cột bên phải
  • Dán cái này vào vùng script:

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

PS: Xóa do script ""nếu bạn không muốn một phiên bản mới của thiết bị đầu cuối mỗi lần bạn nhấn phím nóng.

  • Nhấp vào Tệp -> Lưu và đặt tên cho bất cứ điều gì bạn muốn

thiết bị đầu cuối mở mac với phím tắt

  • Bây giờ hãy đóng Automator và mở Tùy chọn hệ thống -> Bàn phím -> Phím tắt
  • Ở cột bên trái, nhấp vào "Dịch vụ"
  • Cuộn xuống phía dưới cùng, bạn sẽ thấy tập lệnh bạn vừa lưu. Nhấp vào không để gán một phím nóng cho nó.

Tuy nhiên, một điều quan trọng cần xem xét là phím nóng phải là duy nhất trên tất cả các ứng dụng. Nếu bạn chỉ định một phím nóng thông thường, chẳng hạn như ⌘ + T và cố gắng mở thiết bị đầu cuối trong khi duyệt, nó sẽ xung đột với hầu hết các phím nóng của trình duyệt để mở một tab mới, vì vậy nó sẽ không hoạt động. Đó là lý do tại sao bạn nên thử một lối tắt không xung đột với bất kỳ ứng dụng nào.

Tôi đã chọn ⌘ + + F12 . Hoạt động khá tốt.

Cập nhật

Nếu bạn đang sử dụng iTerm2 + Oh My Zsh , chỉ cần thay thế Chạy AppleScript bằng Khởi chạy ứng dụng trong Automator và chọn iTerm.app từ danh sách.


Bạn không cần sử dụng AppleScript: có hành động Khởi chạy ứng dụng.
benwiggy

1

Nếu Ứng dụng là Terminal, thì ứng dụng này đã có các phím tắt được cấu hình trong Tùy chọn: Tùy chọn hệ thống Phím tắt Terminal mới tại Thư mục ^+ +T

Thiết bị đầu cuối mới tại Thư mục Tab + ^+ +T


Lưu ý rằng tôi đã trả lời điều này trong phím tắt cho các câu hỏi khởi chạy Terminal. Tuy nhiên, chúng không thể được trả lời vì chúng được đánh dấu là bản sao của câu hỏi này.
Max MacLeod

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.