转自:https://www.douban.com/note/419828344/
目录:
一、问题描述
二、测试情况(可以跳过,直接看建议)
三、建议
四、参考资料

正文:

问题描述:

错漏某个符号(比如“$”)并在编译中被报错之后,过去经常采取的操作是按Console窗口里面的红色叉叉(Terminate Application),然后修改错误,然后重新编译,但是改正后的代码仍然编译报错,每次编译都是如此。编译报告说明:
Runaway argument?
{\contentsline {subsection}{\number1
! File ended while scanning use of @writefile.

\par
1.56 \begin{document}
?
奇怪的是,把全部代码复制到新窗口,保存为新的.tex文件并编译之后又完全没有问题。
后来又发现,只要把编译后在同一文件夹内生的.aux文件删除,就可以正确编译通过了。
但是如果每次都要这样的话,也太麻烦了。
上网查了查,并测试了下。过程如下。

测试情况:

说明下简称:
普通的漏掉“\(”这样的错误,叫作“错误Error\)”;
出现“Runaway argument?…………\begin{document}?”这样报错的错误,叫作“错误ErrorBoss”;
点击Console窗口里面的红色叉叉(Terminate Application)的操作叫作“按红叉”;
直接在Console窗口按回车,叫作“回车”;
在Console窗口先输入字母“x”再按回车,叫作“x回车”;
在Console窗口先输入字母“q”再按回车,叫作“q回车”。
下面记录下出现两种错误时,不同操作产生的效果:

出现错误Error\(时: 按红叉:中断编译过程过程,不给出编译报告。然后修改错误之后重新编译时,(根据在错误文中位置不同而有可能)出现错误ErrorBoss。 回车:仅跳过这步,继续编译完后面的,结尾Errors=1,Warnings与Bad Boxes正常显示。修改错误后,重新编译,可以正常编译。次推荐。 x回车:跳过余下全部编译过程,直接出编译报告,结尾Errors=1,Warnings与Bad Boxes只显示到该位置的数量。修改错误后,重新编译,可以正常编译。最推荐。 q回车:跳过余下全部编译过程,直接出编译报告,entering \batchmode,未深究,但结尾Errors数量随着“\)”位置的不同不可预测,Warnings与Bad Boxes正常显示。修改错误后,重新编译,可以正常编译。

以上步骤只有“按红叉”会导致错误ErrorBoss。

出现错误ErrorBoss时:
按红叉:中断编译过程过程,不给出编译报告。重新编译仍旧报错。
回车:仅跳过这步,继续编译完后面的,结尾Errors=1,Warnings与Bad Boxes正常显示(至此可以生成pdf)。重新点击编译,可以正常编译。次推荐。
x回车:跳过余下全部编译过程,直接出编译报告,结尾Errors=1,Warnings与Bad Boxes只显示到该位置的数量。重新编译仍旧报错。
q回车:跳过余下全部编译过程,直接出编译报告,结尾Errors=1,Warnings与Bad Boxes正常显示。重新编译,可以正常编译。最推荐。

建议:

最建议的做法是:
1.出现错误Error$时,不要按红叉,在Console窗口先输入字母“x”再按回车,然后再修改错误重新编译。或者直接按回车,但要多编译一些内容。看哪一个省力。反正不要按红叉,万一中招了呢。
2.如果不幸中招,出现错误ErrorBoss,正确做法是在Console窗口先输入字母“q”再按回车。或者直接按回车,但要多编译一些内容。然后确认代码正确后,重新编译。

【参考资料】
1.http://tex.stackexchange.com/questions/66015/errors-in-tables-then-runaway-argument-at-begindocument
里面Ulrike Fischer和tohecz的回答简洁而全面。
2.http://miktex.10937.n7.nabble.com/pdfLatex-won-t-compile-until-I-delete-archive-aux-td7311.html

PS关于.aux等附属文件有什么用处,以及如何方便删除,则暂时不管它,待参考:
3.http://tex.stackexchange.com/questions/11123/prevent-pdflatex-from-writing-a-bunch-of-files
4.http://tex.stackexchange.com/questions/24785/deleting-external-auxiliary-files

PPS:能用就好,暂时不究原因...

【转】Latex编译报错后中断编译并改正,然后重复出现不明原因报错的解决方法的更多相关文章

  1. Gradle 同步时报错,Could not find com.android.support.constraint:constraint-layout:1.0.0-alpha8的解决方法

    Error:Could not find com.android.support.constraint:constraint-layout:1.0.0-alpha8. 原因: SDK 中可能是没有安装 ...

  2. svn报错:“Previous operation has not finished; run 'cleanup' if it was interrupted“ 的解决方法

    今天改完代码提交时,提交接近完成但窗口还未关闭电脑蓝屏了.夏天来了,电脑比人还怕热啊~~~   心里咯噔一下,估计svn又会出一些莫名其妙的问题了. 果然,待电脑重启后开eclipse,文件还是新增状 ...

  3. Linux下Python3.5使用pyqt5.11报错 ImportError: /usr/local/lib/python3.5/dist-packages/PyQt5/QtCore.so: undefined symbol: PySlice_AdjustIndices 解决方法

    我用的Linux自带的是Python3.5版本,运行pip3 install PyQt5, 下载的是PyQt5.11,运行PyQt5程序会报错: ImportError: /usr/local/lib ...

  4. MySQL设置外键报错 #1452 - Cannot add or update a child row: a foreign key constraint fails 解决方法

    MySQL数据库,当我尝试在A表中设置B表的主键为外键时,报出错误:#1452 - Cannot add or update a child row: a foreign key constraint ...

  5. Django1.10+Mysql 5.7存储emoji表情,报Incorrect string value: '\\xF0\\x9F\\x90\\xA8' for column 'signature' at row 1的解决方法

    问题: 在做webapp项目的时候,用户提交emoji数据,控制台报错:Incorrect string value: '\\xF0\\x9F\\x90\\xA8' for column 'signa ...

  6. Mysql安装后在服务里找不到和服务启动不起来的解决方法

    一,在安装完Mysql数据库后,发现在控制面板->管理->服务中找不到Mysql的服务启动 解决方法如下:开启命令行,按照如下步骤即可: 1.进入到mysql的安装包,在bin里执行:my ...

  7. Latex 编译错误: ! pdfTeX error (ext4): \pdfendlink ended up in different nesting level than \pd fstartlink. 解决方法

    最近写 AAAI 的文章,下载了其模板,但是蛋疼的是,总是提示错误,加上参考文献总是出错: 如下: ! pdfTeX error (ext4): \pdfendlink ended up in dif ...

  8. composer 报错:Your requirements could not be resolved to an installable set of packages 解决方法

    composer 报错: - Your requirements could not be resolved to an installable set of packages xxxxxxxxxxx ...

  9. 【airtest, python】报错:requests.exceptions.ConnectionError: ('Connection aborted.', ConnectionResetError(54, 'Connection reset by peer')),解决方法如下

    环境及设备 mac, xcode , iphonex 问题 最近出现一个让人费解的问题,airtest 没跑多长时间,服务就断掉,而且总是报“requests.exceptions.Connectio ...

随机推荐

  1. Python语言简介以及特点

    编程语言的分为编译型语言和解释型语言: 1. 编译型语言: (1) 编译型语言的代表:C.C++.Delphi等, (2) 编译型语言的运行方式:编译 -> 运行 (3) 编译型语言的优缺点分析 ...

  2. 优化JDBC开发

    一.元数据 元数据:数据库.表.列的定义信息 1.DataBaseMetaData对象 getURL():返回一个String类对象,代表数据库的URL. getUserName():返回连接当前数据 ...

  3. mysql 数据库备份和恢复

    物理备份对比逻辑备份 物理备份是指直接复制包含数据的文件夹和文件.这种类型的备份适用于大数据量且非常重要,遇到问题需要快速回复的数据库. 逻辑备份保存能够代表数据库信息的逻辑结构(CREATE DAT ...

  4. 【LeetCode算法题库】Day2:Median of Two Sorted Arrays & Longest Palindromic Substring & ZigZag Conversion

    [Q4] There are two sorted arrays nums1 and nums2 of size m and n respectively. Find the median of th ...

  5. 企业上云这四大要点,你 get 了吗?

    本文由 Platform9(一家专注于云计算.专有云.混合云.OpenStack 以及容器技术的北美初创公司)技术产品营销经理 Akshai Parthasarathy 撰写,描述了企业在向云基础设施 ...

  6. Docker Zero Deployment and Secrets (二)

    一. 健康检测: (1)定义检测信息如下(案例,在Dockerfile中定义) FROM alpine:3.6 ... HEALTHCHECK --interval=30s \     --timeo ...

  7. dubbo支持协议及具体对比

    对dubbo的协议的学习,可以知道目前主流RPC通信大概是什么情况,本文参考dubbo官方文档 http://dubbo.io/User+Guide-zh.htm dubbo共支持如下几种通信协议: ...

  8. C++ 类 构造函数 constructor

    构造函数 当定义了一个整型变量: int a; 这会申请了一块内存空间来存储a,但是这块内存中原本有数据的,可能是任何值,这不是你所希望的,若你就希望a表示1,所以要把a的值赋值为1. ; 例: #i ...

  9. mysql更新表数据时报错 You can't specify target table 'RES_CATALOG_CLASSIFY' for update in FROM clause

    You can't specify target table for update in FROM clause含义:不能在同一表中查询的数据作为同一表的更新数据. 将sql语句 UPDATE RES ...

  10. 跟踪调试Linux内核的启动过程

    跟踪调试Linux内核的启动过程---使用gdb 符钰婧 原创作品转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.163.com/course/UST ...