Меню

Как изменить цвет foobar2000



foobar2000

Инструменты пользователя

Инструменты сайта

Содержание

Создание цветовой схемы

В этой главе мы добавим цветовую раскраску к нашей текстовой информации. Мы разработаем структуру нашей цветовой схемы таким образом, чтобы упростить добавление дополнительных наборов цветов. В результате для добавления нового цветового набора будет достаточно определить все необходимые цвета лишь в одном месте.

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

Определение цветов.

Перейдите к вкладке Globals в разделе Playlist view настроек Columns UI и выберите вкладку Variables. Здесь уже есть несколько наших строчек: код для определения альбомных трэков. Теперь добавьте туда эти строки:

Вам уже должна быть знакома функция $set_global , которая определяет глобавльные переменные для всего дизайна. Для того чтобы определить наши цвета, мы используем эту функцию в сочетании с $rgb() . $Rgb() в качестве аргументов принимает 3 числа, соответствующие красному, зеленому и синему компонентам цвета. Это обычный метод определения цветов в модели RGB. Внизу окна ввода, возле кнопки Tools, есть кнопка … , которая вызывает стандартный диалог Windows для выбора цветов.

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

cTxtStd : Цвет обычного текста. Т.к. 255 это максимальное возможное значение для каждого из цветовых компонентов, то (255,255,255) означает ярко-белый цвет.

cTxtSel : Цвет выделенного текста. Используется для отображения выделенных в плэйлисте строк.

cTxtTrk : Цвет текста в столбце Track . Черный. Для этого столбца будет использоваться светло-серый цвет фона (см. ниже), поэтому белый цвет текста здесь неуместен. Так же мы будет использовать этот цвет для первых пяти строк в столбце Album/Artist .

cTxtVA , cTxtVA1 , cTxtVAPlay : Цвет текста для имен исполнителей в столбце Track . Мы будем использовать его при отображении сборников различных исполнителей, когда столбец Track будет содержать так же и имя исполнителя. Этот цвет будет служить для визуального различения имени исполнителя и названия композиции. Как Вы уже заметили, в этих строках функции $rgb() имеют шесть аргументов, не пугайтесь, это обычный способ определения двух цветов за один раз. Первые три аргумента определяют цвет текста, вторая тройка аргументов определяет цвет выделенного текста. В нашем случае это темно-красный для обычного текста и ярко-красный для выделенного текста. В следующих главах мы рассмотрим различия между этими тремя переменными.

cTxtDim : Светло-серый цвет текста для неяркого отображения нулей в столбце с номером трэка.

cTxtPlay : Цвет текста, используемый для подсветки текущей проигрываемой композиции. Он понадобится нам только в следующей главе.

Это следующая часть нашего скрипта, определяющая цвета фона. Также вставьте эти строки в окно Variables.

cBgStd : Стандартный цвет для фона. Черный.

cBgSel : Цвет фона для выделенных строк. Тот же темно-красный что и cTxtVA .

cBgTrk : Это уже упомянутый нами выше светло-серый цвет фона для столбца Track .

cBgAlt : Альтернативный темно-серый цвет фона. Мы будем использовать его для одной фишки, по которой сходит с ума очень много народу: чередование цветных строчек в плэйлисте, на манер iTunes.

Читайте также:  Как вернуть натуральный цвет волос после перекиси

cBgPlay : Умеренно-серый цвет фона для подсветки текущей проигрываемой композиции. Так же как и cTxtPlay понадобится нам только в следующей главе.

Эта строка задает умеренно-красный в качестве цвета рамок, которые являются границами ячейки плэйлиста. Если Вы разделите строки плэйлиста столбцами, то получите набор из ячеек, подобный тому что Вы видите в программах табличной обработки (напр. Excel). Каждая сторона такой ячейки может иметь цветную рамочку. Мы будем использовать эту возможность для рисования границ между альбомами.

Создание глобального цветового скрипта

Переключитесь на вкладку Style. Здесь мы введем цветовой скрипт, который будет применяться ко всем столбцам.

Команда для установки цветов называется $set_style() . В первую очередь определим с помощью нее цвета текста.

pre class = «code» > $set_style( b > text / b > ,$get_global(cTxtStd), b > $get_global(cTxtSel) / b > ) / pre >

Параметр text сообщает Foobar2000 о том что эти цвета нужно использовать в качестве цветов для текста. Затем мы используем наши глобальные переменные для получения значений цветов для обычного (cTxtStd) и выделенного текста (cTxtSel). В следующем шаге мы устанавливаем цвета фонов.

pre class = «code» > font color = «#808080» > $set_style(text,$get_global(cTxtStd),$get_global(cTxtSel)) / font > $set_style(back ,$ifequal($mod(%_playlist_number%,2),0,$get_global(cBgStd),$get_global(cBgAlt)) ,$get_global(cBgSel) ) / pre >

Принцип такой же как и в предыдущем примере. Мы используем back для того чтобы указать, что мы устанавливаем цвета фонов, и затем указываем значения цветов, по аналогии с предыдущим примером, это цвета фона для обычного и выделенного текста. Будьте внимательны при разбивке команд $set_style() на несколько строк, как в этом примере. Запятая обязательно должна находиться в начале строки!

