MOCP - Music On Console Player Сравнение версий

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
wiki:mocp [2011/09/14 11:10]
ПeтровичПeтровичПeтрович [Интеграция с conky]
wiki:mocp [2012/01/29 02:32] (текущий)
CitiЯenCitiЯenCitiЯenUbuntu Natty + OB [Интеграция с conky]
Строка 102: Строка 102:
 Для вывода строки с названием артиста и песни можно воспользоваться следующим скриптом. Не забудьте сделать файл исполняемым. Для вывода строки с названием артиста и песни можно воспользоваться следующим скриптом. Не забудьте сделать файл исполняемым.
 <code bash> <code bash>
-#​!/​bin/​bash ​ +#!/bin/bash
-# Переменная хранит разделитель между артистом и названием  +
-# Для радио это как правило ' - '  +
-temp=" - " ​+
  
-# Блок отвечает за формирование строк  +/tmp/mocp_popup.txt 
-# Если в воспроизводимом файле есть http://, значит проигрывается радио ​ +/tmp/mocp_state.txt
-if [ $(mocp -Q %file | grep http://) ]  +
-  then  +
-    # Если нет названия песни  +
-    if [ -z "​$(mocp -Q %song)"​ ]  +
-      then  +
-        # Выводим адрес с которого идет проигрывание  +
-        FIRST_LINE="​Playing Radio:"​  +
-        SECOND_LINE="​$(mocp -Q %file | sed '​s/​http:​\/​\///​g'​)"​  +
-      else  +
-        # Если название песни присутствует  +
-        SONG="​$(mocp -Q %song)"​  +
-        # Выводим артиста  +
-        FIRST_LINE="​${SONG%*$temp*}"​  +
-        # Выводим название  +
-        SECOND_LINE="​${SONG#​*$temp*}"​  +
-    fi  +
-  else  +
-    # Если воспроизводится не радио  +
-    if [ -z "​$(mocp -Q %song)"​ ]  +
-      then  +
-        # Выводим что тегов нет  +
-        FIRST_LINE="​Playing Music:"​  +
-        SECOND_LINE="​No Title"  +
-      else  +
-        # Выводим артиста  +
-        FIRST_LINE="​$(mocp -Q %artist)"​  +
-        # Выводим название  +
-        SECOND_LINE="​$(mocp -Q %song)"​  +
-    fi  +
-fi +
  
-#  Выводим строку  +Переменная хранит разделитель между артистом и названием 
-CONCAT="​$FIRST_LINE - $SECOND_LINE"​  +# Для радио это как правило ' - ' 
-echo $CONCAT+SEPARATOR="​ - " 
 + 
 +# Блок отвечает за формирование строк 
 +# Если в воспроизводимом файле есть http://, значит проигрыватся радио 
 +if [ $(mocp -Q %file | grep http://) ] 
 +  then 
 +    PLAYER="​Radio"​ 
 +    # Если нет названия песни 
 +    if [ -z "​$(mocp -Q %song)"​ ] 
 +      then 
 +        # Выводим ​адрес с которого идет проигрывание 
 +        FIRST_LINE="​RadioSite"​ 
 +        SECOND_LINE="​$(mocp -Q %file | sed '​s/​http:​\/​\///​g'​)"​ 
 +      else 
 +        # Если название песни присутствует 
 +        SONG="$(mocp -Q %song)"​ 
 +        # Выводим артиста 
 +        ​FIRST_LINE="​${SONG%*$SEPARATOR*}"​ 
 +        # Выводим название 
 +        SECOND_LINE="​${SONG#​*$SEPARATOR*}"​ 
 +    fi 
 +  else 
 +    # Если воспроизводится не радио 
 +    PLAYER="​MoC"​ 
 +    if [ -z "$(mocp -Q %song)"​ ] 
 +      then 
 +        # Выводим что тегов нет 
 +        FIRST_LINE="​No Title"​ 
 +        ​SECOND_LINE="No Title
 +      ​else 
 +        # Выводим артиста 
 +        FIRST_LINE="​$(mocp -Q %artist)"​ 
 +        # Выводим название 
 +        SECOND_LINE="​$(mocp -Q %song)"​ 
 +    fi 
 +fi 
 + 
 +NEWNAME="​$FIRST_LINE - $SECOND_LINE"​ 
 +NEWNAME="​$(echo $NEWNAME | sed '​s/​\&/​And/​g'​ | sed '​s/​\`//​g'​)"​ 
 +NEWSTATE="​$(mocp --info | grep State: | awk '​{print $2}'​)"​ 
 + 
 +if [ $NEWSTATE == STOP ]; then 
 +  exit 1 
 +fi 
 + 
 +# Выводим информацию в conky 
 +if [[ $NEWSTATE == "​PLAY"​ ]]; then 
 +  echo "​$PLAYER Play:" "​$NEWNAME"​ 
 +  else 
 +    echo "​$PLAYER Stop:" "​$OLDNAME"​ 
 +fi 
 + 
 +#​======================================== Всплывающие окна ============================================================= 
 +mocp -i > /dev/null 
 +if [ $? -eq 2 ];then 
 +  exit 2 
 +fi 
 + 
 +if [[ "​$OLDNAME"​ == "​$NEWNAME"​ ]]; then 
 +  if [[ "​$OLDSTATE"​ == "​$NEWSTATE"​ ]]; then 
 +    exit 1 
 +  fi 
 +fi 
 + 
 +# Выводим информацию в всплывающее окно 
 +if [[ $NEWSTATE == "​PLAY"​ ]]; then 
 +  notify-send --expire-time=2700 -i "/​usr/​share/​icons/​Humanity/​emblems/​48/​emblem-sound.png"​ "​$PLAYER Play:" "​$NEWNAME"​ 
 +  else 
 +    notify-send --expire-time=2700 -i "/​usr/​share/​icons/​Humanity/​emblems/​48/​emblem-sound.png"​ "​$PLAYER Stop:" "​$OLDNAME"​ 
 +fi 
 +  
 +echo OLDNAME=\"​$NEWNAME\"​ > /​tmp/​mocp_popup.txt 
 +echo OLDSTATE=\"​$NEWSTATE\"​ > /​tmp/​mocp_state.txt 
 +#​=======================================================================================================================
 </​code>​ </​code>​
 В конфигурационный файл **conky**, добавьте строку:​ В конфигурационный файл **conky**, добавьте строку:​