Feb 03
Há dias eu tenho buscado uma solução para exportar códigos ou trechos deles para HTML. O objetivo é mostrar posteriormente dicas com o código colorido, para melhor identificar os elementos. Existem alguns javascripts que transformam o código através de varredura por uma marcação com determinada classe, porém este é extremamente lento. Foi então que vi que com editores como o Vim, conforme mostra o Eustáquio Rangel em seu blog. Desde então fiquei entusiasmado para utilizar o mesmo recurso no emacs, que com certeza não iria perder para o vim neste recurso. Descobri que existe uma função lisp do emacs que faz isto, é a htmlize, que permite exportar um arquivo inteiro, um trecho do arquivo, vários arquivos entre outros. Para utilizar este recurso é simples: M-x htmlize (ALT + X e digite htmlize) aperte tab para ver todos os recursos disponíveis e selecione o recurso que deseja. Um exemplo de trecho código de um controller do Ruby on Rails exportado com o tema Gray30 do emacs:
  # PUT /comments/1
  # PUT /comments/1.xml
  def update
    @comment = Comment.find(params[:id])

    respond_to do |format|
      if @comment.update_attributes(params[:comment])
        flash[:notice] = 'Comment was successfully updated.'
        format.html { redirect_to comment_url(@comment) }
        format.xml  { head :ok }
      else
        format.html { render :action => "edit" }
        format.xml  { render :xml => @comment.errors.to_xml }
      end
    end
  end
Esse código acima é um trecho de um controller gerado com o scaffold resource. Em breve vou dar dicas que estava guardando há dias para publicar aqui.

79 Responses to “Exportar seu código para HTML com o emacs”

Leave a Reply