C помощью длинной строки, включающей в себя выражение $ifequal() , мы достигаем эффекта чередующихся цветных строк a-la iTunes в плэйлисте. Посмотрим на нее более внимательно.

pre class = «code» > font color = «#808080» > $set_style(back / font > ,$ifequal( b > $mod(%_playlist_number%,2) / b > ,0, $get_global(cBgStd), $get_global(cBgAlt)) font color = «#808080» > ,$get_global(cBgSel) / font > ) / pre >

Мы не может узнать цвет фона предыдущей строки из-за того, что Tagz работает по принципу «строчка за строчкой». Поэтому единственный способ идентифицировать определенную строку в плэйлисте это использовать %playlist_number% , который просто считает строчки сверху вниз.

Вместо того чтобы сказать Используй другой цвет, нежели на предыдущей строке мы используем номер строки и говорим Используй черный для всех строк с четными номерами и темно-серый для строк с нечетными номерами. Результат получаем идентичный.

Мы можем определить четность или нечетность номера строки, используя функцию $mod(x,y) , которая делит x на y и возвращает остаток от деления. Например, 11 поделенное на 2 равно 5 и остаток равен 1, поэтому $mod(11,2) вернет 1. Деля номер строки на 2 и смотря на остаток, мы можем сказать четная строка или нет.

$Ifequal() сравнивает равен ли остаток от деления нулю — что справедливо для четных чисел — и устанавливает цвет фона в cBgStd (черный). В противном случае (для нечетных строк) цвет фона будет темно-серым ( cBgAlt ).

И этим мы завершаем наш глобальный цветовой скрипт. Все остальное будет сделано с помощью корректировок в отдельно взятых столбцах. Но перед этим нам нужно установить несколько других глобальных значений.

Перейдите на вкладку Colours and Fonts и измените оба шрифта в секции Fonts на Franklin Gothic Medium, 9pt (или на любой другой, который Вас больше устраивает). Затем поставьте галочку Use custom colours и для Background установите черный. Это гарантирует нам что когда в плэйлитсте будет всего несколько трэков, то цвет остальной части плэйлиста будет черный.

Читайте также:  Какие икринки цветом у рыбы

Здесь же установите галочку Use custom active item frame и установите этот цвет в черный. Этот значение определяет цвет рамки вокруг текущего выбранного элемента плэйлиста, и обычно (если явно не определено) это инвертированный цвет фона, что смотрелось бы очень некрасиво в нашем дизайне.

Столбец Artist/Album

Вернитесь на вкладку Columns, выберите столбец Artist/Album и активируйте вкладку Style. Это место для определения цветового скрипта, так же как и вкладка Globals, но скрипт определенный здесь будет применятся только к указанному столбцу. И снова нам не нужно полностью определять цветовую схему, потому что Fooobar2000 автоматически применяет глобальные значения для всех значений цветов которые мы не указали явно.

С первого взгляда цветовой скрипт для этого столбца кажется достаточно сложным. И, конечно же, нам предстоит много чего сделать в этом столбце. Снова посмотрим на скриншот законченного дизайна. Вот что нам нужно реализовать в столбце Artist/Album :

Первая часть скрипта позаботиться от цветах текста и фона.

Сейчас Вам уже должны быть знакомы используемые здесь функции, поэтому я буду краток. $Ifgreater() берет заботу о альбомных трэках начиная с 5-го. Часть иначе этого выражения содержит вызов функции $ifequal() для определения первого трэка. Значения цветов одинаковые для обоих случаев, что в общем то делает возможным реализовать это в одном выражении $if() , но приведенный здесь вариант легче читать и редактировать.

Ну и завершение последние два вызова $set_style() задают серый цвет фона для трэков со второго по четвертый

Вторая часть скрипта определяет все необходимые рамки.

pre class = «code» > font color = «#808080» > $if($get_global(isAlbum), i > [. ] / i > / font > // Рамка сверху и снизу $ifequal(%tracknumber%,1, $set_style(frame-top,1,$get_global(cFrmStd)), $ifequal(%tracknumber%,5, $set_style(frame-bottom,1,$get_global(cFrmStd)), $ifequal(%tracknumber%,%album tracks%, $set_style(frame-bottom,1,$get_global(cFrmStd)), ))) // Рамка справа $ifgreater(%tracknumber%,5, $set_style(frame-right,1,$get_global(cFrmStd)) ,) ) / pre >

Три первые $ifequal() определяют первый, пятый и последний трэк альбома и устанавливают цвет рамки. Используемый здесь вызов $set_style() немного отличается оттого, что мы использовали ранее для задания цвета текста и фона. В общем виде он выглядит так:

pre class = «code» > $set_style( i > часть рамки / i > , i > вклвыкл / i > , i > цвет / i > ) / pre >

Часть рамки — указывает на положение границы и может принимать одно из этих значений: frame-left , frame-right , frame-top или frame-bottom .

Вклвыкл равен либо 1, что для показа этой стороны рамки, либо 0, в этом случае сторона рамки не рисуется и следующий параметр (цвет) пропускается.

