कोई भी Spotify कीबोर्ड शॉर्टकट के साथ 'स्टार' ट्रैक्स को ट्विस्ट करता है?


20

मैं Spotify का एक प्रीमियम सब्सक्राइबर और एक जुनूनी उत्पादकता geek हूँ।

एक चीज जो वास्तव में मुझे परेशान करती है, वह यह है कि किसी ट्रैक को ट्रैक करने के लिए कीबोर्ड शॉर्टकट नहीं है (यानी पसंदीदा में ट्रैक जोड़ें)। जब मैं काम कर रहा होता हूं, तो मुझे Spotify रेडियो छोड़ना पसंद होता है और अब मुझे बार-बार टैब करना पड़ता है और ट्रैक पर राइट क्लिक करना होता है, उसके बाद जब भी मुझे कोई गाना पसंद आए तो मैं 'स्टार' को चुन सकता हूं।

वहाँ किसी भी Spotify tweaks / plugins वहाँ है कि मुझे एक कुंजीपटल शॉर्टकट के साथ 'स्टार' पटरियों के लिए अनुमति देगा?


क्या आप विंडोज मीडिया प्लेयर का उपयोग कर रहे हैं?
डियागो

नहीं, बस Spotify
एड़ी

जवाबों:


3

ज़रूर, AutoHotkey का उपयोग करें !

एक बार जब आप इसे स्थापित कर लेते हैं, तो इसे अपने AutoHotkey.ahk फ़ाइल में डाल दें:

#*::
WinWait, Spotify, 
IfWinNotActive, Spotify, , WinActivate, Spotify, 
WinWaitActive, Spotify, 
MouseClick, left,  79,  90
Sleep, 100
MouseClick, left,  256,  152
Sleep, 100
return

यह एक Win + Asterisk हॉटकी जोड़ता है जो ट्रैक को चला रहा है।

तुम भी AutoHotkey के लिए अन्य Spotify शॉर्टकट में रुचि हो सकती है ।


1
समस्या यह है कि जब किसी ट्रैक को UNSTAR पर क्लिक किया जाता है तो स्पॉटिफ़ का भी वही स्थान होता है। तो क्योंकि आपको एक अचूक ट्रैक का उपयोग करने की अनुमति नहीं मिली है, जैसे
एमएस। mann

2

मैंने दूसरे ऑटोहोटेकी शॉर्टकट की कोशिश की और यह मेरे लिए काम नहीं आया (बस दो मृत स्थानों में जगह बनाने और क्लिक करने के लिए स्विच किया गया)। मैंने निम्नलिखित को तैयार किया, जो तब तक काम करता है जब तक आपके पास "लार्ज नाउ प्लेइंग आर्टवर्क" चयनित हो:

CoordMode, Mouse, Relative
;star currently playing
+^l::
SpotifyWinHeight = 1050 ;set to 1080 - 30 for small taskbar size, just in case WinGetPos doesn't work for some reason
WinGetActiveTitle, CurWindow
WinActivate Spotify
WinWaitActive Spotify
WinGetPos,  ,  ,  , SpotifyWinHeight, Spotify
;          X  Y  W  H, we don't care about anything but height
RightClickTarget := SpotifyWinHeight - 250
ContextMenuTarget := RightClickTarget + 110
MouseMove, 100, %RightClickTarget%
Click Right
Sleep, 50
MouseMove, 180, %ContextMenuTarget%
Sleep, 50
Click
WinActivate %CurWindow%
return

यह निम्न कार्य करता है:

  • स्टोर वर्तमान में सक्रिय विंडो
  • Spotify को सक्रिय करता है
  • विंडो को व्यवस्थित करने के लिए एल्बम कलाकृति पर क्लिक करने के लिए ऑफसेट की गणना करता है
  • वर्तमान में जो सितारे खेल रहे हैं (राइट-क्लिक आर्टवर्क, लेफ्ट क्लिक स्टार)
  • इस सब से पहले जो भी विंडो सक्रिय थी उसे पुनर्स्थापित करता है

यह सही नहीं है (शायद खुश नहीं होगा यदि किसी कारण से आपने अपनी स्क्रीन को दाईं ओर लटका दिया है), लेकिन अधिकांश मामलों में काम हो जाता है।


यह भी खूब रही! धन्यवाद। यह देखने के लिए एक अंतिम संदर्भ मेनू आइटम को पढ़ने के लिए सुधार होगा कि क्या यह अनस्टार पढ़ता है, और यदि ऐसा नहीं है तो इसे क्लिक करें। अगर मुझे यह मिला तो मैं वापस आकर पोस्ट करूंगा।
गोल्जियर

2

तारांकित कोई चीज़ नहीं है।

