답변:
저는 여기에 이름이 내 솔루션의 창 스냅 샷 , 아주 간단한에 기본 애플 스크립트 , 어느 내에서 응용 프로그램으로 저장된 스크립트 편집기 및 또는의 일부로 사용 자동화 서비스 와 키보드 단축키 할당은. 서비스 로서 Window-Snapshot AppleScript 응용 프로그램의 한 번의 마우스 클릭 솔루션 에서 사용되는 타사 유틸리티를 사용 합니다.
이것은 2 개의 마우스 클릭 솔루션 ( 기본값 ) 또는 1 * 마우스 클릭 솔루션 으로 설정 될 수 있습니다 .
A와 두 개의 마우스 클릭 솔루션 애플 스크립트 는 응용 프로그램으로 저장 한 것, 내가로 저장 창 스냅 샷 에서 응용 프로그램 , 다음에 배치 독 드래그 앤 드롭하여 응용 프로그램 번들을 에 독 나는 그것이되고 싶어.
delay
타이머로 명령하면 마우스 포인터가 시간 초과되기 전에 마우스 포인터를 위치시킬 수 있으며 한 번의 마우스 클릭 솔루션에 사용 된 스냅 샷을 자동으로 생성 합니다 . 그 자체로 두 개의 마우스 클릭 솔루션 이 여기에 제시된 가장 쉬운 솔루션입니다.한 번의 마우스 클릭 솔루션 으로 AppleScript 가 응용 프로그램으로 저장되고 타사 유틸리티 CLICLICK 이 응용 프로그램 번들에 추가되고 해당 코드가 스크립트에서 주석 처리되지 않습니다.
delay
명령을 사용하여 캡처 할 대상 창 어디에서나 마우스 포인터를 놓을 때 시간을 허용하며 두 번째 delay
명령이 있을 때 창이 최상위 창인지 여부는 중요하지 않습니다. 스냅 샷에서 캡처 한 창 위에 마우스를 놓으면 시간이 초과 됩니다. esc두 번째 delay
명령이 시간 초과 되기 전에 키를 누르면 캡처가 중단 될 수 있습니다 .으로 자동화 서비스 그것을 사용하여 만든 것 ApplesScript의 코드를 약간 수정하고, 키보드 바로 가기가 받는 할당 된 서비스 에서 : 시스템 환경 설정> 키보드 단축키> 서비스
tell application "System Events"
(* Note: If used as the default two mouse-click solution then use as is, nothing else needs to be done. *)
keystroke "$" using {command down}
delay 0.25
keystroke space
(* Note: If using as the one mouse-click solution or Automator Service, uncomment the
two lines below having double-dashes in front by removing the double-dashes.
Also when using as the one mouse-click solution, set a value on the 'delay' command
below to an appropriate value which allows you the time necessary to move the mouse
over the target window before that delay command times out and the snapshot is taken.
The default of '1.5' is in this use case is a somewhat arbitrary value, set it to suite.
Note: When using as an Automator Service set the 'delay' command below to '0.25',
the same as in the first 'delay' command. *)
-- delay 1.5
-- do shell script "/Applications/Window-Snapshot.app/Contents/Resources/cliclick c:."
end tell
0.25
두 번째 값인 두 개의 명령 사이에 지연이 필요하므로이 짧은 지연이 필요 합니다. 한 번의 마우스 클릭 솔루션을 사용하는 경우 두 번째 명령이보다 현실적이어야합니다. 지연 명령이 만료되기 전에 대상 창 위로 마우스를 이동하는 데 필요한 시간을 허용하는 값을 설정하십시오 (예 : 기타).delay 0.25
delay
keystroke
delay
1.5
스크립트 편집기 (또는 해당되는 경우 AppleScript 편집기)를 엽니 다 .
위에서 Window-Snapshot AppleScript 코드를 복사 하여 제목없는 문서 창에 붙여 넣은 다음 컴파일 을 누릅니다 .
를 눌러 파일 형식⌘S 을 저장하고 응용 프로그램 폴더 에 파일 저장 : 을 응용 프로그램으로 설정하십시오 .
주고받는 창 스냅 샷 응용 프로그램에서 사용자 정의 아이콘을 번들. 아이콘 찾기 에서 찾은 카메라 아이콘 을 사용 했으며 특히 'ICNS 다운로드'버튼을 클릭하면 이 아이콘 을 사용 했습니다 . 다운로드 한 "scanners_cameras.icns"파일을 미리보기 에서 열고 복사 한 다음 먼저 Window-Snapshot Info 시트 의 왼쪽 상단에있는 작은 아이콘을 선택하여 Window-Snapshot.app 의 정보 입수 시트에 붙여 넣었습니다 . ( 응용 프로그램 에서 Window-Snapshot.app를 선택하고 다음 을 누릅니다. )⌘I
이제 드래그 앤 드롭 창 스냅 샷 으로부터 응용 프로그램 번들 응용 프로그램 에 폴더 독 당신이 싶습니다.
이제 사용할 준비가되었습니다. Window-Snapshot Dock Tile 을 클릭 한 다음 캡처 할 대상 창을 클릭하십시오.
Screen Shot yyyy-mm-dd at hh.mm.ss AM|PM
또는 경우에 기본이 변경되었습니다 그것이 현재 설정되어 그러나에있을 것입니다.CLICLICK을 사용하여 Window * Snapshot.app를 원 * 마우스 클릭 솔루션으로 설정
CLICLICK을 다운로드 하고 cliclick.dmg 파일을 마운트 하고 스크립트의 경로 표시에서 Window-Snapshot.app 애플리케이션 번들에 cliclick
실행 파일 사본을 배치하십시오 . 패키지 내용 표시를 선택 하여 Window-Snapshot 앱을 Ctrl- 클릭 하고 실행 파일 사본이있는 Resources 폴더로 이동하십시오 .cliclick
코드 앞의 (* Note: If using as the one mouse-click solution or Automator Service,
이중 대시 ()를 제거 하여 주석 아래 두 줄의 주석을 해제하십시오 --
.
AppleScript에 대한 변경 사항을 저장하십시오 .
그것은 현재로 사용할 준비가 한 * 마우스 클릭 솔루션 .
서비스를 선택하는 Automator 를 엽니 다 .
설정 서비스는 선택 수신 에 입력이없는 떠나 모든 응용 프로그램에 때문이다. Run AppleScript를 추가 한 다음 위 의 Window-Snapshot AppleScript Code 를 복사 하여 기본 코드를 덮어 쓰는 Run AppleScript 윈도우에 붙여 넣습니다 .
코드 앞의 (* Note: If using as the one mouse-click solution or Automator Service,
이중 대시를 제거 하여 주석 아래의 두 줄 주석을 해제하고 두 --
번째 delay
명령 의 값을로 설정하십시오 0.25
.
서비스⌘S 이름을 Window-Snapshot 으로 눌러 저장하십시오 .
오픈 시스템 환경 과로 이동 키보드> 키보드 단축키> 서비스 하고 아래로 스크롤, 다음에서 일반 당신은 볼 수 창 스냅 샷을 하고 그것을 선택합니다. 이제 클릭 추가 바로 가기 키를 누릅니다 shift- command- 5나 : ⇧⌘5
키보드 단축키를 사용하여 서비스 로 사용할 준비가되었습니다 : ⇧⌘5
cliclick
하려면 설치 위치 에 따라 실행 파일 의 경로 이름을 조정해야 합니다. 당신은 예를 들어,에서 서비스 번들에 넣어 시도 할 수 /Users/$USER/Library/Services/Window-Snapshot.workflow/Contents
내가 모두로 보내고 있습니다 나는이 시도하지 않았지만, 애플 스크립트 A와 그것을 사용하는 응용 프로그램 이 마우스 클릭 솔루션 과 자동화 서비스 와 키보드 단축키 에 할당.마지막으로,이 매우 간단한 AppleScript 를 사용하여 응용 프로그램이나 서비스로 추가 기능을 추가 할 수 있다고 설명 하고 싶습니다. 예를 들어 다른 이름과 위치로 스냅 샷을 저장하는 코드 추가 등이 있습니다. 원하는 경우 수정하도록 남겨 두십시오.
checkModifierKeys
되고 이름이 의미하는 바를 수행하고 Dock 타일을 클릭 할 때 Shift 키를 누르면 화면 disable-shadow
캡처의 .plist 파일에서 키를 토글하여 그림자없이 쉽게 스냅 샷을 찍을 수 있습니다 . 저자가 제공 한 소스 코드로 빌드 한 두 실행 파일은 모두 바이너리를 제공하지만. 관심이 있으시면 답변을 업데이트하겠습니다.
한 가지 방법은 다음 screencapture
명령 을 사용하는 것입니다 .
screencapture -w window.png
명령을 실행 한 후 클릭 한 첫 번째 창을 캡처하여로 저장합니다 window.png
.
셸 스크립트로 실행 하는 Automator 서비스를 만들 거나 Alfred 와 같은 타사 실행기를 사용 하여이 명령을 키보드 단축키에 바인딩 할 수있는 몇 가지 방법이 있습니다 . 어느 쪽이든, 매번 다른 파일 이름을 선택한 프로세스에 스마트를 추가하고 싶을 수도 있으므로 이전 스크린 샷을 계속 덮어 쓰지 않았습니다.
항상 맨 앞 창을 캡처하는 쉬운 방법을 모르겠습니다. 아마도 AppleScript 전문가가 도움을 줄 수 있습니까?