Цвет — конечно же определяет цвет рамки.

Как Вы помните, мы не определили цвета рамок в глобальном цветовом скрипте, поэтому нам не нужно явно выключать ненужные нам рамки (т.к. они не указаны в глобальном скрипте, то они выключены по умолчанию). Поэтому нам достаточно просто включить те рамки, которые нам необходимы. Выражение $ifgreater() рисует рамку справа для всех трэков, начиная с 5-го

Наконец-то мы закончили с альбомами. Последняя строка задаст цвета для одиночных трэков. Вот скрипт целиком:

pre class = «code» > font color = «#808080» > $if($get_global(isAlbum), // Цвет текста/фона $ifgreater(%tracknumber%,4, $set_style(text,$get_global(cTxtStd),$get_global(cTxtStd)) $set_style(back,$get_global(cBgStd),$get_global(cBgStd)) , $ifequal(%tracknumber%,1, $set_style(text,$get_global(cTxtStd),$get_global(cTxtStd)) $set_style(back,$get_global(cBgStd),$get_global(cBgStd)) , $set_style(text,$get_global(cTxtTrk),$get_global(cTxtTrk)) $set_style(back,$get_global(cBgTrk),$get_global(cBgTrk)) )) // Рамка сверху и снизу $ifequal(%tracknumber%,1, $set_style(frame-top,1,$get_global(cFrmStd)), $ifequal(%tracknumber%,5, $set_style(frame-bottom,1,$get_global(cFrmStd)), $ifequal(%tracknumber%,%album tracks%, $set_style(frame-bottom,1,$get_global(cFrmStd)), ))) // Рамка справа $ifgreater(%tracknumber%,5, $set_style(frame-right,1,$get_global(cFrmStd)) ,) / font > , // — для одиночных трэков $set_style(frame-right,1,$get_global(cFrmStd)) ) / pre >

Читайте также:  Какие любимые цвета у индиго

Источник

Как настроить Foobar2000, а точнее поменять шкурки?

На самом деле не всё так плохо, как кажется на первый взгляд.
Достаточно произвести пару нехитрых манипуляций и всё изменится в лучшую сторону.

1. Для смены внешнего вида заходим в “View” → ”Layout” → ”Quick setup”.

2. В открывшемся окне нам предоставляется возможность подкорректировать вывод нужной нам информации в плеере.

Перебираем все возможные комбинации панелей и цветов, изменения происходят в реальном времени, что позволяет наглядно увидеть результат наших действий.

3. После этого перетягиваем панели управления на наше усмотрение вверху главного окна плеера.

4. Затем ставим флажок в “View” → ”Layout” → ”Enable layout editing mode” — это позволит нам выбрать контент каждой секции плеера (плейлисты, эквалайзеры, меню. ). Для этого наводим на любую секцию плеера и жмём правую кнопку мышки. В контекстном меню клик на “Replace UI Element”. В появившемся окне выбираем нужный нам элемент.

После этих настроек плеер уже имеет человеческий вид и не пугает пользователя интерфейсом.
Вот что у меня получилось:

Лучше, чем было, правда же?

Ну а для тех, кому этого мало, в интернете есть огромное количество скинов, которые подойдут самому придирчивому пользователю.

Они устанавливаются сбрасыванием содержимого в папку плеера, после этого запускаем плеер и в настройках “File” → ”Preference” открываем пункт ”Display” и настраиваем сброшенные скины.
Или же из этого самого пункта ”Display” в подпапках интерфейса делаем импорт имеющихся тем.

Источник

Как поменять шкурки в Foobar2000

Вообще не совсем все плохо, как выглядит на первый взгляд. Всего лишь нужно произвести пару простых действий и всё повернется в лучшую сторону.

1. Смены вида, схема следующая в “View” — ”Layout” — ”Quick setup”.

2. В появившимся окне нам мы можем подкорректировать вывод необходимой нам информации в проигрывателе.

Перебираем все комбинации цветов и панелей, изменения в реальном времени, благодаря чему вы наглядно увидеть результат.

3. Далее перетягиваем панели на наш вкус вверху окна проигрывателя.

4. Далее ставим флаг в “View” — ”Layout” — ”Enable layout editing mode” – данное действие позволит нам выбрать материал каждой части проигрывателя (эквалайзеры, плейлисты, меню. ). Т.е. наведем на любую часть проигрывателя и нажимаем правую кнопку мыши. В меню кликаем на “Replace UI Element”. В выскочившем окне жмен на необходимый элемент.

После этого настроек проигрыватель уже имеет приемлемый вид и совершенно не пугает юзера интерфейсом. Ниже что у меня вышло:

Лучше, чем было ведь?

А для тех, этого мало, в сети имеется большое количество скинов, которые понравятся самому разному пользователю.

Они ставятся сбрасыванием внутренностей в папку проигрывателя, далее запускаем проигрыватель и в меню “File” — ”Preference” нажимаем ”Display” и тщательно настраиваем сброшенные вид. Или же из пункта ”Display”, а именно в подпапках интерфейса производим импорт имеющихся тем.

Источник