Applescript를 사용하여 iTunes에서 스마트 재생 목록 새로 고침 / 업데이트 트리거?


0

현재 재생중인 노래의 등급과 같은 항목을 변경하면 더 이상 스마트 재생 목록의 기준을 충족하지 않을 경우 노래가 재생 목록에서 사라질 수 있으므로 대부분의 스마트 재생 목록에서 실시간 업데이트를 사용 중지 상태로 유지합니다. 노래가 멈추고 재생 목록이 멈 춥니 다. 지금까지 가장 쉬운 해결책은 밤중에 AppleScript를 자동으로 실행시켜 iTunes를 종료 한 다음 다시 시작하여 내 스마트 재생 목록을 모두 강제 업데이트하는 것입니다. 이 작동합니다. 또한 스마트 재생 목록을 마우스 오른쪽 버튼으로 클릭하고 "스마트 재생 목록 업데이트"를 선택하기가 쉽습니다. 하지만 내가하는 일은 Applescript를 사용하여 모든 스마트 재생 목록을 새로 고치고 단축키 (BetterTouchTool 사용)를 할당하는 것입니다.

Applescript를 사용하여 iTunes 스마트 재생 목록을 업데이트 할 수 있습니까?

답변:


2

Update Smart Playlist 항목은 상황 별 메뉴에만 있습니다. 그럴 수 없다. 내가 생각할 수있는 두 가지 해결 방법이 있습니다. 1. BTT : 재생 목록 위로 마우스를 이동하고 마우스 오른쪽 버튼으로 클릭 - & gt; u- & gt; 반환. 또는:

tell application "System Events" to tell application process "iTunes"
    set frontmost to true
    repeat 2 times
        tell menu item "Edit Smart Playlist" of menu "File" of menu bar 1 to perform action "AXPress"
        tell checkbox "Live updating" of window 1 to perform action "AXPress"
        tell button "OK" of window 1 to perform action "AXPress"
    end repeat
end tell

두 번째 옵션은 내가하려는 일에 잠재력이 있습니다. 나는 라이브 업데이트를 다시 시작해야한다고 생각하지 않는다. "Edit Smart Playlist"를 선택한 다음 "OK"라고 말하면됩니다. 내가 잘못하지 않으면 재생 목록이 업데이트됩니다. 따라서, 더 좋은 방법이 없으면 나를 솔루션으로 인도 한 것처럼 보입니다. 감사!!!
2oh1

0

여기서 신용은 fartheraway로 위의 대답으로갑니다. 나는 누군가가 이런 식으로 검색을하고 나의 질문을 찾았을 때 완전한 대답을 게시하는 것이 도움이 될 수 있다고 생각했다. 여기에 내가 끝내는 해결책이있다. 이것을 AppleScript로 저장 한 다음 BetterTouchTool을 사용하여 바로 가기 키를 지정하십시오. 이 스크립트는 현재 재생중인 스마트 재생 목록을 업데이트합니다. iTunes가 가장 앞선 앱이 아닌 경우이 스크립트는 iTunes로 전환하고 재생 목록을 업데이트 한 다음 사용중인 앱으로 다시 이동합니다 (command + tab). 이것은 나를 위해 작동합니다! 위의 도움에 대한 fartheraway에 다시 한 번 감사드립니다.

tell application "System Events"
    set frontmostApp to name of application processes whose frontmost is true
end tell

tell application "System Events" to tell application process "iTunes"
    set frontmost to true
    tell application "iTunes"
        try
            reveal current track
        end try
    end tell
    tell menu item "Edit Smart Playlist" of menu "File" of menu bar 1 to perform action "AXPress"
    tell button "OK" of window 1 to perform action "AXPress"
    end tell

if frontmostApp is not {"iTunes"} then
    tell application "System Events"
        key down command
        keystroke tab
        key code 123
        repeat while (exists list 2 of process "Dock")
            delay 0.1
        end repeat
        key up command
    end tell
end if

0

이 스레드를 시작해 주셔서 고마워요!

내 iTunes에는 수백 가지 스마트 재생 목록이 있으므로 라이브 업데이트를 수동으로 전환하는 것은 정말 고통 스럽습니다.

저의 엘 캐피 탄 (El Capitan)과 시에라 (Sierra) 시스템에서 작동하도록 잠시 동안 위의 답변을 가지고 놀아야했지만, 마침내 저에게 도움이되었습니다.

tell application "iTunes"
activate
set frontmost to true
repeat with aPlaylist in (get user playlists)
  set n to name of aPlaylist
  set s to smart of aPlaylist as string
  if s is "true" then
    try
      set view of front browser window to playlist n
      set frontmost to true
      delay 1
      tell application "System Events" to tell application process "iTunes"
        click menu item "Edit Smart Playlist" of menu "File" of menu bar 1
        delay 1

        # To toggle the selection use the following line
        click checkbox "Live updating" of window 1

        # To enable use the below code. To disable, use the below code but change 'false' to 'true'
        #set theCheckbox to checkbox "Live updating" of window 1
        #tell theCheckbox
        #set checkboxStatus to value of theCheckbox as boolean
        #set c to checkboxStatus as string
        #if checkboxStatus is false then click theCheckbox
        #end tell

        delay 1
        click button "OK" of window 1
      end tell
    end try
  end if
end repeat
end tell
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.