Skip to main content

Converte arquivos Markdown para DOCX formatado em ABNT.

Project description

📝Conversor Markdown para Docx📝

O ConvertMarkdownToDocx é um projeto desenvolvido para automatizar a conversão de arquivos Markdown para documentos Word (.docx) formatados segundo as normas ABNT. É especialmente útil para acadêmicos, profissionais da educação, redatores técnicos e empresas que desejam uma forma prática e rápida de gerar documentos estruturados e profissionais a partir de conteúdo escrito em Markdown.

Proposta do Projeto

O objetivo principal deste projeto é simplificar e agilizar o processo de criação de documentos formatados corretamente, eliminando o tempo gasto com a formatação manual no Word. É uma solução ideal para quem utiliza regularmente Markdown e precisa gerar documentos em conformidade com as normas ABNT.

O projeto lê o conteúdo Markdown, interpreta títulos, listas, tabelas e outros elementos comuns, e gera automaticamente um documento Word formatado, pronto para revisão ou impressão.

Quando utilizar este projeto?

  • Criação rápida e eficiente de relatórios técnicos e acadêmicos.
  • Automatização da geração de documentos formatados conforme ABNT.
  • Simplificação do processo de conversão de conteúdos produzidos por plataformas como o ChatGPT.

Como utilizar

Opção 1: Instalação a partir do PyPI

A forma mais rápida de começar a usar o projeto é instalando diretamente do PyPI:

pip install convert-markdown-docx

Após instalado, você pode executar o conversor diretamente:

  1. Para executar com o nome do arquivo gerado automaticamente:
convert input/seu_arquivo.md
  1. Caso deseje definir manualmente o nome do arquivo que será gerado:
convert input/seu_arquivo.md -o nome_final.docx

O arquivo convertido será salvo na pasta output.

Opção 2: Clonando o repositório

Se preferir trabalhar diretamente com o código-fonte, siga os passos abaixo:

Passo 1: Clone o repositório

git clone https://github.com/BrayanPletsch/ConvertMarkdownToDocx.git
cd ConvertMarkdownToDocx

Passo 2: Crie um ambiente virtual

python3 -m venv .venv      # Windows: python -m venv .venv 
source .venv/bin/activate  # Windows: .venv\Scripts\activate

Passo 3: Instale as dependências

pip install --upgrade pip
pip install -e .

Após esses passos, o comando convert estará disponível no seu terminal.

Passo 4: Execute o comando

convert input/seu_arquivo.md
# ou
convert input/seu_arquivo.md -o nome_final.docx

Estrutura do Projeto

ConvertMarkdownToDocx/
├── src/
│   └── convert_markdown/
│       ├── cli.py                # Interface de linha de comando
│       ├── converter.py          # Limpa e trata o conteúdo Markdown
│       ├── docx_generator.py     # Gera e formata o documento Word
│       └── utils/
│           └── markdown_utils.py # Funções auxiliares
├── tests/                        # Testes unitários
├── docs/                         # Documentação detalhada
├── input/                        # Arquivos Markdown de entrada
├── output/                       # Documentos Word gerados
├── LICENSE
├── pyproject.toml
├── requirements.txt
└── .gitignore

Funcionalidades principais

  • Lê texto Markdown com títulos, listas, tabelas e separadores.
  • Cria um .docx com:
    • Títulos formatados conforme ABNT (tamanhos 18, 16, 14).
    • Corpo com fonte Times New Roman 12, justificado, espaçamento 1.5.
    • Geração automática de sumário (necessita atualização manual no Word).
    • Tabelas com bordas e suporte a negrito dentro de células.
    • Rodapé com numeração automática das páginas.

Limitações atuais

  • Não processa imagens no formato Markdown (![]()).
  • Itálico (*texto*) ainda não é suportado.
  • Blocos de código (```) não são tratados adequadamente.
  • O sumário deve ser atualizado manualmente no Word após a geração.

Futuras melhorias

  • Implementação de suporte completo para imagens e links.
  • Melhoria na conversão de listas aninhadas.
  • Opção para exportação também em formato PDF.
  • Interface web interativa via Swagger/OpenAPI.

Como contribuir

Contribuições são muito bem-vindas! Caso queira contribuir, siga estes passos:

  1. Faça um fork do projeto.
  2. Crie uma branch com sua feature:
git checkout -b minha-melhoria
  1. Commit suas alterações:
git commit -m "feat: descrição da nova funcionalidade"
  1. Envie sua branch para o repositório:
git push origin minha-melhoria
  1. Abra um Pull Request com uma descrição clara das mudanças feitas.

Licença

Este projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.

Desenvolvido por Brayan Pletsch.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

convert_markdown_docx-0.1.2.tar.gz (6.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

convert_markdown_docx-0.1.2-py3-none-any.whl (8.8 kB view details)

Uploaded Python 3

File details

Details for the file convert_markdown_docx-0.1.2.tar.gz.

File metadata

  • Download URL: convert_markdown_docx-0.1.2.tar.gz
  • Upload date:
  • Size: 6.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.2 CPython/3.12.7 Linux/6.8.4-2-pve

File hashes

Hashes for convert_markdown_docx-0.1.2.tar.gz
Algorithm Hash digest
SHA256 53aea5f930f84d2131e5feb543f198fc41c3ffaf4f2e1b730e92968d2d4763de
MD5 dd79169169b2c5c6b07c8968aca30feb
BLAKE2b-256 8169bfa7ad0c1192514a4ec5034e100e70d3b907ad9bd69953bd7130b9fa7bad

See more details on using hashes here.

File details

Details for the file convert_markdown_docx-0.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for convert_markdown_docx-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 c59c7f4a98868ff5d079a250c1c29fe7d20e782a2b6b3a12acc024e79a00b5f0
MD5 a5a3072d107afb5f7e680123e0c38e93
BLAKE2b-256 2ef6dd48a4f706b3ea361b25ae7e9f77e182ffa914990e1412145a9bff38c62e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page