<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>A web-developer's blog &#187; Web Systems and Modifications</title>
	<atom:link href="http://blog.datamatrix-bg.net/category/web-systems-and-mods/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.datamatrix-bg.net</link>
	<description>Програмиране, линукс, хардуер и може би Аз :)</description>
	<lastBuildDate>Mon, 15 Jun 2009 10:20:43 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Amarok now playing with dcop</title>
		<link>http://blog.datamatrix-bg.net/2009/03/28/amarok-now-playing-with-dcop/</link>
		<comments>http://blog.datamatrix-bg.net/2009/03/28/amarok-now-playing-with-dcop/#comments</comments>
		<pubDate>Sat, 28 Mar 2009 19:46:44 +0000</pubDate>
		<dc:creator>DataMatrix</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Web Systems and Modifications]]></category>
		<category><![CDATA[amarok]]></category>
		<category><![CDATA[dcop]]></category>
		<category><![CDATA[now playing]]></category>

		<guid isPermaLink="false">http://blog.datamatrix-bg.net/?p=67</guid>
		<description><![CDATA[Нещо ме беше хванала пак тая муза дето ми се пишат разни странни кодове и по-точно човърках конфигурацията на conky &#8211; ~/.conkyrc и по едно време като гледах възможностите от разни други прейъри да взима информацията какво свири, но няма за амарок, реших да си го направя сам. Бях чувал от един познат (Пройнов) за [...]]]></description>
			<content:encoded><![CDATA[<p>Нещо ме беше хванала пак тая муза дето ми се пишат разни странни кодове и по-точно човърках конфигурацията на <a title="Conky system monitor" href="http://conky.sourceforge.net/" target="_blank">conky</a> &#8211; ~/.conkyrc и по едно време като гледах възможностите от разни други прейъри да взима информацията какво свири, но няма за амарок, реших да си го направя сам. Бях чувал от един познат (Пройнов) за скрипт на амарок, който обновява настроението в скайп, това може би ми беше първоначалната идея, но документацията на скайп за комуникация по dbus или друг подобен интерфейс е неекзистентна. Та реших, че конки ще казва какво дрънчи в амарок. Конфигурацията на конки изглежда ето така:</p>
<pre>background              no
update_interval         1.0
double_buffer           yes

use_xft                 no
xftfont                 Monospace:size=10
xftalpha                0.8

own_window              yes
own_window_transparent  yes
own_window_type         override
own_window_hints        undecorated,below,sticky,skip_taskbar,skip_pager
#on_bottom              yes

minimum_size            300 42
draw_shades             yes
draw_outline            yes
draw_borders            yes
draw_graph_borders      no
stippled_borders        0
border_margin           3
border_width            0

default_color           white
default_shade_color     black
default_outline_color   black

alignment               top_right
#gap_x                  362
gap_y                   30
#gap_y                  10

no_buffers              yes

TEXT
${alignc}${color #F09000}${nodename} [Ma26${kernel} ${machine}
${alignc}${time %R:%S %d.%m.%Y}
${color #707070}${hr}
${color #F09000}M${color #707070}:${color white} ${mem}${color #707070}/${color white}${memmax} ${color #F09000}S${color #707070}:${color white} ${swap}${color #707070}/${colorwhite}${swapmax}        ${color #F09000}P${color #707070}:${color white} ${running_processes}${color #707070}/${color white}${processes}
${color #707070}${hr}${color white}
${color #F09000}CPU0${color #707070}:${color white} ${cpu cpu0}% ${freq 1}MHz ${cpubar cpu0}
${color #F09000}CPU1${color #707070}:${color white} ${cpu cpu1}% ${freq 2}MHz ${cpubar cpu1}
${color #F09000}BAT${color #707070}:${color white} ${battery_percent}%  ${battery_bar}
${if_up wlan1}
${color #707070}${hr}
${alignc}${color F09000}Wireless${color #707070}:${color white} wlan1
${color #F09000}ESSID${color #707070}:${color white}  ${wireless_essid wlan1}
${color #F09000}Signal${color #707070}:${color white} ${wireless_link_bar wlan1}
${endif}${color #707070}${hr}
${color white}${scroll 50 ${execpi 1 /usr/bin/php ~/dev/amarok_now_playing.php</pre>
<p>Скрипта който вади данните от амарока е написан на php (в оригинал повечето са на перл). Използват се тръби (pipe) и функцията popen() (която е г/д една и съща и в перл и в php), която връща handle към съответната тръба. Имам инсталиран пакета php5-cli за да мога да изпълнявам php скриптове. Ето го кода:</p>
<pre class="brush: php;">&lt;?php error_reporting(E_ALL);

$commands=array();
$commands['player']=array();
$commands['player'][]='artist';
$commands['player'][]='title';
//$commands['player'][]='rating';
//$commands['player'][]='trackPlayCounter';
$commands['player'][]='currentTime';
$commands['player'][]='totalTime';

$type='player';

$results=array();
foreach($commands['player'] as $cmd)
{
/* Add redirection so we can get stderr. */
$handle = popen('dcop amarok '.$type.' '.$cmd, 'r');
//echo &quot;'$handle'; &quot; . gettype($handle) . &quot;\n&quot;;
$read = fread($handle, 2096);
$results[]=trim($read);
pclose($handle);
}
echo $results[0].' - '.$results[1].' '.$results[2].'/'.$results[3].' | ';
?&gt;</pre>
]]></content:encoded>
			<wfw:commentRss>http://blog.datamatrix-bg.net/2009/03/28/amarok-now-playing-with-dcop/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Шаренко за децата</title>
		<link>http://blog.datamatrix-bg.net/2009/01/09/%d1%88%d0%b0%d1%80%d0%b5%d0%bd%d0%ba%d0%be-%d0%b7%d0%b0-%d0%b4%d0%b5%d1%86%d0%b0%d1%82%d0%b0/</link>
		<comments>http://blog.datamatrix-bg.net/2009/01/09/%d1%88%d0%b0%d1%80%d0%b5%d0%bd%d0%ba%d0%be-%d0%b7%d0%b0-%d0%b4%d0%b5%d1%86%d0%b0%d1%82%d0%b0/#comments</comments>
		<pubDate>Fri, 09 Jan 2009 21:22:29 +0000</pubDate>
		<dc:creator>DataMatrix</dc:creator>
				<category><![CDATA[Web Systems and Modifications]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[highlight]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[код]]></category>
		<category><![CDATA[оцветяване]]></category>

		<guid isPermaLink="false">http://blog.datamatrix-bg.net/?p=9</guid>
		<description><![CDATA[Може би първото нещо, което забелязах че липсва в WordPress е бутонче &#8220;CODE&#8221; (имам предвид оцветяване на кода според езика, code бутон си има, но в обхвата на &#60;code&#62; не се обработват другите параметри и се оставя &#8220;както е&#8221;, като изключим замяната на специални символи по htmlspecialchars()). Оказа се, че тази функционалност не е заложена [...]]]></description>
			<content:encoded><![CDATA[<p>Може би първото нещо, което забелязах че липсва в WordPress е бутонче &#8220;CODE&#8221; (имам предвид оцветяване на кода според езика, code бутон си има, но в обхвата на &lt;code&gt; не се обработват другите параметри и се оставя &#8220;както е&#8221;, като изключим замяната на специални символи по <em><a target="_blank" href="http://php.net/htmlspecialchars">htmlspecialchars()</a></em>). Оказа се, че тази функционалност не е заложена по подразбиране и се постига след добавяне на &#8220;Plugin&#8221; (Добавка). 4ти резултат в <span style="color: #0000ff;">G</span><span style="color: #ff0000;">o</span><span style="color: #ffff00;">o</span><span style="color: #0000ff;">g</span><span style="color: #00ff00;">l</span><span style="color: #ff0000;">e</span> при търсене на &#8220;highlight php in wordpress&#8221; ме насочи към някакъв блог. Следвайки трохите стигнах до <a href="http://wordpress.org/extend/plugins/syntaxhighlighter/">http://wordpress.org/extend/plugins/syntaxhighlighter/</a><br />
И тъй като имам SSH (Secure SHell) достъп до сървъра, копирах пътя на архива (файла за сваляне). Преместих се в директорията на wordpress и от там отидох на<br />
<code>cd wp-content/plugins</code><br />
Последва<br />
<code>wget http://downloads.wordpress.org/plugin/syntaxhighlighter.zip</code><br />
wget е много удобен инструмент, чрез него може да теглите файлове от интернет през няколко различни протокола, без да имате графична среда или някакъв текстов browser.<br />
Разархивирането също е досадно лесно:<br />
<code>unzip syntaxhighlighter.zip</code><br />
Ако нямате unzip може да си го инсталирате (в случай, че имате имате администраторски права)<br />
<code>sudo apt-get install unzip</code><br />
<em>Забележка: аз използвам debian базирана дистрибуция. Синтаксисът при други дистрибуции, като Slackware или Fedora може да се различава</em><br />
След тази операция аз обичам да махам архива (<code>rm syntaxhighlighter.zip</code>)<br />
Сега е момента да влезете в администраторския панел на блога, раздел Plugins-&gt;Installed и да активирате добавката.</p>
<p>Ако обаче нямате директен достъп до сървъра, може да си изтеглите архива чрез линк-а по-горе и да отидете на Plugins-&gt;Add New, където има <strong>Install a plugin in .zip format</strong> (за тези, които не са разбрали, това значи <strong>инсталиране на добавка от zip архив</strong>), като там натискате Browse/Избери или каквото е бутончето след кутийката и си намирате zip архива който сте изтеглили. След това отивате в секция installed и активирате добавката. Може да изглежда сложно, но всъщност може да се направи за около 20-30 секунди.</p>
<style type="text/css">
.bar .tools a,a:visited { color: navy; }
</style>
<pre class="brush: php;">&lt;?php
    echo &quot;test&quot;;
?&gt;</pre>
<p>ПП: Наложи се да редактирам <strong>wp-content/plugins/syntaxhighlighter/files/SyntaxHighlighter.css</strong> и да променя фона (background-color: gray;) на <strong>.dp-highlighter .tools</strong> и <strong>.dp-highlighter ol</strong>, защото стиловете на темата правеха елементите нечетими.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.datamatrix-bg.net/2009/01/09/%d1%88%d0%b0%d1%80%d0%b5%d0%bd%d0%ba%d0%be-%d0%b7%d0%b0-%d0%b4%d0%b5%d1%86%d0%b0%d1%82%d0%b0/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
