<?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>Agile on Rails &#187; Ruby on Rails</title>
	<atom:link href="http://blog.siverti.com.br/category/ruby-on-rails/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.siverti.com.br</link>
	<description>Liberte-se, Comunique-se, Desenvolva-se</description>
	<lastBuildDate>Tue, 11 May 2010 13:12:18 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>DEB package for Gmate</title>
		<link>http://blog.siverti.com.br/2009/03/02/deb-package-for-gmate/</link>
		<comments>http://blog.siverti.com.br/2009/03/02/deb-package-for-gmate/#comments</comments>
		<pubDate>Mon, 02 Mar 2009 17:15:44 +0000</pubDate>
		<dc:creator>alexandre</dc:creator>
				<category><![CDATA[Desenvolvimento]]></category>
		<category><![CDATA[Gedit]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ruby on Rails]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[tecnologia]]></category>

		<guid isPermaLink="false">http://blog.siverti.com.br/?p=236</guid>
		<description><![CDATA[I had debianized the Gmate Package, so now you can download and install it in your Ubuntu as a DEB package. Note that it Depends of pyton-pywebkit that is included in Ubuntu 8.10. if you want to install in a previous Ubuntu release you will need to install Python Webkit Manually. You can download the [...]]]></description>
			<content:encoded><![CDATA[<p>I had debianized the Gmate Package, so now you can download and install it in your Ubuntu as a DEB package.</p>
<p>Note that it Depends of pyton-pywebkit that is included in Ubuntu 8.10. if you want to install in a previous Ubuntu release you will need to install Python Webkit Manually.</p>
<p>You can download the package <a href="http://cloud.github.com/downloads/lexrupy/gmate/gedit-gmate_0.9-ubuntu1_all.deb">direct from github.com</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.siverti.com.br/2009/03/02/deb-package-for-gmate/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Rails footnotes suporte completo para linux</title>
		<link>http://blog.siverti.com.br/2008/11/29/rails-footnotes-suporte-completo-para-linux/</link>
		<comments>http://blog.siverti.com.br/2008/11/29/rails-footnotes-suporte-completo-para-linux/#comments</comments>
		<pubDate>Sat, 29 Nov 2008 18:10:18 +0000</pubDate>
		<dc:creator>alexandre</dc:creator>
				<category><![CDATA[Desenvolvimento]]></category>
		<category><![CDATA[Gedit]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Rails Footnotes]]></category>
		<category><![CDATA[Ruby on Rails]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[tecnologia]]></category>
		<category><![CDATA[Footnotes]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[textmate]]></category>

		<guid isPermaLink="false">http://blog.siverti.com.br/?p=210</guid>
		<description><![CDATA[(See this post in english) Eu acabei de corrigir alguns bugs no plugin Rails Footnotes e agora temos suporte completo para Ubuntu Linux  (Deveria funcionar em outras distros também, porém apenas usando o Gnome e o Gedit são suportados até agora). Agora você poderá abrir qualquer arquivo listado nos stack traces exibidos no browser (Firefox) [...]]]></description>
			<content:encoded><![CDATA[<p>(<a href="http://blog.siverti.com.br/2008/11/29/rails-footnotes-full-linux-support-footnotes-for-linux/">See this post in english</a>)</p>
<p>Eu acabei de corrigir alguns bugs no plugin Rails Footnotes e agora temos suporte completo para Ubuntu Linux  (Deveria funcionar em outras distros também, porém apenas usando o Gnome e o Gedit são suportados até agora).</p>
<p>Agora você poderá abrir qualquer arquivo listado nos stack traces exibidos no browser (Firefox) além de obter todos os demais benefícios dos Footnotes no final de suas páginas durante o desenvolvimento.</p>
<p>Veja os screenshots para ter uma idéia dos benefícios:</p>
<p><a href="http://blog.siverti.com.br/wp-content/uploads/2008/11/footnotes1.png"><img class="alignnone size-full wp-image-204" title="Footnotes Filters" src="http://blog.siverti.com.br/wp-content/uploads/2008/11/footnotes1.png" alt="Footnotes Filters" width="637" height="430" /></a></p>
<p>Na imagem acima estamos mostrando a cadeia de filtros (Filter chain) do controller atual, mas podemos facilmente abrir o arquivo do controller, view, layout, estilos, javascripts direto no Gedit apenas clicando em um link, e, podemos também ver os Selects executados no banco de dados, log, Informações do ambiente, logs, routes e muito mais.</p>
<p><a href="http://blog.siverti.com.br/wp-content/uploads/2008/11/footnotes2.png"><img class="alignnone size-full wp-image-205" title="Footnotes Stack Trace" src="http://blog.siverti.com.br/wp-content/uploads/2008/11/footnotes2.png" alt="Footnotes Stack Trace" width="639" height="440" /></a></p>
<p>Na imagem acima estamos vendo um stack trace, então ao clicar em um dos links criados pelo plugin Footnotes, o Gedit já abre tal arquivo com o cursor posicionado corretamente sobre a linha onde o erro ocorreu.</p>
<p>Você pode fazer o download do plugin com suporte para linux <a href="http://github.com/lexrupy/rails-footnotes/tarball/master">aqui (Github master tree)</a></p>
<p>Para obter instruções sobre o processo de instalação, veja o arquivo README que está no pacote do plugin ou acesse a <a href="http://github.com/lexrupy/rails-footnotes">Página do projeto</a> no Github.</p>
<p>Você pode também ler mais sobre este plugin no meu <a href="http://blog.siverti.com.br/2008/10/16/rails-footnotes-para-geditlinux">primeiro post</a> sobre ele, e ainda assistir a um pequeno screencast mostrando sua funcionalidade.</p>
<p><object width="400" height="300"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=2017669&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=2017669&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"></embed></object><br /></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.siverti.com.br/2008/11/29/rails-footnotes-suporte-completo-para-linux/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Rails footnotes full linux support (footnotes for linux)</title>
		<link>http://blog.siverti.com.br/2008/11/29/rails-footnotes-full-linux-support-footnotes-for-linux/</link>
		<comments>http://blog.siverti.com.br/2008/11/29/rails-footnotes-full-linux-support-footnotes-for-linux/#comments</comments>
		<pubDate>Sat, 29 Nov 2008 17:56:22 +0000</pubDate>
		<dc:creator>alexandre</dc:creator>
				<category><![CDATA[Desenvolvimento]]></category>
		<category><![CDATA[Gedit]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Rails Footnotes]]></category>
		<category><![CDATA[Ruby on Rails]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[tecnologia]]></category>
		<category><![CDATA[Footnotes]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[textmate]]></category>

		<guid isPermaLink="false">http://blog.siverti.com.br/?p=203</guid>
		<description><![CDATA[(Ver este artigo em português) I have just fixed some issues on Rails Footnotes plugin, and now we have full support for Ubuntu linux (this should work with other distros too, but only Gedit and Gnome are supported for now. Now you can open any files listed on stack trace, and get all bennefits of [...]]]></description>
			<content:encoded><![CDATA[<p>(<a href="http://blog.siverti.com.br/2008/11/29/rails-footnotes-suporte-completo-para-linux">Ver este artigo em português</a>)</p>
<p>I have just fixed some issues on Rails Footnotes plugin, and now we have full support for Ubuntu linux (this should work with other distros too, but only Gedit and Gnome are supported for now.</p>
<p>Now you can open any files listed on stack trace, and get all bennefits of Footnotes just bellow your pages during development.</p>
<p>Se the screenshots to get an Idea of beneffits:</p>
<p><a href="http://blog.siverti.com.br/wp-content/uploads/2008/11/footnotes1.png"><img class="alignnone size-full wp-image-204" title="Footnotes Filters" src="http://blog.siverti.com.br/wp-content/uploads/2008/11/footnotes1.png" alt="Footnotes Filters" width="628" height="424" /></a></p>
<p>In image above we are showing the Filters chain of current controller, but we can easily, open the controller, view, layout, styles or javascripts files in Gedit by just one click in the link, and we can also see the database queries performed, log, Environment, Routes and much more.</p>
<p><a href="http://blog.siverti.com.br/wp-content/uploads/2008/11/footnotes2.png"><img class="alignnone size-full wp-image-205" title="Footnotes Stack Trace" src="http://blog.siverti.com.br/wp-content/uploads/2008/11/footnotes2.png" alt="Footnotes Stack Trace" width="622" height="427" /></a></p>
<p>In the image above we are seeing a stack trace, then we clicked on  a link created by Footnotes plugin, and Gedit just opened that file and switched the cursor to the correct line.</p>
<p>You can download the  plugin with linux support directly from <a href="http://github.com/lexrupy/rails-footnotes/tarball/master">here (Github master tree)</a></p>
<p>To get instructions about installation process point to README file on package or go to Footnotes <a href="http://github.com/lexrupy/rails-footnotes">Project Page</a> on Github</p>
<p>You can also read more about this plugin on <a href="http://blog.siverti.com.br/2008/10/16/rails-footnotes-para-geditlinux">my first post</a> about it (In Portuguese), and also watch a little screencast showing the plugin in action.</p>
<p><object width="400" height="300"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=2017669&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=2017669&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"></embed></object><br /></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.siverti.com.br/2008/11/29/rails-footnotes-full-linux-support-footnotes-for-linux/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Ruby on Rails 2.2 is out!</title>
		<link>http://blog.siverti.com.br/2008/11/23/ruby-on-rails-22-is-out/</link>
		<comments>http://blog.siverti.com.br/2008/11/23/ruby-on-rails-22-is-out/#comments</comments>
		<pubDate>Sun, 23 Nov 2008 22:08:16 +0000</pubDate>
		<dc:creator>alexandre</dc:creator>
				<category><![CDATA[Desenvolvimento]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Ruby on Rails]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[tecnologia]]></category>

		<guid isPermaLink="false">http://blog.siverti.com.br/?p=192</guid>
		<description><![CDATA[Depois de bastante espectativa, a Nova versão do Ruby on Rails (2.2) foi liberada para uso em produção. Muitas melhorias foram incluídas nesta versão, como Thread Safety, Transactional Migrations, Internacionalização (i18n) e compatibilidade com a próxima versão do Ruby (1.9). Saiba mais em: Site Oficial, Rails Guides, O que Ha de novo, por Carlos Brando]]></description>
			<content:encoded><![CDATA[<p>Depois de bastante espectativa, a Nova versão do Ruby on Rails (2.2) foi liberada para uso em produção.</p>
<p>Muitas melhorias foram incluídas nesta versão, como Thread Safety, Transactional Migrations, Internacionalização (i18n) e compatibilidade com a próxima versão do Ruby (1.9).</p>
<p>Saiba mais em: <a href="http://weblog.rubyonrails.org/2008/11/21/rails-2-2-i18n-http-validators-thread-safety-jruby-1-9-compatibility-docs">Site Oficial</a>, <a href="http://guides.rubyonrails.org/">Rails Guides</a>, <a href="http://www.nomedojogo.com/category/rails-22/">O que Ha de novo, por Carlos Brando</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.siverti.com.br/2008/11/23/ruby-on-rails-22-is-out/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Rails Footnotes para Gedit/Linux</title>
		<link>http://blog.siverti.com.br/2008/10/16/rails-footnotes-para-geditlinux/</link>
		<comments>http://blog.siverti.com.br/2008/10/16/rails-footnotes-para-geditlinux/#comments</comments>
		<pubDate>Thu, 16 Oct 2008 17:00:36 +0000</pubDate>
		<dc:creator>alexandre</dc:creator>
				<category><![CDATA[Gedit]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Ruby on Rails]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[ruby]]></category>

		<guid isPermaLink="false">http://blog.siverti.com.br/?p=134</guid>
		<description><![CDATA[O usuários do Mac e do Textmate contam com alguns benefícios quando se desenvolve em Rails, visto que boa parte dos desenvolvedores do Rails, inclusive do core-team utilizam esta plataforma e editor de texto. em busca de melhorar a experiência dos usuários linux fui verificar a possibilidade de portar mais um plugin bastante interessante, o [...]]]></description>
			<content:encoded><![CDATA[<p>O usuários do Mac e do Textmate contam com alguns benefícios quando se desenvolve em Rails, visto que boa parte dos desenvolvedores do Rails, inclusive do core-team utilizam esta plataforma e editor de texto. em busca de melhorar a experiência dos usuários linux fui verificar a possibilidade de portar mais um plugin bastante interessante, o rails-footnotes.<br />
Este plugin oferece algumas funcionalidades bem interessantes, e uma das funcionalidades que eu acho mais útil é que ele transforma o backtrace de um erro exibido do browser em links, onde você pode clicar, e o editor de texto abrirá o arquivo listado no trace posicionando o cursor na linha indicada, facilitando e muito na hora de seguir o rastro de um bug.<br />
No momento a única funcionalidade que eu portei, foi o backtrace, quem sabe no futuro eu verifique a possibilidade de portar mais funcionalidades<br />
Assim que sobrar um tempinho vou solicitar ao <a href="http://github.com/drnic">drnic</a> para dar um merge das alterações que eu realizei no plugin para que todos possam ter acesso, por enquanto você pode instalar o plugin através do meu <a href="http://github.com/lexrupy/rails-footnotes">fork no github</a></p>
<p>Para instalar o plugin em sua aplicação rails faça o seguinte:</p>
<pre>script/plugin install http://github.com/lexrupy/rails-footnotes.git vendor/plugins/footnotes</pre>
<p>para que o plugin funcione no Gedit é necessário instalar o url-handler para que o navegador saiba que um link apontando para <em>txmt://open?file=&#8230;.</em> tenha que abrir o arquivo na linha x. para isso faça o seguinte logo após a instalação normal do plugin:</p>
<pre>cd vendor/plugins/footnotes
sh linux_install.sh</pre>
<p>Este processo de instalação precisa ser realizado apenas uma vez, então depois que você instalar o plugin no seu linux na primeira vez, poderá apenas executar a primeira etapa para quaisquer outra aplicação que desejar.</p>
<p>Note que para instalar você precisa ter em mãos sua senha do sudo.</p>
<p>Para quem não conheçe a suite de plugins para melhorar a usabilidade do gedit com aplicações Rails<a href="http://blog.siverti.com.br/gmate/"> clique aqui</a></p>
<p>Veja um pequeno vídeo do plugin em funcionamento:</p>
<p><object width="400" height="300"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=2017669&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=2017669&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"></embed></object><br /></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.siverti.com.br/2008/10/16/rails-footnotes-para-geditlinux/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Gedit Modelines</title>
		<link>http://blog.siverti.com.br/2008/10/03/gedit-modelines/</link>
		<comments>http://blog.siverti.com.br/2008/10/03/gedit-modelines/#comments</comments>
		<pubDate>Fri, 03 Oct 2008 15:39:13 +0000</pubDate>
		<dc:creator>alexandre</dc:creator>
				<category><![CDATA[Gedit]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Ruby on Rails]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[tecnologia]]></category>
		<category><![CDATA[modelines]]></category>

		<guid isPermaLink="false">http://blog.siverti.com.br/?p=114</guid>
		<description><![CDATA[Tabulações, Espaços, Nível de tabulação, etc, todas estas configurações no gedit são manuais, você precisa ir no menu Editar, Preferências e encontralas para modificar o comportamento certo? Errado Existe um plugin chamado &#8220;modelines&#8221; que tenho certeza que muita gente já viu lá na lista de plugins mas não sabe para que serve. bem vamos a [...]]]></description>
			<content:encoded><![CDATA[<p>Tabulações, Espaços, Nível de tabulação, etc, todas estas configurações no gedit são manuais, você precisa ir no menu Editar, Preferências e encontralas para modificar o comportamento certo?</p>
<p><span style="color:#ff0000;"><strong>Errado</strong></span></p>
<p>Existe um plugin chamado &#8220;modelines&#8221; que tenho certeza que muita gente já viu lá na lista de plugins mas não sabe para que serve. bem vamos a uma breve explicação:</p>
<p>Alguns editores de texto, como o Vim, Emacs e até mesmo o Kate, suportam um recurso com este nome, que nada mais é que incluir uma linha no arquivo em edição para definir o modo de operação sobre este arquivo mode-line.</p>
<p>antes a definição mínima:</p>
<p>&#8220;ShiftWidth é a quantidade de espaços que são inseridos para cada TAB&#8221;</p>
<p>&#8220;TabStop é a quantidade de espaços que um TAB vai ocupar na visualização&#8221;</p>
<p>vejamos um exemple de modeline do vim:</p>
<pre># vim:set ts=4 sw=4 noexpandtab:</pre>
<p>que significa:</p>
<p>defina o tabstop para 4 e o shiftwidth para 4 e não expanda os tabs para espaços.</p>
<p>podemos utilizar esta mesma linha no gedit com o plugin modeline ativado.</p>
<p>um exemplo para arquivos ruby seria:</p>
<pre># vim:set ts=2 sw=2 expandtab nowrap textwidth=80</pre>
<p>ou seja, estamos definindo para trocar tabs por espaços utilizando um tabstop/shiftwidth de 2 caracteres, não queremos que ele quebre as linhas e queremos a régua de texto na posição 80 caracteres.</p>
<p>um exemplo para python seria algo como:</p>
<pre># vim:set ts=4 sw=4 expandtab nowrap textwidth=80</pre>
<p>basicamente a mesma coisa só que com um tabstop/shiftwidth de 4 caracteres.</p>
<p>experimente colocando esta linha no início do seu arquivo e ir modificando ela e vendo os resultados automaticamente.</p>
<p>esta linha funciona no gedit para qualquer linguagem, basta estar presente no arquivo nas primeiras 3 linhas em um comentário. o aconselhável é você utilizar o plugin de snippets(trechos) para criar um header para cada tipo de arquivo que você utiliza, onde você pode além desta informação colocar a licença de uso etc etc&#8230; a criatividade é sua.</p>
<p>Não deixe de conferir meu <a href="http://blog.siverti.com.br/gmate/">set de plugins</a> para tornar o gedit uma &#8220;Rails IDE&#8221;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.siverti.com.br/2008/10/03/gedit-modelines/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Exended Ruby Syntax For Gedit and GtkSourceview2</title>
		<link>http://blog.siverti.com.br/2008/10/02/exended-ruby-syntax/</link>
		<comments>http://blog.siverti.com.br/2008/10/02/exended-ruby-syntax/#comments</comments>
		<pubDate>Thu, 02 Oct 2008 17:54:53 +0000</pubDate>
		<dc:creator>alexandre</dc:creator>
				<category><![CDATA[Desenvolvimento]]></category>
		<category><![CDATA[Gedit]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Ruby on Rails]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[tecnologia]]></category>
		<category><![CDATA[gtksourceview2]]></category>
		<category><![CDATA[plugin]]></category>

		<guid isPermaLink="false">http://blog.siverti.com.br/?p=88</guid>
		<description><![CDATA[Some months ago since I started using jEdit I also started improving the gtksouceview language definition for ruby and Rails code for use with Gedit, because in most of cases Gedit is faster than jEdit, Now I have some improvements to show. I used as base for show improvements some screenshots that I made from [...]]]></description>
			<content:encoded><![CDATA[<p>Some months ago since I started using jEdit I also started improving the gtksouceview language definition for ruby and Rails code for use with Gedit, because in most of cases Gedit is faster than jEdit, Now I have some improvements to show.<br />
I used as base for show improvements some screenshots that I made from <a href="http://railscasts.com">Railscasts</a>, so I got some episodes that have the &#8220;little things&#8221; I&#8217;ve changed.<br />
This first is a screnshot of Railscasts <a href="http://railscasts.com/episodes/33-making-a-plugin">Episode 33</a>, here we can see the function name properly highlighted and also some Rails specific methods. We can compare the Gedit Screenshot to TextMate screenshot and see that all:</p>
<p><a href="http://alexandredasilva.wordpress.com/files/2008/09/gedit_33.png"><img class="alignnone size-medium wp-image-90" title="gedit_33" src="http://blog.siverti.com.br/wp-content/uploads/2008/09/gedit_33.png?w=300" alt="" width="501" height="396" /></a></p>
<p><a href="http://alexandredasilva.wordpress.com/files/2008/09/railscasts_episode33.png"><img class="alignnone size-medium wp-image-79" title="railscasts_episode33" src="http://blog.siverti.com.br/wp-content/uploads/2008/09/railscasts_episode33.png?w=300" alt="" width="501" height="376" /></a></p>
<p>Here we have a rhtml (html.erb) shippet from <a href="http://railscasts.com/episodes/37-simple-search-form">Episode 37</a>, all tags are highighted properly, including xml markup and erb markup &#8220;&lt;%= %&gt;&#8221;:</p>
<p><a href="http://alexandredasilva.wordpress.com/files/2008/09/gedit_35.png"><img class="alignnone size-medium wp-image-80" title="gedit_37" src="http://blog.siverti.com.br/wp-content/uploads/2008/09/gedit_37.png?w=300" alt="" width="501" height="443" /></a></p>
<p><a href="http://blog.siverti.com.br/wp-content/uploads/2008/09/railscasts_episode37.png"><img class="alignnone size-medium wp-image-81" title="railscasts_episode37" src="http://blog.siverti.com.br/wp-content/uploads/2008/09/railscasts_episode37.png?w=300" alt="" width="501" height="376" /></a></p>
<p>In this (<a href="http://railscasts.com/episodes/62-hacking-activerecord">Episode 62</a>) we have a classmethod correctly highlighed (here I prefered to let &#8220;self&#8221; keyword in the same color of methodname, but is possible to change in future), and the method definitions including method names ending with ?, ! (= signal in the first screenshot):</p>
<p><a href="http://alexandredasilva.wordpress.com/files/2008/09/gedit_62.png"><img class="alignnone size-medium wp-image-84" title="gedit_62" src="http://blog.siverti.com.br/wp-content/uploads/2008/09/gedit_62.png?w=300" alt="" width="501" height="443" /></a></p>
<p><a href="http://blog.siverti.com.br/wp-content/uploads/2008/09/railscasts_episode62.png"><img class="alignnone size-medium wp-image-85" title="railscasts_episode62" src="http://blog.siverti.com.br/wp-content/uploads/2008/09/railscasts_episode62.png?w=300" alt="" width="501" height="376" /></a></p>
<p>And last an example of string interpolation (<a href="http://railscasts.com/episodes/69-markaby-in-helper">Episode 69</a>), that already exists in original language definition but doesn&#8217;t work(I don&#8217;t know exactly why), the approach of original attemp is to change the context of string back to main context, by this way the code &#8220;should&#8221; be highlighted as normal ruby code, and in theory could be other interopated strings in many levels, but, that doesn&#8217;t work and I changed to just colorize (I mean this should be the default and correct way) and interpolation is highlighted properly:</p>
<p><a href="http://blog.siverti.com.br/wp-content/uploads/2008/09/gedit_69.png"><img class="alignnone size-large wp-image-86" title="gedit_69" src="http://blog.siverti.com.br/wp-content/uploads/2008/09/gedit_69.png?w=500" alt="" width="500" height="417" /></a><a href="http://alexandredasilva.wordpress.com/files/2008/09/railscasts_episode69.png"><img class="alignnone size-large wp-image-87" title="railscasts_episode69" src="http://blog.siverti.com.br/wp-content/uploads/2008/09/railscasts_episode69.png?w=500" alt="" width="500" height="375" /></a></p>
<p>You can download a package I made, containing some useful plugins, code snippets and<br />
the language definition. this pack is very useful also if you just installed linux (I use ubuntu) and need quick setup to a Rails development environment</p>
<p>The package also include Extract partial plugin and a Smart indent plugin</p>
<p>How to install.</p>
<p>download the package <a href="http://github.com/lexrupy/gmate/tarball/master">here</a> in some place<br />
open a terminal go to the place of download and type</p>
<pre>$tar -zxvf [name of downloaded tarball]
$./install.sh</pre>
<p><strong><span style="color:#ff0000;">WARNING: <span style="color:#000000;">Some commands need sudo password, so you will be asked.</span></span></strong></p>
<p>Open gedit chose your preferred color, enable your preferred plugins and enjoy.<br />
(The package also include the <a href="http://blog.siverti.com.br/gedit-todo-list-plugin/">TODO-List plugin</a> and you will need to follow plugin README to install)</p>
<p><a href="http://blog.siverti.com.br/gmate/">Gmate Project Page</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.siverti.com.br/2008/10/02/exended-ruby-syntax/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>Notificações de testes (Novidades)</title>
		<link>http://blog.siverti.com.br/2008/06/15/notificacoes-de-testes-novidades/</link>
		<comments>http://blog.siverti.com.br/2008/06/15/notificacoes-de-testes-novidades/#comments</comments>
		<pubDate>Sun, 15 Jun 2008 22:21:13 +0000</pubDate>
		<dc:creator>alexandre</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Ruby on Rails]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[tecnologia]]></category>
		<category><![CDATA[autotest]]></category>
		<category><![CDATA[ZenTest]]></category>

		<guid isPermaLink="false">http://blog.siverti.com.br/?p=65</guid>
		<description><![CDATA[Mesmo os testes automatizados rodando perfeitamente com as nofitificações libnotify do gnome eu ainda não fiquei sossegado, afinal aquela mensagem ali na parte de baixo da tela (me lembrando os tempos de windows) não estava muito ao meu agrado, além de que segundos após a mensagem some e não há outro modo a não ser [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.siverti.com.br/wp-content/uploads/2008/06/autotest.png"><img class="aligncenter size-full wp-image-66" src="http://blog.siverti.com.br/wp-content/uploads/2008/06/autotest.png" alt="" width="484" height="161" /></a></p>
<p>Mesmo os testes automatizados rodando perfeitamente com as nofitificações libnotify do gnome eu ainda não fiquei sossegado, afinal aquela mensagem ali na parte de baixo da tela (me lembrando os tempos de windows) não estava muito ao meu agrado, além de que segundos após a mensagem some e não há outro modo a não ser ir até o console para verificar o que havia acontecido (não que seja algo ruim, pois eu particularmente prefiro trabalhar sempre com a janela do editor não cobrindo a tela toda e ter o final da saida da linha de comando de um shell sempre visível). Pesquisando um pouquinho mais sobre o assunto dos testes automatizados e notificações encontrei <a href="//www.ikhono.net/2007/12/16/gnome-autotest-notifications">este post</a>, falando sobre o <a href="http://ruby-libnotify.rubyforge.org/">ruby-libnotify</a>. Hum, vejamos, no post original o autor sugere que instalemos os seguintes componentes via apt-get:</p>
<p><code>ruby-gnome2 build-essential ruby1.8-dev libnotify-dev.</code></p>
<p>O detalhe é apenas que a biblioteca ruby-gnome2 (ao menos no Ubuntu) instala toda a parafernalha do <a href="http://ruby-gnome2.sourceforge.jp/">Ruby/GTK</a>, coisa que aparentemente não precisamos, uma vez que vamos dar um simples <code> require 'gtk2' </code> em nosso arquivo de configurações. Lendo os comentários do post havia um que dizia que o arquivo gtk2.rb pertencia à biblioteca libgtk2-ruby1.8 (que é instalada juntamente com o restante da parafernalha por ser um requisito da ruby-gnome2). Note que a instalação da libgtk2-ruby1.8 também vai instalar bastante dependências, mas acredito que sejam aproximadamente a metade dos pacotes.</p>
<p>Vamos a instalação e configuração:</p>
<p>primeiro, abra um terminal e vamos aos comandos.</p>
<p><code>$ sudo apt-get install libgtk2-ruby1.8 build-essential ruby1.8-dev libnotify-dev</code></p>
<p>ele vai instalar todas as dependências, mas são todos pacotes pequenos<br />
Agora você vai precisar do pacote <a href="http://ruby-libnotify.rubyforge.org/ruby-libnotify-0.3.3.tar.bz2">ruby-libnotify</a>, baixar e instalar com os comandos:</p>
<p><code>$ wget -c http://rubyforge.org/frs/download.php/27134/ruby-libnotify-0.3.3.tar.bz2<br />
$ tar -jxvf ruby-libnotify-0.3.3.tar.bz2<br />
$ cd ruby-libnotify-0.3.3<br />
$ ruby extconf.rb &amp;&amp; make &amp;&amp; sudo make install</code></p>
<p>Isso roda a configuração, compila e instala a extensão.</p>
<p>agora você precisa de uma versão modificada do arquivo .autotest do <a href="http://blog.siverti.com.br/2008/05/09/notificacoes-de-testes-outra-vez/">post anterior</a>: (<a href="http://pastie.org/215234">baixe aqui</a> se tiver problemas com as aspas)</p>
<p><code> </code></p>
<pre>#!/usr/bin/env ruby
#
# Copyright (c) 2007 Thomas Weibel,

#
# This program is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by the
# Free Software Foundation; either version 2 of the License, or (at your
# option) any later version.

require 'rnotify'
require 'gtk2'

module Autotest::RNotify
  class Notification
    attr_accessor :verbose, :image_root, :tray_icon, :notification,
    :image_pass, :image_pending, :image_fail

    def initialize(timeout = 5000,
                   image_root = "#{ENV['HOME']}/.autotest_images" ,
                   verbose = false)
      self.verbose = verbose
      self.image_root = image_root

      puts 'Autotest Hook: loading Notify' if verbose
      Notify.init('Autotest') || raise('Failed to initialize Notify')

      puts 'Autotest Hook: initializing tray icon' if verbose
      self.tray_icon = Gtk::StatusIcon.new
      tray_icon.icon_name = 'face-monkey'
      tray_icon.tooltip = 'RSpec Autotest'

      puts 'Autotest Hook: Creating Notifier' if verbose
      self.notification = Notify::Notification.new('X', nil, nil, tray_icon)
      notification.timeout = timeout

      Thread.new { Gtk.main }
      sleep 1
      tray_icon.embedded? || raise('Failed to set up tray icon')
    end

    def notify(icon, tray, title, message)
      notification.update(title, message, nil)
      notification.pixbuf_icon = icon
      tray_icon.tooltip = "Last Result: #{message}"
      tray_icon.icon_name = tray
      notification.show
    end

    def passed(title, message)

      self.image_pass ||= Gdk::Pixbuf.new("#{image_root}/pass.png", 48,48)
      notify(image_pass, 'face-smile', title, message)
    end

    def pending(title, message)
      self.image_pending ||= Gdk::Pixbuf.new("#{image_root}/pending.png",48,48)
      notify(image_pending, 'face-surprise', title, message)
    end

    def failed(title, message)
      self.image_fail ||= Gdk::Pixbuf.new("#{image_root}/fail.png", 48,48)
      notify(image_fail, 'face-sad', title, message)
    end

    def quit
      puts 'Autotest Hook: Shutting Down...' if verbose
      #Notify.uninit
      Gtk.main_quit
    end
  end

  Autotest.add_hook :initialize do |at|
    @notify = Notification.new
  end

  Autotest.add_hook :ran_command do |at|
    results = at.results.last

    unless results.nil?
      # Test::Unit
      if results.include? 'tests'
        output =
          results[/(\d+)\s+tests?,\s*(\d+)\s+assertions?,\s*(\d+)\s+failures?(,\s*(\d+)\s+errors)?/]
        if output
          failures = $~[3].to_i + $~[5].to_i
        end
      # RSpec
      else
        output =
          results[/(\d+)\s+examples?,\s*(\d+)\s+failures?(,\s*(\d+)\s+pending)?/]
        if output
          failures = $~[2].to_i
          pending = $~[4].to_i
        end
      end

      if failures &gt; 0
        @notify.failed("Tests Failed", output)
      elsif pending &gt; 0
        @notify.pending("Tests Pending", output)
      else
        unless at.tainted
          @notify.passed("All Tests Passed", output)
        else
          @notify.passed("Tests Passed", output)
        end
      end
    end
  end

  Autotest.add_hook :quit do |at|
    @notify.quit
  end
end</pre>
<p>opcionalmente você pode baixar diretamente do post do autor, um <a href="http://ikhono.net/assets/2007/12/16/autotest-libnotify.zip">arquivo zip</a> contendo o .autotest e as imagens<br />
não esqueça que o arquivo deve ficar dentro de sua pasta HOME</p>
<p><img style="vertical-align:middle;" src="http://thelucid.com/files/fail.png" alt="autotest images" width="154" height="154" /><img style="vertical-align:middle;" src="http://thelucid.com/files/pending.png" alt="autotest images" width="154" height="154" /><img style="vertical-align:middle;" src="http://thelucid.com/files/pass.png" alt="autotest images" width="154" height="154" /></p>
<p>as Imagens utilizadas foram baixadas <a href="http://www.thelucid.com/articles/2007/07/30/autotest-growl-fail-pass-smilies">daqui</a>. para utilizar com o script acima, baixe as imagens e descompacte dentro de um diretório chamado .autotest_images dentro de sua pasta HOME</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.siverti.com.br/2008/06/15/notificacoes-de-testes-novidades/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Crie diagramas dos seus projetos Rails</title>
		<link>http://blog.siverti.com.br/2008/06/01/crie-diagramas-dos-seus-projetos-rails/</link>
		<comments>http://blog.siverti.com.br/2008/06/01/crie-diagramas-dos-seus-projetos-rails/#comments</comments>
		<pubDate>Sun, 01 Jun 2008 02:02:04 +0000</pubDate>
		<dc:creator>alexandre</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Ruby on Rails]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[RailRoad]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[ruby]]></category>

		<guid isPermaLink="false">http://blog.siverti.com.br/?p=57</guid>
		<description><![CDATA[A documentação de projetos é algo importante, coisa que normalmente os desenvolvedores acabam deixando de lado, mas quando se está trabalhando com um projeto Rails, a documentação do banco de dados e dos controllers fica bastante facilitada, utilizando um utilitário chamado RailRoad. o RailRoad pode gerar os seguintes diagramas: Diagramas de modelos (MER), mostrando tanto [...]]]></description>
			<content:encoded><![CDATA[<p>A documentação de projetos é algo importante, coisa que normalmente os desenvolvedores acabam deixando de lado, mas quando se está trabalhando com um projeto Rails, a documentação do banco de dados e dos controllers fica bastante facilitada, utilizando um utilitário chamado <a href="http://railroad.rubyforge.org/">RailRoad</a>.</p>
<p>o RailRoad pode gerar os seguintes diagramas:</p>
<ul>
<li>Diagramas de modelos (MER), mostrando tanto a hierarquia de classes(herança) como as associações existentes no smodelos.  é possível também escolher se quer ou não exibir informações sobre colunas e sobre os tipos de dados utilizados.</li>
<li>Diagramas dos controllers, mostrando a hierarquia de classes (herança). É possível incluir os métosos, inclusive agrupados pela visibilidade (publicos, privados, protegidos)</li>
<li>E para quem usa o plugin &#8220;<a href="http://agilewebdevelopment.com/plugins/acts_as_state_machine">acts_as_state_machine</a>&#8221;  gera também os diagramas de estado.</li>
</ul>
<p>o RailRoad utiliza o <a href="http://www.graphviz.org/">Graphviz</a> para gerar imagens dos modelos</p>
<p>Para instalar o RailRoad no linux (Ubuntu) siga os seguintes passos:<br />
<code><br />
$sudo apt-get install graphviz<br />
$sudo gem install railroad</code></p>
<p>- Ignore o primeiro comando se voce já tiver o graphviz instalado.<br />
- para outras distribuições, verifique se o graphviz está no gerenciador de pacotes e instale-o<br />
- Para windows obtenha o graphviz <a href="http://www.graphviz.org/Download_windows.php">aqui</a>.</p>
<p>Exemplos diretamente do site do RailRoad:</p>
<p><strong>Diagrama de modelo:</strong></p>
<p><img style="border:0 none;margin:0;" src="http://railroad.rubyforge.org/diagrams/depot_models_full.png" alt="Diagrama de modelo" width="365" height="397" /></p>
<p><strong>Diagrama de controllers:</strong><br />
<img src="http://railroad.rubyforge.org/diagrams/depot_controllers_full.png" alt="Diagrama de controllers" width="466" height="634" /></p>
<p>você pode ver mais exemplos diretamente no site: <a href="http://railroad.rubyforge.org/">http://railroad.rubyforge.org/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.siverti.com.br/2008/06/01/crie-diagramas-dos-seus-projetos-rails/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
