
.aux
LaTeX가 어떤 이유로든 손상된 파일을 생성할 때마다 _Whil tupesetting, 이전 실행에서 손상된 .aux 파일이 감지되었다는 내용의 다음 대화 상자가 나타납니다. 이를 제거하고 조판 프로세스를 다시 실행해야 합니다. 지금 "Aux 파일 제거..." 대화 상자를 표시하시겠습니까?
중복될 뿐만 아니라(버튼을 사용하여 다른 대화 상자를 즉시 표시하지 않는 이유는 무엇입니까 Skip
?) 더 중요한 것은 매우 짜증나는 일입니다.
어떤 대화상자도 표시되는 것을 원하지 않습니다!어떻게든 끌 수 있나요? 아니면 소스를 구해서 이 부분을 지우고 다시 컴파일해야 하나요?
답변1
내 의견부터 적절한 답변까지.:)
logParser.js
모든 악의 근원은 inside 라는 후크에 의존합니다 <USERHOME>/.TeXworks/scripts/Hooks
. 이 경로를 어디에서 찾을 수 있는지 확실하지 않은 경우 TeXworks에 해당 경로에 대한 바로가기가 있습니다.
즉, Scripts ▶ Scripting TeXworks ▶ Show Scripts Folder
. 그런 다음 거기에 이름이 지정된 폴더에 액세스할 수 있습니다 Hooks
. 꽤 쉽죠?:)
비난할 파일은 logParser.js
,
이는 JavaScript 코드입니다. 우리는 그것을 처리하는 두 가지 방법이 있습니다. 다음을 통해 이 로그 파서의 전체 실행을 비활성화합니다.
( Scripts ▶ Scripting TeXworks ▶ Manage Scripts
)
그런 다음 탭 Errors, warnings, badboxes
아래의 항목을 선택 취소합니다 Hook Scripts
.
아니면 logParser.js
직접 편집할 수도 있습니다. 보조 파일에 대한 경고를 처리하는 함수는 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;
}
}
}
return
함수 본문 열기 블록 바로 뒤에 명령문을 추가할 수 있지만 문제가 되는 부분에 대해서는 주석을 추가하는 것이 좋습니다. :)
그래서:
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;
}
}
*/
}
그리고 우리는 끝났습니다.:)
답변2
나는 같은 문제를 만났습니다.
이 문제는 조판 과정의 오류로 인해 발생할 수 있습니다. 제 경우에는 tex 파일에 실수가 있으면 컴파일을 했는데 조판 과정에서 오류가 발생했다고 보고해서 조판을 멈췄다가 다시 조판을 하면 aux 파일을 삭제하라고 알리는 대화상자가 나오는데 실제로는 '확인'을 클릭하면 제거할 파일을 선택하는 또 다른 대화상자가 나타나고 '삭제'를 클릭하면 선택한 파일이 모두 삭제됩니다.
이 문제는 다음과 같이 추론할 수 있습니다.
조판 과정에서 오류가 발생하여 보조 파일이 유효하지 않게 됩니다. 오류를 수정하고 aux 파일을 제거한 다음 다시 조판해야 합니다.
이 대화 상자는 오류가 발생한 후 두 번째로 파일을 조판할 때 나타납니다.
이 대화 상자는 단지 여러분에게 알려주는 것이며 실제로 Aux 파일은 다음 대화 상자에서 삭제될 것입니다.
그래서 내 해결책은 조판 과정에서 오류가 발생하면 이를 중단할 때 파일 제거 대화 상자가 나타난 다음 '삭제' 버튼을 클릭하여 aux 파일을 제거하는 것입니다. (Aux 파일을 스크립트로는 제거하기 힘들고 어떻게 해야할지 몰라서 아직도 대화창이 뜹니다.)
그리고 여기 내 코드가 있습니다. 라인 373 주변의 WarnAuxFiles 함수가 logParser.js
수정되었습니다.
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;
}
}
}