अपडेट किए गए प्रश्नोत्तर के लिए यहां जाएं


नीचे दिया गया पुराना उत्तर ...

यहाँ एक और AutoHotkey समाधान है। उदार टिप्पणियाँ हैं। इसके अलावा, AutoHotkey प्रलेखन और फ़ोरम यदि चाहें तो सीखने के लिए बेहतरीन स्थान हैं।

नियंत्रण + Shift + * दबाने से सक्रिय गीत स्टार हो जाएगा।
इस स्क्रिप्ट की एक प्रमुख विशेषता यह है कि यह देखने के लिए जाँचता है कि क्या गीत पहले से ही तारांकित है और यदि ऐसा है तो उसे अकेला छोड़ देता है।

^+*::
spotify = ahk_class SpotifyMainWindow
IfWinExist, %spotify%
{
;Store active window and mouse position.
WinGetActiveTitle, activeWindow
MouseGetPos x, y, winID

;Activate Spotify.
WinActivate %spotify%
WinWaitActive %spotify%

;Right click near the song title in the "Now Playing" box.
WinGetPos,  ,  ,  , spotifyHeight, %spotify%
MouseClick, Right, 100, spotifyHeight - 70, 1, 0

;Get the contents of the context menu.
WinWait, ahk_class #32768
SendMessage, 0x1E1      ; MN_GETHMENU
allContextMenuInfo := ErrorLevel

;The "Star" command is the 5th menu item.
;If the song is Unstarred the text is Star, and vice versa. But sometimes some wierd characters are included.
;The only reliable way I found is to check if the first letter is S.
menuText_StarUnstar := GetContextMenuItemText(allContextMenuInfo, 5)
StringGetPos, positionOfS, menuText_StarUnstar, S

;If S is the first letter, star the song.
notStarred := (%positionOfS% = 0)
If notStarred {
    ;Arrow down to the Star menu item and press enter.
    Send {Down}{Down}{Down}{Down}{Down}{Enter}
} Else {
    ;Just close the context menu.
    Send {Escape}
}

;Restore original window and mouse position.
WinActivate ahk_id %winID%
MouseMove %x%, %y%
}

Return

;Conext menu helper function.
GetContextMenuItemText(hMenu, nPos)
{
length := DllCall("GetMenuString"
        , "UInt", hMenu
        , "UInt", nPos
        , "UInt", 0 ; NULL
        , "Int", 0  ; Get length
        , "UInt", 0x0400)   ; MF_BYPOSITION
    VarSetCapacity(lpString, length + 1)
    length := DllCall("GetMenuString"
        , "UInt", hMenu
        , "UInt", nPos
        , "Str", lpString
        , "Int", length + 1
        , "UInt", 0x0400)
return lpString
}

यह अब काम नहीं करता है। मेरा समाधान देखें।
tig

0

मेरे पास यह टिप्पणी करने के लिए GollyJer के उत्तर पर टिप्पणी करने के लिए नहीं है, लेकिन मैंने उस स्क्रिप्ट का उपयोग करने की कोशिश करते समय ध्यान दिया कि {down} कीस्ट्रोक्स के साथ एक समस्या थी जो किसी भी तरह से इसे हाइलाइट किए गए गीत को प्लेलिस्ट में ले जाएगी। , बजाय मेनू पर नीचे जाने के। मैंने इसे कुंजी का उपयोग करने के बजाय "स्टार" मेनू प्रविष्टि पर माउस क्लिक करने के लिए संशोधित किया, यह काफी अच्छी तरह से काम करता है। इससे पहले कि यह शुरू करने के लिए कम से कम किया गया था, तो मैं आपके द्वारा उपयोग की जा रही खिड़की पर वापस आने से पहले Spotify को छोटा करने के लिए इसे संपादित करता हूं।

^+*::
spotify = ahk_class SpotifyMainWindow
IfWinExist, %spotify%
{
WinGet, MMX, MinMax, %spotify%
;Store active window and mouse position.
WinGetActiveTitle, activeWindow
MouseGetPos x, y, winID

;Activate Spotify.
WinActivate %spotify%
WinWaitActive %spotify%

;Right click near the song title in the "Now Playing" box.
WinGetPos,  ,  ,  , spotifyHeight, %spotify%
MouseClick, Right, 100, spotifyHeight - 70, 1, 0

;Get the contents of the context menu.
WinWait, ahk_class #32768
SendMessage, 0x1E1      ; MN_GETHMENU
allContextMenuInfo := ErrorLevel

;The "Star" command is the 5th menu item.
;If the song is Unstarred the text is Star, and vice versa. But sometimes some wierd characters are included.
;The only reliable way I found is to check if the first letter is S.
menuText_StarUnstar := GetContextMenuItemText(allContextMenuInfo, 5)
StringGetPos, positionOfS, menuText_StarUnstar, S

;If S is the first letter, star the song.
notStarred := (%positionOfS% = 0)
If notStarred {
    ;Arrow down to the Star menu item and press enter.
    MouseClick, Left, 20, -120, 1, 0,, R
} Else {
    ;Just close the context menu.
    Send {Escape}
}

;Restore original window and mouse position.
IfEqual MMX, -1, WinMinimize, %spotify%
WinActivate ahk_id %winID%
MouseMove %x%, %y%
}

