<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress.com" -->
<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/"
	>

<channel>
	<title>dcop &amp;laquo; WordPress.com Tag Feed</title>
	<link>http://wordpress.com/tag/dcop/</link>
	<description>Feed of posts on WordPress.com tagged "dcop"</description>
	<pubDate>Sun, 07 Sep 2008 09:22:33 +0000</pubDate>

	<generator>http://wordpress.com/tags/</generator>
	<language>en</language>

<item>
<title><![CDATA[SED, DCOP e outras coisas que só o Linux faz para você]]></title>
<link>http://qualquertecla.wordpress.com/?p=18</link>
<pubDate>Sat, 19 Jul 2008 05:27:14 +0000</pubDate>
<dc:creator>edsonpatricio</dc:creator>
<guid>http://qualquertecla.wordpress.com/?p=18</guid>
<description><![CDATA[Não costumo fazer guerra religiosa com sistemas operacionais. Sempre ouço falar das facilidades qu]]></description>
<content:encoded><![CDATA[<p>Não costumo fazer guerra religiosa com sistemas operacionais. Sempre ouço falar das facilidades que certos sistemas operacionais oferecem, e tenho que admitir que o Linux às vezes peca na usabilidade. Mesmo me considerando um usuário de Linux avançado, a instalação e configuração de um modem pode se tornar uma tarefas tortuosa. Mesmo assim, usar uma das <a href="http://distrowatch.com/dwres.php?resource=major" target="_blank">principais distribuições Linux</a>, para a grande maioria dos casos é fácil e agradável. Muitas coisas no Linux não são mais difíceis, só diferentes. O problema é que tolerar diferenças nunca foi uma das maiores virtudes naturais dos seres humanos.</p>
<p>Difícil ou fácil, o que faz o Linux assunto obrigatório para um profissional de Informática é tornar possível tarefas muito difíceis. A meu pedido recebo alguns boletos bancários em PDF (para evitar gasto de papel desnecesário), pago-os pelo sítio na Internet do banco que sou cliente. O código do boleto é algo como:</p>
<blockquote><p>23792.37205 66281.169319 11011.260004 1 00000000000000</p></blockquote>
<p>Não posso simplesmente copiar do boleto e cola no sítio do banco, por causa dos espaço e ponto. Preciso que quando o código for colado no sítio do banco vá sem pontos nem espaço, como:</p>
<blockquote><p>23792372056628116931911011260004100000000000000</p></blockquote>
<p>Em Shell posso fazer: <strong>echo '<span style="color:#808080;">23792.37205 66281.169319 11011.260004 1 00000000000000</span>' &#124; sed 's/<span style="color:#808080;">[\.&#124;[:space:]]</span>//g'</strong></p>
<p>A sintaxe do comando de substituição do <a href="http://aurelio.net/sed/" target="_blank">sed</a> é: <strong>s/<span style="color:#808080;"><em>RegexProcurada</em></span></strong><strong>/<em><span style="color:#808080;">ValorSubstitutivo</span></em></strong><strong>/</strong></p>
<p>O <strong>/g</strong> no final do comando faz com que todas as ocorrências que casam com a regex sejam substituída, não só a primeira. Podemos ler a regex usada como: casa com ponto ou espaço. Percebam que o  campo referente ao valor a ser substituído está vázio, i.e. o que casar com o padrão será substituído por nada (vazio). Sobre regex, vale apena ler o <a href="http://guia-er.sourceforge.net/" target="_blank">Expressões Regulares - Guia de Consulta Rápida</a> do <a href="http://aurelio.net/" target="_blank">Aurélio Marinho Jargas</a>. Entre outras coisa é bem divertido.</p>
<p>Agora, como gravar na área de transferência, depois ler da área de transferência, modificar o conteúdo e gravar o resultado na <strong></strong>área de transferência. É hora do milagre chamado <a href="http://en.wikipedia.org/wiki/DCOP" target="_blank">DCOP</a>. Com o uso desse protocolo do KDE podemos executar essa tarefa, através de um comando com o mesmo nome do protocolo. O primeiro passo é criar um script shell com os comandos requeridos.</p>
<p>[sourcecode language='cpp']</p>
<p>#!/bin/bash<br />
parselessString=`/opt/kde3/bin/dcop klipper klipper getClipboardContents`<br />
result=`echo $parselessString &#124; sed 's/[\.&#124;[:space:]]//g'`<br />
/opt/kde3/bin/dcop klipper klipper setClipboardContents $result</p>
<p>[/sourcecode]</p>
<p>Na primeira linha salvamos o conteúdo da área de transferência em uma variável chamada <span style="color:#000000;"><strong>parselessString</strong></span>. Na segunda, usamos a variável para que o <strong>sed</strong> possa agir no conteúdo e guardar o resultado em uma variável chamada <span style="color:#000000;"><strong>result</strong></span>. Na terceira, gravamos o conteúdo de volta à área de transferência.</p>
<p>Se dermos mais uma olhada na primeira linha, podemos ver que através do comando <strong>dcop,</strong> chamamos do módulos <span style="color:#000000;"><strong>klipper</strong></span> do <a href="http://en.wikipedia.org/wiki/Klipper" target="_blank">aplicativo <strong>klipper</strong></a>, um método chamado <span style="color:#000000;"><strong><span>getClipboardContents</span></strong></span>. Esse método retorna o conteúdo da área de transferência. Para gravar o resultado foi usada uma mecânica similar.</p>
<p>Falta ainda vencer um desafio. Como criar atalhos de teclado que de uma só vez copie o texto selecionado à área de transferência e acione o script. A resposta está nas <a href="http://docs.kde.org/kde3/pt_BR/kdebase/userguide/keys-for-scripts.html" target="_blank">Ações de entrada do KDE</a>, que podem ser acessadas chamando <a href="http://en.wikipedia.org/wiki/KControl" target="_blank">kcontrol</a>. Em geral podemos chegar até elas via o menu do botão principal, ou digitando <strong>kcontrol</strong> no console ou no <strong>Executar Comando</strong> (<strong>alt+f2</strong>). Uma vez no kcontrol (Configurações Pessoais), vá até <span class="guiitem"><span class="guilabel"><strong>Regional &#38; Acessibilidade</strong> e depois </span></span><span class="guiitem"><span class="guilabel"><strong>Ações de Entrada</strong>. </span></span>Basicamente temos que criar uma nova ação, dar um nome para ela, designar seu tipo como genérico, escolher o conjunto de teclas que serão gatinho para ação e finalmente acrescentar as duas ações propriamente ditas, que serão executadas ao pressionar-se as teclas gatilho. O acréscismo das ações propriamente ditas é feito com o botão <strong><span style="text-decoration:underline;">N</span>ovo</strong>. Precisamos de uma entrada de teclado (<strong>ctrl+c</strong>) e uma chamada a comando (executa o script). A entrada de teclado funciona como se o usuário tivesse digitado aquela seqüência de teclas, tendo o mesmo efeito da ação real.</p>
<p><span style='text-align:center; display: block;'><object width='425' height='350'><param name='movie' value='http://www.youtube.com/v/ivnx3tZ4XWY'></param><param name='wmode' value='transparent'></param><embed src='http://www.youtube.com/v/ivnx3tZ4XWY&rel=0' type='application/x-shockwave-flash' wmode='transparent' width='425' height='350'></embed></object></span></p>
<p>No exemplo que fiz com o atalho <strong>win+crtl+c</strong>, cópio para área de transfência o texto já modificado e com o <strong>crtl+v</strong> normal colo o resultado.</p>
<p style="text-align:center;">
]]></content:encoded>
</item>
<item>
<title><![CDATA[Будильник "amarok" :)]]></title>
<link>http://grigory.wordpress.com/?p=130</link>
<pubDate>Tue, 03 Jun 2008 09:09:03 +0000</pubDate>
<dc:creator>grigory</dc:creator>
<guid>http://grigory.wordpress.com/?p=130</guid>
<description><![CDATA[Вот без этого маленького трюка я бы просто не просыпал]]></description>
<content:encoded><![CDATA[<p>Вот без этого маленького трюка я бы просто не просыпался по утрам (или обедам):</p>
<p><img src="http://i31.tinypic.com/29ap5yg.png" alt="" width="673" height="260" /></p>
<p>Так что dcop не такая уж и плохая штука!</p>
<p><em><strong>Пояснение:</strong></em></p>
<blockquote><p>команда "dcop amarok player play" запускает проигрывание текущей песни в амароке. Т.е., выставляем будильник (KAlarm в данном случае, умеет выполнять консольные команды) на восемь утра, выбираем песню и оставляем амарок открытым - в 8 утра песня заиграет. Главное звук сделать громче :)</p></blockquote>
]]></content:encoded>
</item>
<item>
<title><![CDATA[KDE Shutdown, Logout, Restart]]></title>
<link>http://andrejserafim.wordpress.com/?p=21</link>
<pubDate>Fri, 16 May 2008 18:09:37 +0000</pubDate>
<dc:creator>Andrej Kazakov</dc:creator>
<guid>http://andrejserafim.wordpress.com/?p=21</guid>
<description><![CDATA[Inspired by this post.
It is interesting how simple specialised devices cope with their functions mu]]></description>
<content:encoded><![CDATA[<p>Inspired by <a href="http://http://makovey.objectis.net/Members/dimon/tech/tips/dcop_logout/view">this post</a>.</p>
<p>It is interesting how simple specialised devices cope with their functions much better than a all-in-one PC. Sometimes, I wish to fall asleep with some music on. But how annoying it becomes, when you have to get up in the middle of the night to turn off your PC, which has been playing something all this time. Digital radios have mastered the trick decades ago. Of course there is a way to make a PC do it.</p>
<p>Running linux, I thought that it should be fairly straightforward to shut it down after say half an hour automatically.</p>
<p>Something like shutdown (below) will kill the X. The KDE then will just exit without saving the session. Next time you log on, you will see some session from a distant past. If you do this often, it gets really annoying. Also this requires superuser privileges on some distributions.</p>
<p>[sourcecode language='ruby']<br />
/sbin/shutdown -h now "Power button pressed"<br />
# or<br />
halt<br />
[/sourcecode]</p>
<p>Then how to make KDE quit without calling any dialogs (I am sound asleep by this time and I can't afford to wake up and press 'OK')? There is a way.</p>
<p>[sourcecode language='ruby']<br />
dcop ksmserver ksmserver logout 0 2 2<br />
[/sourcecode]</p>
<p>The three numbers are explained below (see <a href="http://linux.derkeiler.com/Mailing-Lists/KDE/2006-09/msg00094.html">source</a>):</p>
<blockquote><p>
<strong>First parameter: confirm</strong><br />
Obey the user's confirmation setting: -1<br />
Don't confirm, shutdown without asking: 0<br />
Always confirm, ask even if the user turned it off: 1<br />
<strong>Second parameter: type</strong><br />
Select previous action or the default if it's the first time: -1<br />
Only log out: 0<br />
Log out and reboot the machine: 1<br />
Log out and halt the machine: 2<br />
<strong>Third parameter: mode</strong><br />
Select previous mode or the default if it's the first time: -1<br />
Schedule a shutdown (halt or reboot) for the time all active sessions have<br />
exited: 0<br />
Shut down, if no sessions are active. Otherwise do nothing: 1<br />
Force shutdown. Kill any possibly active sessions: 2<br />
Pop up a dialog asking the user what to do if sessions are still active: 3
</p></blockquote>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Obtener la carátula de un álbum de Amarok usando DCOP]]></title>
<link>http://javierarias.wordpress.com/?p=24</link>
<pubDate>Tue, 06 May 2008 11:17:11 +0000</pubDate>
<dc:creator>Javi</dc:creator>
<guid>http://javierarias.wordpress.com/?p=24</guid>
<description><![CDATA[Toda mi música la tengo organizada con Amarok y creando un programa para realizar un listado de mi ]]></description>
<content:encoded><![CDATA[<p>Toda mi música la tengo organizada con <a title="Web oficial de Amarok" href="http://amarok.kde.org/">Amarok</a> y creando un programa para realizar un listado de mi colección musical me encontré con el problema de cómo conseguir la carátula de un álbum. Obtener la carátula del disco que está sonando es trivial a través de la función <em><code>coverImage</code></em>, que puede ser llamada desde <a title="DCOP documentation" href="http://developer.kde.org/documentation/other/dcop.html">DCOP</a> y nos devuelve la ruta al fichero de la carátula:</p>
<blockquote><p><code>[javi@cydonia ~]$ dcop amarok player coverImage</code></p>
<p>/home/javi/.kde/share/apps/amarok/albumcovers/cache/130@9b9d5ef76774f4a3e13cf02f4cb90865</p></blockquote>
<p>El problema está cuando el disco no está sonando: no hay ninguna función disponible para pedir una carátula de un disco que esté en la colección, y tampoco hay un campo en la base de datos que indique cuál carátula corresponde a cuál álbum.</p>
<p>Amarok maneja las carátulas de la siguiente manera: las guarda en la carpeta <em><code>~/.kde/share/apps/amarok/albumcovers/large/</code></em> en <a title="Información del formato PNG en Wikipedia" href="http://es.wikipedia.org/wiki/Portable_Network_Graphics">formato PNG</a>, asignándole como nombre el md5sum de la concatenación en minúsculas del nombre del artista y del título del álbum. Así, al disco <a title="Información del disco  Around The Fur de Deftones en Wikipedia" href="http://en.wikipedia.org/wiki/Around_the_Fur">Around The Fur de Deftones</a> le corresponde el siguiente nombre de fichero:</p>
<blockquote><p><code>[javi@cydonia ~]$ echo -n "deftonesaround the fur"&#124;md5sum</code></p>
<p>e5f8534f07e607aad36b9c6f19a47187  -</p></blockquote>
<p>Su carátula, por tanto, estará ubicada en <em><code>~/.kde/share/apps/amarok/albumcovers/large/e5f8534f07e607aad36b9c6f19a47187</code></em></p>
<p>Volviendo al problema inicial de obtener las carátulas de los discos que estén en la colección de Amarok, con DCOP podemos ejecutar <a title="Información del lenguaje SQL en Wikipedia" href="http://es.wikipedia.org/wiki/SQL">consultas SQL</a> sobre la base de datos y, por lo tanto, es posible obtener todos los nombres de artistas y de álbumes. Y si tenemos esos datos podemos saber cuál es la carátula de cada álbum. Con la siguiente consulta SQL obtendremos todas las parejas <em>artista+disco</em> y <em>carátula</em>.</p>
<blockquote><p><code>SELECT DISTINCT CONCAT(artist.name, '-', album.name), CONCAT('~/.kde/share/apps/amarok/albumcovers/large/', MD5(LOWER(CONCAT(artist.name,album.name))))  FROM album, artist, tags WHERE album.id=tags.album AND artist.id=tags.artist</code></p></blockquote>
<p>Para ejecutar esa consulta usamos la función <em><code>query</code></em> mediante DCOP:</p>
<blockquote><p><code>[javi@cydonia ~]$ dcop amarok collection query "SELECT DISTINCT CONCAT(artist.name, '-', album.name), CONCAT('~/.kde/share/apps/amarok/albumcovers/large/', MD5(LOWER(CONCAT(artist.name,album.name))))  FROM album, artist, tags WHERE album.id=tags.album AND artist.id=tags.artist"</code></p>
<p>Serj Tankian-Elect The Dead Bonus CD<br />
~/.kde/share/apps/amarok/albumcovers/large/591398f2dc2aff74627f577fd53da4e3<br />
Linkin Park-Minutes To Midnight (Tour Edition)<br />
~/.kde/share/apps/amarok/albumcovers/large/6d3dbccad0c4d9ceddd818d29e0ac7f7<br />
Nirvana-Nevermind<br />
~/.kde/share/apps/amarok/albumcovers/large/e2555e3a3bcd47ecf9d84fdacb1462a0<br />
Linkin Park-Shadow Of The Day<br />
~/.kde/share/apps/amarok/albumcovers/large/fe8780583e43f9f5cdf473a8fc4daf84<br />
Linkin Park-Reanimation<br />
~/.kde/share/apps/amarok/albumcovers/large/0717ba640841ff84c52cf846397b1b1c</p></blockquote>
<p>Sencillo, ¿verdad? ;-)</p>
<p><em>Fuente: <a title="Amarok Forum" href="http://amarok.kde.org/forum/index.php">Amarok Forum</a>, <a title="Amarok Wiki" href="http://amarok.kde.org/wiki/Development">Amarok Wiki</a>, <a title="Ubuntu Forums" href="http://ubuntuforums.org/showthread.php?t=122475">Ubuntu Forums</a></em></p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Internet Hotkeys - Amarok dcop play/pause]]></title>
<link>http://raetsel.wordpress.com/?p=60</link>
<pubDate>Fri, 25 Apr 2008 20:36:46 +0000</pubDate>
<dc:creator>raetsel</dc:creator>
<guid>http://raetsel.wordpress.com/?p=60</guid>
<description><![CDATA[Well the solution to getting my Play/Pause button to actually work as a play/pause toggle was pretty]]></description>
<content:encoded><![CDATA[<p>Well the solution to getting my Play/Pause button to actually work as a play/pause toggle was pretty easy.</p>
<p>Amarok supports a playPause() method that is registered to the <a href="http://developer.kde.org/documentation/other/dcop.html">dcop</a> server so in my hotkeys.conf file the command for the Play button became</p>
<blockquote><p>dcop amarok player playPause</p></blockquote>
<p>dcop is the command line based client to talk to the dcop server, amarok is of course the application I want to talk to.</p>
<p>player is the section of the <a href="http://amarok.kde.org/">amarok</a> services and playPause is the function/method I want to call.</p>
<p>To find this out I used <a href="http://wiki.kde.org/tiki-index.php?page=Tips%20and%20Tricks&#38;pagenum=8">kdcop</a> the graphical interface and explored what it offered under the amarok application.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Configurando teclas especiales en KDE con DCOP]]></title>
<link>http://somnialeth.wordpress.com/?p=69</link>
<pubDate>Sun, 20 Apr 2008 22:44:15 +0000</pubDate>
<dc:creator>castarco</dc:creator>
<guid>http://somnialeth.wordpress.com/?p=69</guid>
<description><![CDATA[ACTUALIZACIÓN: Éste tutorial és&#8230; inútil, xD (salvo si se quieren aprender algunas cosillas]]></description>
<content:encoded><![CDATA[<p>ACTUALIZACIÓN: Éste tutorial és... inútil, xD (salvo si se quieren aprender algunas cosillas interesantes), la solución a los problemas que menciono és más sencilla que la expuesta en este tutorial, simplemente se tiene que instalar el paquete kmilo (o alguno que contenga el programa, dependiendo de qué distribución de Linux uséis).</p>
<p>Hará un tiempo mi portátil funcionaba bajo Debian Testing con KDE, en su momento lo configuré tan bien como pude y todo funcionaba de maravilla... hasta que el hardware se empezó a estropear (lo que le llevó a la muerte hará pocas semanas). Después de morir mi portátil fue transportado al cielo de los portátiles, junto con su Creador (HP) , allí se le dio una segunda oportunidad por haber sido tan bueno... y a los tres días resucitó.</p>
<p>El caso es que volvió a mis manos infectado con Windows (se lo contagiaron los otros ordenadores que no merecieron volver a la vida y todavía hoy permanecen en el purgatorio). A la semana conseguí curarlo con Debian Testing (KDE) pero parecía que algo no iba bién, seguía un poco acatarrado.</p>
<p>Por lo visto (no sé bien bien porqué) con la versión actual Testing de Debian han dejado de funcionar bien muchas cosas que antes iban como la seda: el sistema de sonido, y como no, el teclado (de ahí el título del artículo). Antes, configurar el teclado sólo consistía en tocar cuatro tonterías en los paneles de configuración de KDE (me parece que ya posteé hace tiempo sobre como hacerlo de esa manera). Ahora no es tan sencillo, y tenemos que currar un poco más (al menos en mi modelo HP Pavillion dv2104 eu).<br />
Iremos por pasos (nota, todo lo que ponga con comillas, vosotros ponedlo SIN comillas):</p>
<ol>
<li>Aplicamos el primer <a title="Configurar teclados especiales en KDE" href="http://somnialeth.wordpress.com/2007/04/09/configurando-teclas-especiales-en-portiles-hp-pavillion-dv2000/">mini-tutorial</a> (en mi caso todo funciona, pero Kmix no reconoce las teclas Mute, Subir Volumen y Bajar Volum, de ahí que esté haciendo este segundo mini-tutorial).</li>
<li>(Suponiendo que estamos en KDE) Vamos a Preferencias-&#62;Regional i accesibilidad-&#62;Introducir acciones.</li>
<li>Ahora crearemos una acción para Mute: Apretamos el botón 'Nueva acción'.</li>
<li>En el campo 'Nombre de la acción' ponemos lo que queramos (aunque estaría bien un nombre identificativo, por ejemplo 'Mute').</li>
<li>En el campo 'Tipo de la acción' escogemos la opción 'Acceso rápido de teclado -&#62; Llamada a DCOP (simple)'.</li>
<li>Vamos a la pestaña 'Acceso rápido de teclado'. Allí seleccionamos el botón que hay en medio y apretamos el botón especial Mute. (Esto sirve para indicar al programa con qué tecla asociaremos la acción).</li>
<li>Vamos a la pestaña 'Preferencias de llamada a DCOP'. Rellenenamos el campo 'Aplicación remota' con el valor 'kmix'. Rellanamos el campo 'Objeto remoto' con el valor 'Mixer0' (Hasta este paso todo se hace igual para Mute, Subir Volumen y Bajar Volumen, excepto con los nombres y las teclas asociadas, claro).</li>
<li>Para Mute el campo 'Función llamada' tomará el valor 'toggleMasterMute'. Para Subir Volumen el mismo campo tomará el valor 'increaseVolume' y para Bajar Volumen 'decreaseVolume'.</li>
<li>El campo 'Argumentos' no tomará ningún valor para Mute. Para Subir y Bajar Volumen tendremos que asegurarnos de cual es el valor apropiado. Ejecutamos en consola la siguiente instrucción para saberlo (la salida que nos dé será el número que queremos):<code><br />
dcop kmix Mixer0 masterDeviceIndex</code></li>
<li>Apretamos el botón 'Aplicar' y ya estamos :) .</li>
<li>Para casos superespeciales (no me ha pasado): cabe destacar que yo he utilizado Mixer0 a la ligera como 'Objeto remoto', pero ¿No podría haber Mixer1? Creo que sí, pero no debe ser muy usual. En todo caso nos podemos asegurar ejecutando el comando (Nos dará una lista de los valores aceptables para ese campo):<br />
<code>dcop kmix &#124; grep Mixer</code></li>
</ol>
<p>Espero que haya sido útil éste mini-tutorial. De hecho, creo que introduce también la idea de utilizar dcop para nuestros propios pequeños programas. Sin duda es una muy buena herramienta para intercomunicar programas.</p>
<p>Ala, hasta otra! :)</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Управление несколькими серверами посредством Konsole]]></title>
<link>http://devti.wordpress.com/?p=4</link>
<pubDate>Tue, 01 Apr 2008 18:56:50 +0000</pubDate>
<dc:creator>DevTi</dc:creator>
<guid>http://devti.wordpress.com/?p=4</guid>
<description><![CDATA[Иногда необходимо выполнить одни и теже разовые дейст]]></description>
<content:encoded><![CDATA[<p>Иногда необходимо выполнить одни и теже разовые действия на нескольких однотипных серверах. Как вариант - используем Konsole с одновременным вводом на все сеансы (закладки). Вручную открывать 21 сеанс (в моем случае) довольно утомительно, поэтому написал небольшой скрипт на bash'е для автоматизации открытия консолей всех нужных серверов.<br />
[sourcecode language='ruby']#!/bin/bash<br />
# Запускаем konsole с расширенными возможностями управления<br />
KONSOLE=$(dcopstart konsole-script)<br />
# Файл ~/servers содержит список серверов через пробелы<br />
for SERVER in `cat ~/servers`<br />
do<br />
    # Открываем новую вкладку (сессию) в Konsole<br />
    SESSION=$(dcop $KONSOLE konsole newSession)<br />
    # Переименовываем вкладку по имени сервера<br />
    dcop $KONSOLE $SESSION renameSession $SERVER<br />
    #Посылаем команду в сессию<br />
    dcop $KONSOLE $SESSION sendSession "ssh root@$SERVER"<br />
done<br />
#Закрываем первую (открытую по умолчанию) вкладку<br />
dcop $KONSOLE "session-1" closeSession[/sourcecode]<br />
P.S.: для изучения dcop-функций пригодится kdcop</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Jugando con DCOP, cambiando el fondo de pantalla]]></title>
<link>http://blog.chernando.eu/2007/12/05/dcop-kdesktop/</link>
<pubDate>Wed, 05 Dec 2007 20:23:39 +0000</pubDate>
<dc:creator>chernando</dc:creator>
<guid>http://blog.chernando.eu/2007/12/05/dcop-kdesktop/</guid>
<description><![CDATA[Si hacéis uso de la utilidad &#8220;Slide Show&#8221; de kdesktop para gestionar el fondo de pantal]]></description>
<content:encoded><![CDATA[<p>Si hacéis uso de la utilidad "Slide Show" de kdesktop para gestionar el fondo de pantalla puede que esta entrada os sea útil.</p>
<p>El problema radica es que una vez fijado el directorio del que elegir el fondo no se puede hacer un "pasa al siguiente". O al menos yo no lo he encontrado :-)</p>
<p>La posible solución era probar haciendo uso de DCOP y ha resultado tan sencillo... en fin, aquí tenéis el comando para forzar un avance dentro de la colección:</p>
<pre>$ dcop kdesktop KBackgroundIface changeWallpaper</pre>
]]></content:encoded>
</item>

</channel>
</rss>
