Como instalar PyQt 4.2 no Scribus Windows

Para fazer novas paletas de ferramentas no programa de desktop publishing Scribus, pode-se usar as bibliotecas gráficas multiplataforma Qt. Essas bibliotecas servem para se produzir botões, barras de ferramentas, listas e outros elementos gráficos comumentes encontrados em ambientes gráficos de computador. Para usar o Qt, deve-se instalar o “empacotador” (wrapper) do Python para Qt (PyQt). Assim, a linguagem script interna do Scribus pode usar todos os ricos elementos gráficos para controle de programas.

Em ambientes Linux, instalar novos módulos no Python do Scribus é fácil, pois o Scribus usa o Python normal do sistema. O que estiver instalado no Python, o Scribus usa. Em Windows, no entanto, a coisa se complica. O Scribus para Windows usa um Python próprio, bem enxuto. Para instalação de novos módulos, deve-se ter alguns cuidados.

Eu consegui instalar as bibliotecas seguindo estes passos:

  1. Baixei e instalei o Python 2.4 para Windows.
  2. Baixei e instalei as bibliotecas Qt para Windows, versão 4.2.3.
  3. Baixei e instalei as bibliotecas PyQt para Windows, versão 4.2.3.

Depois disso, tenho que colocar o conteúdo da pasta \Python25\Lib\site-packages\ para dentro da pasta Scribus, para uso do Python interno deste. Em vez de copiar toda a pasta (coisa que teria de fazer sempre que instalasse novos módulos Python), preferi usar um recurso pouco conhecido do Windows: junções de pastas, ou “link simbólico” de pastas, como é conhecido este recurso em Unix. Isso cria uma pasta \Scribus\lib\site-packages\ que na verdade é a pasta \Python25\lib\site-packages\.

Mas aqui surge um problema típico da Microsoft: o sistema operacional suporta links simbólicos, mas não há ferramentas para fazer isso facilmente. Para criar uma junção (link simbólico) no Windows, tive que usar o utilitário junction, de Mark Russinovich. O download do junction está agora no site da MS, que contratou o genial programador.

A linha de comando para criar um link simbólico de pasta é o seguinte (“x:” é o seu drive, geralmente “C:”):

junction -s "x:\\Arquivos de programas\\Scribus 1.3.4\\libsite-packages" "x:\\Python25\\site-packages"

Assim, qualquer novo módulo que eu instalar no Python normal será instalado no Scripter Python do Scribus.

Para verificar se os módulos foram corretamente instalados, entre no console do Scribus Scripter e digite:

from PyQt4 import Qt

Use a tecla F9 para rodar o programa. Se tudo correr bem, não deverá aparecer nenhuma mensagem.

Na primeira vez que fiz isto, surgiu uma mensagem de erro avisando que o módulo QtDesigner não fora encontrado. Então, desativei este módulo para ver o que acontece. No arquivo \Python25\Lib\site-packages\PyQt4\Qt.py, desativei a linha com o caracter de comentário “#”:

# from PyQt4.QtDesigner import *

O erro sumiu e tudo correu bem. Tenho que investigar se este módulo é necessário, e por que ele não estava disponível.

About José Antonio Meira da Rocha

Jornalista, professor das áreas de Editoração e de Mídias Digitais na Universidade Federal de Santa Maria, campus cidade de Frederico Westphalen, Rio Grande do Sul, Brasil. Doutor em Design pelo Programa de Pós-Graduação em Design (PGDesign)/Universidade Federal do Rio Grande do Sul (UFRGS), Porto Alegre, Brasil, 2023. Mestre em Mídias pela UNISINOS, São Leopoldo, RS, Brasil, 2003. Especialista em Informática na Educação, Unisinos, 1976.