python / python-docs-es

Spanish translation of the Python documentation.
https://python-docs-es.readthedocs.io/
Other
319 stars 378 forks source link

Hacer la generación de la Documentación compatible con Windows #66

Open raulcd opened 4 years ago

raulcd commented 4 years ago

En Telegram ha aparecido varias veces la pregunta de como hacer la generación de la documentación local en Windows. Deberíamos documentar cómo conseguirlo y añadirlo al Contribution guide.

yeyeto2788 commented 3 years ago

@raulcd esto creo que puediera ayudar https://github.com/JulienPalard/powrap/issues/82, parece que el error esta en una dependencia de powrap. Igualmente si toda la traduccion se hace desde Poedit, poniendo el limite a 70 muchos PR pasan sin necesidad de tener que ejecutar el comando powrap <path_del_archivo>.

Aqui adjunto la imagen de la configuracion en Poedit. image

Saludos.

P.D: Honestamente no he probado la parte de pospell pero el wrapping creo que es una cosa que falla mucho en los PR y pudiera ayudar el hecho de aplicar este cambio en la aplicacion.

G0erman commented 3 years ago

@raulcd Yo estoy trabajando de la siguiente forma sobre plataformas Windows, ¿Crees que le podría servir a alguien más?

Requisitos:

> cat Dockerfile
# Download docker image, It download a ubunto distro with Python 3.8
FROM python:3.8

# Install os dependences
RUN apt-get update && apt-get -y install \
    gettext hunspell hunspell-es

# Download requirements
RUN curl -O https://raw.githubusercontent.com/python/python-docs-es/3.8/requirements.txt

# Install python packages
RUN pip3 install -r requirements.txt

# Setup Volume and work directory
VOLUME /user/home/python-docs-es
WORKDIR /user/home/python-docs-es

Procedimiento

> docker build --tag python-docs-es .
> docker images # Verify the image was builded 
python-docs-es                         latest              c4345e08cb800        48 seconds ago      1.03GB
> docker run -it -v C:\\Users\\your.user\\python-docs-es:/user/home/python-docs-es python-docs-es bash
> powrap library/sqlite3.po # Fix file
Fixing wrapping of po files: 100%|██████████████████████████████████████████████████████████████| 1/1

Y listo, el volumen de la máquina linux está sincronizado con la carpeta de Windows.

Nota: este mismo contenedor se podría usar para más cosas que solamente corregir los archivos .po, pero por ahora solo lo he usado para eso.

cmaureir commented 3 years ago

No me parece tan adecuado recomendar utilizar Docker, ya que si la gente tiene problema con instalar hunspell para Windows, va a ser un nivel de complejidad mucho más alto.

Los pasos oficiales son bastante claros y sin software externo: https://docs.microsoft.com/en-us/windows/wsl/install-win10 Una vez con la terminal, es cosa de seguir los pasos de crear un nuevo entorno virtual e instalar las herramientas ahí.

Adicionalmente,los pasos para que funcione Hunspell no son muchos:

  1. Descargar hunspell-1.3.2-3-w32-bin.zip desde https://sourceforge.net/projects/ezwinports/files/
  2. Descomprimir el directorio en algún lugar, por ejemplo en C:\hunspell\
  3. Agregar el nuevo directorio al path: set PATH="C:\hunspell\bin";%PATH%
  4. Descargar un diccionario es_ES de algún lugar, por ejemplo: https://kitscenarist.ru/downloads/hunspell/

Luego, pospell instalado en un entorno virtual va a poder usar hunspell y el diccionario que puede estar en el sistema o en el directorio donde se ejecuta pospell.

G0erman commented 3 years ago

Vale, deacuerdo, para instalar Docker sobre Windows hay que hacer varias cosas, tener las actualizaciones al día, habilitar virtualización en la BIOS, etc.

Si extraoficialmente alguien ya paso por eso y quiere jugar con Docker para ahorrarse unos pasos, acá dejo la imagen publicada:

docker run -it -v C:\\your.path\\python-docs-es:/user/home/python-docs-es gedarafi/python-docs-es bash

# Fix po file
powrap library/sqlite3.po

Nota: experimetal, hacerlo solo si se siente con suerte :D

cmaureir commented 3 years ago

Me hubiera gustado mucho la verdad, tener un contenedor listo para usar...pero participé en un workshop una vez, donde se fue más de la mitad en que todos tuvieran Docker instalado :( y luego con el tema de "pero en Windows...", "pero en macOS..." :'(

humitos commented 1 year ago

Coincido con @cmaureir sobre lo de Docker. Es demasiado complejo...

humitos commented 1 year ago

Si el problema "solo lo de powrap" yo creo que la solución a eso es #1786