0 votos
218 vistas

Obtuve un error al intentar usar “Outils personnalisation” > “Admin” > “Show Project Plan HTML” en PT9.0 en Wasta-Linux. Resulta que el script de python intenta usar el Registro de Windows para encontrar la carpeta de proyectos de Paratext. Fíjense en la línea 3, “from _winreg import…” (de cms/ProjectPlanImport.py):

def settingsDirectory():
    # Find the directory with Paratext 8 projects using the windows registry
    from _winreg import OpenKey, EnumValue, HKEY_LOCAL_MACHINE

    strPath = r"SOFTWARE\WOW6432Node\Paratext\8"
    try:
        aKey = OpenKey(HKEY_LOCAL_MACHINE, strPath)
        for i in [0,1,2,3,4,5]:
            aName, aValue, irrelevant = EnumValue(aKey,i)
            if aName == 'Settings_Directory':
                return aValue + '\\'
        return None
    
    except WindowsError:
        # The registry key was not found
        return None
    except:
        raise

Sin embargo, esta misma carpeta se puede encontrar de manera relativa usando el módulo os.path. Así que actualicé la función en mi sistema de la siguiente manera:

def settingsDirectory():
    # Find the directory with Paratext 8 projects using Python 2 tools.
    cms_dir = os.path.dirname(os.path.realpath(__file__))
    if os.path.basename(cms_dir) == 'cms' and os.path.isdir(cms_dir):
        return os.path.dirname(cms_dir)
    else:
        return None

Así que supongo que mi pregunta es: ¿Es posible que en una instalación no estándar la carpeta cms pueda estar ubicada en algún otro lugar que no sea dentro de la carpeta de proyectos de Paratext, lo cual haría necesaria la verificación del registro en Windows? O, si no, ¿consideraría alguien actualizar los scripts ProjectPlanImport.py y ProjectPlanRoot.py para usar las herramientas integradas y hacer que los scripts sean más compatibles universalmente?

También estaría dispuesto a encontrar una forma de realizar una verificación del sistema operativo y manejar el hallazgo de settingsDirectory de una manera dependiente del sistema operativo si pudiera discutir esto con la persona adecuada. Por cierto, estos parecen ser los únicos dos lugares donde el módulo _winreg se referencia en los scripts de cms.

Traducción automática desde English
Paratext por (298 puntos)
editado por | 218 vistas

1 Respuesta

0 votos
Después de usar mi propia solución temporal durante unos meses, me di cuenta de que 1) la función "settingsDirectory()" anterior es innecesaria porque "SettingsDirectory" es en realidad una variable global proporcionada a los scripts de CMS, y 2) el parámetro "\toHtml" en el archivo .cms debería abrir el archivo HTML generado en el navegador predeterminado, pero eso también falla en una instalación de Linux. Así que creé un script de CMS que se apoya en el script "Show Project Plan HTML" para agregar "Show Project Plan HTML (Linux)". Este script evita ambos de los problemas anteriores.

Puede obtener los archivos de https://github.com/sil-car/ProjectPlanHtmlLinux
Traducción automática desde English
por (298 puntos)

Preguntas relacionadas

0 votos
0 respuestas 178 vistas
Wasn't sure where to report this bug fix for the Show Project Plan Html script, found in the project Custom Tools > ... be causing the problem. Probably best to change it as well
jeffh 1,4k preguntada may 8, 2020
0 votos
3 respuestas 348 vistas
En un taller reciente de Introducción a Paratext, uno de los asistentes estaba usando Paratext 8 en Wasta-Linux. ... Linux para que la función de AutoCorrect.txt funcione? Gracias
MSEAIT_LT 478 preguntada dic 1, 2017
0 votos
1 respuesta 378 vistas
After an Install of Wasta 14 Paratext, the Advanced Checks is greyed out. In my home directory I see ... windows C:\MyParatextProjects\cms What might cause this?
anon432075 149 preguntada sep 8, 2016
0 votos
0 respuestas 167 vistas
I am recovering from a massive computer failure on a team member's computer. I have reinstalled Wasta-Linux 18 and am ... the way it normally does on that profile. Any ideas?
anon349755 120 preguntada oct 2, 2019
0 votos
1 respuesta 427 vistas
Me gustaría exportar el proyecto a HTML para poder compartir borradores con otras personas. No quiero exportar a PDF, ... otras. Cómo oculto las marcas USFM del HTML exportado?
bit 495 preguntada abr 14, 2022
Welcome to Support Bible, where you can ask questions and receive answers from other members of the community.
Don’t you know that you yourselves are God’s temple and that God’s Spirit dwells in your midst?
1 Corinthians 3:16
3,045 preguntas
6,005 respuestas
5,671 comentarios
2,026 usuarios