Deshabilite el cuadro de diálogo "Eliminar automáticamente archivos auxiliares" en TeXworks

Deshabilite el cuadro de diálogo "Eliminar automáticamente archivos auxiliares" en TeXworks

Cada vez que LaTeX genera un .auxarchivo dañado por cualquier motivo, aparece el siguiente cuadro de diálogo, que dice _Mientras se configuraba, se detectó un archivo .aux corrupto de una ejecución anterior. Debe eliminarlo y volver a ejecutar el proceso de composición tipográfica. ¿Quiere mostrar el cuadro de diálogo "Eliminar archivos auxiliares..." ahora?

ingrese la descripción de la imagen aquí

No sólo es redundante (¿por qué no mostrar el otro cuadro de diálogo inmediatamente con Skipel botón?), sino que, lo que es más importante, es muy molesto.

¡No quiero que aparezca ningún cuadro de diálogo!¿Se puede desactivar de alguna manera o tengo que obtener la fuente, borrar esta parte y volver a compilarla?

Respuesta1

De mi comentario a una respuesta adecuada.:)

La raíz de todos los males reside en un anzuelo cuyo nombre se encuentra logParser.jsen su interior <USERHOME>/.TeXworks/scripts/Hooks. Si no está seguro de dónde encontrar esta ruta, TeXworks tiene un atajo para ella:

Curandero 1

Es decir Scripts ▶ Scripting TeXworks ▶ Show Scripts Folder,. Luego puede acceder a una carpeta nombrada Hooksallí. Bastante fácil, ¿no?:)

El archivo culpable es logParser.js,

Curandero 2

que es un código JavaScript. Tenemos dos maneras de afrontarlo. Ya sea deshabilitando toda la ejecución de este analizador de registros a través de:

Curandero 3

( Scripts ▶ Scripting TeXworks ▶ Manage Scripts)

Y luego desmarcar el elemento Errors, warnings, badboxesdebajo de la Hook Scriptspestaña.

Curandero 4

O podemos editar logParser.jsdirectamente. La función que se ocupa de advertir sobre archivos auxiliares se encuentra alrededor de la línea 373:

LogParser.prototype.WarnAuxFiles = function()
{
  for (var i = this.Results.length-1; i >= 0; i--) {
    if (this.Results[i].Description.indexOf("File ended while scanning use of") > -1) {
      if (TW.question(null, "", "While typesetting, a corrupt .aux " +
        "file from a previous run was detected. You should remove " +
        "it and rerun the typesetting process. Do you want to display" +
        "the \"Remove Aux Files...\" dialog now?", 0x14000) == 0x4000)
        TW.target.removeAuxFiles();
      break;
    }
  }
}

Aunque podría agregar una returndeclaración justo después del bloque de apertura del cuerpo de la función, preferiría comentar las partes ofensivas. :)Entonces:

LogParser.prototype.WarnAuxFiles = function()
{
/*
No more! (Dr. Who, The Day Of The Doctor)

                        _.._
                       /   a\__,
                       \  -.___/
                        \  \
                   (\____)  \
               |\_(         ))
          _____|   (_        /________
               _\____(______/__
                    ______

  ooh a duck! :)

  for (var i = this.Results.length-1; i >= 0; i--) {
    if (this.Results[i].Description.indexOf("File ended while scanning use of") > -1) {
      if (TW.question(null, "", "While typesetting, a corrupt .aux " +
        "file from a previous run was detected. You should remove " +
        "it and rerun the typesetting process. Do you want to display" +
        "the \"Remove Aux Files...\" dialog now?", 0x14000) == 0x4000)
        TW.target.removeAuxFiles();
      break;
    }
  }
*/
}

Y hemos terminado.:)

Respuesta2

Me he encontrado con el mismo problema.

Este problema puede deberse a errores en el proceso de composición tipográfica. En mi caso, si hay un error en el archivo tex, entonces lo compilo, el proceso de composición tipográfica informa que se produce un error y dejo de componer, cuando lo vuelvo a componer, aparece el cuadro de diálogo para informarle que elimine el archivo auxiliar, en realidad Si hace clic en 'Aceptar', aparecerá otro cuadro de diálogo para elegir qué archivo debe eliminarse, luego hace clic en 'Eliminar' y se eliminarán todos los archivos seleccionados.

De este problema se puede inferir que:

  • Se produce un error en el proceso de composición tipográfica que invalida los archivos auxiliares. Debe corregir el error y eliminar los archivos auxiliares y luego volver a componerlos.

  • Este cuadro de diálogo aparece cuando escribe el archivo por segunda vez después de que se produce el error.

  • Este cuadro de diálogo solo le informa y, de hecho, los archivos auxiliares se eliminarán en el siguiente cuadro de diálogo.

Entonces, mi solución es que si ocurre un error en el proceso de composición tipográfica, cuando lo cancelo, aparece el cuadro de diálogo de eliminación de archivos, luego hago clic en el botón "eliminar" para eliminar los archivos auxiliares. (Aún aparece un cuadro de diálogo porque me resulta difícil eliminar archivos auxiliares mediante el script y no sé cómo hacerlo).

Y aquí está mi código. logParser.jsSe modifica la función WarnAuxFiles alrededor de la línea 373 .

LogParser.prototype.WarnAuxFiles = function()
{
  for (var i = this.Results.length-1; i >= 0; i--) {
    if(this.Results[i].Severity == Severity.Error) {
        TW.target.removeAuxFiles();
        break;
    }
  }
}

información relacionada