LINUX.ORG.RU

conky+deadbeef: как следить за плеером?


0

1

Я скачал conky для DeaDBeeF, настроил, запустил. Красиво, да. Но я же не непрерывно слушаю музыку. А при остановленном или закрытом плеере conky демонстрирует мне nothing nothing nothing.

Можно ли сделать так, чтобы скрипт, запускающий коньки, следил за тем, запущен ли дедбиф, и, если не запущен, выбирал другой конфиг, в котором ничего не будет отображаться?

★★★

я сделал так

disable_auto_reload
alignment bottom_left
background no
border_width 1
cpu_avg_samples 2
default_color grey
default_outline_color black
default_shade_color black
draw_borders no
draw_graph_borders yes
draw_outline no
draw_shades no
use_xft yes
xftfont Terminus:size=11
gap_x 25
gap_y 25
double_buffer yes
net_avg_samples 2
no_buffers yes
out_to_console no
out_to_stderr no
extra_newline no
own_window yes
own_window_transparent yes
own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
own_window_type normal
stippled_borders 0
update_interval 1
uppercase no
use_spacer none
show_graph_scale no
show_graph_range no 
minimum_size 600 0
maximum_width 600
own_window_argb_visual yes
own_window_argb_value 255

TEXT
${if_running deadbeef-main}
Artist: ${exec deadbeef --nowplaying "%a"}
Album:  ${exec deadbeef --nowplaying "%b"}
Title:  ${exec deadbeef --nowplaying "%t"}
File:   ${exec deadbeef --nowplaying "%f"}
Time:   ${exec deadbeef --nowplaying "%e of %l"}
Volume: $mixerbar Master
${endif}
т.е. коньки сами видят - запущено мясо или нет
на этом скрине видно выхлоп http://ompldr.org/vOGJsZg/18.04.2011-18:17.png
З.Ы. да - в выхлопе хелпа мяса ничего про имя файла нет, но таки в сорсах есть :3

megabaks ★★★★
()
Ответ на: комментарий от megabaks

Спасибо!

Странно, но у меня при добавлении этого условия съезжает текст. Как будто сверху появилась лишняя строка. Поборол через voffset -23.

Итог:

# An album art conky for DeadBeef

background no
update_interval 1
cpu_avg_samples 2
net_avg_samples 2
double_buffer yes
no_buffers yes
text_buffer_size 1024
imlib_cache_size 0

own_window no
own_window_type override
own_window_transparent yes
own_window_hints undecorate,sticky,skip_taskbar,skip_pager,below

border_inner_margin 1
border_outer_margin 0

minimum_size 400 100
maximum_width 1000

alignment tl
gap_x 0
gap_y 0

# draw_shades yes
draw_shades no
draw_outline no
draw_borders no
draw_graph_borders no
default_shade_color 181818

use_xft yes
xftfont URW Gothic L:size=9
xftalpha 1.0
uppercase no
override_utf8_locale yes
# default_color ececec
default_color 000000

color1 606060

TEXT
${if_running deadbeef-main}
${voffset -23}${goto 100}${font Droid Sans:size=9}${execi 2 deadbeef --nowplaying "%t"}$font
${goto 100}${execi 2 deadbeef --nowplaying "%a"}
${goto 100}${execi 2 deadbeef --nowplaying "%b"}
${goto 100}${font URW Gothic L:size=8}${execi 2 deadbeef --nowplaying "%y"}$font
# ${goto 140}${font Droid Sans:size=8}${execi 1 deadbeef --nowplaying "%e"}${offset 2}/${offset 2}${execi 1 deadbeef --nowplaying "%l"}$font
${texeci 20 ~/.config/conky/db-cover.sh}${image ~/.config/conky/conkyCover.png}
${endif}

Ещё отличия от того, что по ссылке на гномлуке - я сделал top.png копией base.png, дабы не показывалась картинка с винилом (да, она красивая, но не вписалась бы в мою минималистичную систему). Можно было, конечно, изменить скрипт, создающий обложку, но я такого не умею, поэтому предпочёл забить гвозди микроскопом.

Выглядит всё вот так.

Смысл такого расположения - в том, чтобы название песни было видно при любом расположении окон (рабочий стол по бокам от короткой верхней панели никогда не перекрывается): вот так.

yahoo ★★★
() автор топика
Ответ на: комментарий от waker

ага - но я нашёл нужное в сорсах...хоть и случайно )

megabaks ★★★★
()
Ответ на: комментарий от waker

Спасибо за замечательный плеер!

yahoo ★★★
() автор топика
Ответ на: комментарий от yahoo

Всё-таки раскомментировал время проигрывания и закомментировал год, а также передвинул текст левей (95 вместо 100). Теперь вообще идеально.

yahoo ★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.