키보드 단축키를 사용하여 새로운 공간 만들기


10

클릭하면 Mission Control에서 할 수 있으며 '키보드'에 사용 가능한 단축키가 없습니다.

타사 프로그램이나 Applescript를 사용하여이를 수행 할 수있는 방법이 있습니까?

여기에 이미지 설명을 입력하십시오

여기에 이미지 설명을 입력하십시오


워크 플로에 매우 유용한 질문입니다. 또한 바탕 화면 배경에 대해 알고 싶습니다!
Qcom

1
당신이 질문을 좋아해서 다행입니다 :) 여기에 벽지에 대한 링크가 있습니다 somethingpeach.com/wp-content/uploads/2014/06/…
Jonathan De Wet

답변:


1

업데이트 :이 방법은 OS X 10.11 이전 버전에서 OS X 10.8 이상에서 작동하지만 (OS X 10.8 이전 버전에서는 테스트하지 않았 음) Apple에서 만든 Mission Control의 중요한 변경으로 인해 macOS 10.12에서 코딩 된대로 더 이상 작동하지 않습니다 .


Mission Control에서 데스크톱을 프로그래밍 방식으로 추가하려면 아래 코드를 각각 AppleScript 또는 Run Shell Script 실행을 사용하는 Automator 서비스 및 키보드의 시스템 환경 설정에서 서비스에 지정된 키 시퀀스와 함께 AppleScript 또는 BASH 스크립트로 사용할 수 있습니다 바로 가기.


AppleScript 코드 :

do shell script "open -a 'Mission Control'"
delay 0.5
tell application "System Events" to click (every button whose value of attribute "AXDescription" is "add desktop") of group 1 of process "Dock"
delay 0.5
tell application "System Events" to key code 53

BASH 스크립트 코드 :

#!/bin/bash

open -a 'Mission Control'
osascript -e 'delay 0.5' \
          -e 'tell application "System Events" to click (every button whose value of attribute "AXDescription" is "add desktop") of group 1 of process "Dock"' \
          -e 'delay 0.5' \
          -e 'tell application "System Events" to key code 53'

  • Automator를 열고 서비스를 선택하십시오 .

  • 설정 : 서비스가 응용 프로그램에서 입력을받지 않음

  • Run AppleScript 또는 Run Shell Script Action을 추가 하십시오 .

  • 대상 Action에 적절한 코드 를 추가하십시오 .

  • 서비스를 다음 과 같이 저장하십시오. 예 : 새 데스크탑 추가

  • 시스템 환경 설정 에서 서비스 에 대한 키보드 단축키를 지정하십시오 .

참고 : 서비스 에서 응용 프로그램 을 선택한 경우 시스템의 다른 곳 이나 Finder 에서 사용되지 않는 키 시퀀스를 지정 해야합니다 .

나는 그것을 테스트했다 : ⌃⌥⌘D (Control-Option-Command-D)


감사합니다. 공백을 삭제하기 위해 두 번째 스크립트를 만들 수 있다고 생각하십니까?
Jonathan De Wet

@Jonathan, 데스크톱 추가는 프로그래밍 방식으로 시작하는 일종의 문제입니다. AXTitle을 사용하여 Mission Control에서 AXButton을 클릭 할 수있는 "데스크탑 추가"라는 AXButton이 있기 때문에 가능합니다. 예 : " 데스크톱 2 "에는 닫기 요소 (버튼의 왼쪽 상단 모서리에 도끼가있는 원)가 있지만"데스크탑 제거 "버튼이없는 것과 같은 방식으로 처리 할 수 ​​없습니다. 따라서 프로그래밍 방식으로 쉽게 제거하는 방법을 알지 못합니다. 죄송합니다.
user3439894

말이 되네요 시간을내어 설명해 주셔서 감사합니다.
Jonathan De Wet

나는 macOS (10.12.1)에서 이것을 시도했지만 운이 없었습니다. 0.5 초 동안 미션 컨트롤을 열지 만 새 데스크톱 버튼을 누르지 않았습니다.
domi91c 2012 년

2
@ user3439894 예, 누군가 MacOS에 대한 답변이있는 경우를 대비하여 설명하고있었습니다. 나는 별도의 질문을 만드는 것을 고려하지 않았습니다. 내가해야합니까? 고마워, 나는 도움을 주셔서 감사합니다.
domi91c

2

좋아, Automator 기록을 사용하여 다른 답변에서 수정 된 AppleScript 버전으로 작동하게 만들었습니다.

"그룹 1의"를 "그룹 1의 그룹 1의 그룹 2의"로 바꾸십시오.

on run {input, parameters}

    do shell script "open -a 'Mission Control'"
    delay 0.5
    tell application "System Events" to click (every button whose value of attribute "AXDescription" is "add desktop") of group 2 of group 1 of group 1 of process "Dock"
    delay 0.5
    tell application "System Events" to key code 53

    return input
end run

확인 된 답변이 저에게 효과가 없었지만이 답변은 =)
Brian Schermerhorn

1

그렇습니다. 문제는 활성 응용 프로그램 (파인더, 텍스트 편집 등)이 보안 및 개인 정보 접근성 창에 추가되지 않은 경우 user3439894의 솔루션에서 오류가 발생한다는 것입니다.

이 문제를 해결하려면 업데이트 된 그룹 목록을 Automator 응용 프로그램으로 사용하는 user3439894의 서비스와이를 시작하는 두 번째 Automator 서비스의 두 가지 워크 플로가 필요합니다.

자동화 응용 프로그램 (/ 응용 프로그램에 "새 데스크톱"으로 저장 됨)

실행시 {입력, 매개 변수}

쉘 스크립트 "open -a 'Mission Control'"수행

지연 0.5

"Dock"프로세스의 그룹 1 그룹 1의 그룹 2의 "AXDescription"속성 값이 "데스크톱 추가"인 모든 버튼을 클릭하도록 응용 프로그램 "시스템 이벤트"에 지시

지연 0.5

응용 프로그램에 "시스템 이벤트"를 키 코드 53으로 알리십시오.

리턴 입력

최종 실행

그런 다음 "Launch Application"조치를 사용하여 두 번째 워크 플로우를 서비스로 작성하고 "New_Desktop"으로 저장하면됩니다.

마지막 단계는 시스템 환경 설정> 보안 및 개인 정보> 접근성에 "New Desktop.App"을 추가하는 것입니다.

그런 다음 New_Desktop.workflow의 시스템 환경 설정> 키보드> 단축키> 서비스> 일반에서 키보드 단축키를 추가하십시오.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.