Return

;Context menu helper function.
GetContextMenuItemText(hMenu, nPos)
{
length := DllCall("GetMenuString"
        , "UInt", hMenu
        , "UInt", nPos
        , "UInt", 0 ; NULL
        , "Int", 0  ; Get length
        , "UInt", 0x0400)   ; MF_BYPOSITION
    VarSetCapacity(lpString, length + 1)
    length := DllCall("GetMenuString"
        , "UInt", hMenu
        , "UInt", nPos
        , "Str", lpString
        , "Int", length + 1
        , "UInt", 0x0400)
return lpString
}


0

समाधान जो वहां "स्टार" कमांड होने पर निर्भर करते हैं वे अब काम नहीं करते ... अब स्टार कमांड नहीं है, लेकिन "स्टारडेड" एक फ़ोल्डर आइटम है जिसे इसमें जोड़ा जा सकता है। यह स्क्रिप्ट ऐसा करती है।

; Spotify "Star Song"
^+*::
spotify = ahk_class SpotifyMainWindow
IfWinExist, %spotify%
{
;Store active window and mouse position.
WinGetActiveTitle, activeWindow
MouseGetPos x, y, winID

;Activate Spotify.
WinActivate %spotify%
WinWaitActive %spotify%

;Right click near the song title in the "Now Playing" box.
WinGetPos,  ,  ,  , spotifyHeight, %spotify%
MouseClick, Right, 100, spotifyHeight - 70, 1, 0

;Open Add To... sub-menu
Send {A}

;The "Starred" command is the 2nd menu item. If the song is Starred it will be disabled.
Send {Down}{Enter}

;Restore original window and mouse position.
WinActivate ahk_id %winID%
MouseMove %x%, %y%
}

Return

0

Spotify में अब "स्टार" नहीं है, और मैं संदर्भ मेनू की सामग्री को किसी भी अधिक प्राप्त नहीं कर सकता, इसलिए यह विधि संदर्भ मेनू में पिक्सेल रंग को देखती है और चयन करने के लिए तीर कुंजियों का उपयोग करती है। काम करता है अगर अधिकतम, कम से कम, और अगर एल्बम कला बड़ी या छोटी है।

^+*::
{
    spotify = ahk_class SpotifyMainWindow
    IfWinExist, %spotify% 
    {
        ;Store active window and mouse position.
        WinGet, MMX, MinMax, %spotify%
        WinGetActiveTitle, activeWindow
        MouseGetPos x, y, winID

        ;Activate Spotify.
        WinActivate %spotify%
        WinWaitActive %spotify%

        ;Get maximised status
        WinGet, isMaximised, MinMax

        ;Clear any context menus
        Send {Escape down}{Escape up}

        ;Right click near the song title in the "Now Playing" box.
        WinGetPos,  ,  ,  , spotifyHeight, %spotify%
        MouseClick, Right, 44, spotifyHeight - (isMaximised = 1 ? 75 : 66), 1, 0
        sleep 200
        MouseMove 10,0, ,R
        sleep 200

        ; Determine if the song is already added to your library or not
        ; Look at left edge of the 'S' in Save to Your Library
        ; or the 'R' in Remove from Your Library
        ; 0x282828 is the background color of the menu
        ; if the background color is not present then the song is not in your library
        PixelGetColor, pixelColor, 91, spotifyHeight - (isMaximised = 1 ? 129 : 119)
        if (pixelColor = 0x282828) {
            ;Move up to 'Save to Your Library' and hit enter
            loop, 1 {
                Send {Up down}
                sleep 50
                Send {Up up}
                sleep 50
            }
            Send {Enter down}
            sleep 50
            Send {Enter up}
            sleep 50
        } else {
            ; Already added, so close context menu
            Send {Escape down}
            sleep 50
            Send {Escape up}
            Sleep 50
        }

        ;Restore original window and mouse position.
        IfEqual MMX, -1, WinMinimize, %spotify%
        WinActivate ahk_id %winID%
        MouseMove %x%, %y%

    }
    Return
}
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.