emacs 使用 fill-region 后文件排得很乱

Vim、Emacs配置和使用
回复
catcher-in-rye
帖子: 5
注册时间: 2009-10-05 20:45

emacs 使用 fill-region 后文件排得很乱

#1

帖子 catcher-in-rye » 2009-10-21 15:46

用emacs写latex文档,打开旧文档后总是需要fill-region一下,因为通常旧文档每行的长度可能和当前设置不一致,看着不舒服。选中全文 fill-region后,发现emacs对段落的定义很奇怪的,并不是按照一个回车键来划分。有一些本来是分开几行的命令,居然串起来成为一段那样排着。虽然不影响生成文件,但是看着会很不舒服。比如说,\title{********}\author{***}\date{},我本来是分开3 行的,fill-region后居然变成一段。还有\chapter{*****}后面会紧接着出现段落的文字, \chapter{*****}******** 这样的效果。看着也不爽。还有很多类似的问题,不能穷举。总之fill-region后,tex文件面目全非,可读性降低。大家有什么好的建议?谢谢!
头像
zhuqin_83
帖子: 10606
注册时间: 2006-05-13 4:02
联系:

Re: emacs 使用 fill-region 后文件排得很乱

#2

帖子 zhuqin_83 » 2009-10-21 21:25

从来不考虑这个问题,latex又不管你分行不分行的。
HP Pavilion DV6-2064CA: AMD Turion II Ultra Dual-Core Mobile M640, HD4650, 2GBx2 DDR2-800, Seagate 500GB 7200RPM SATA, BD-ROM
DELL UltraSharp 2209WA
Arch64, Testing repo
头像
zhuqin_83
帖子: 10606
注册时间: 2006-05-13 4:02
联系:

Re: emacs 使用 fill-region 后文件排得很乱

#3

帖子 zhuqin_83 » 2009-10-21 21:26

另外,我不知道你有没有用auctex,不用简直就是浪费资源了。
HP Pavilion DV6-2064CA: AMD Turion II Ultra Dual-Core Mobile M640, HD4650, 2GBx2 DDR2-800, Seagate 500GB 7200RPM SATA, BD-ROM
DELL UltraSharp 2209WA
Arch64, Testing repo
catcher-in-rye
帖子: 5
注册时间: 2009-10-05 20:45

Re: emacs 使用 fill-region 后文件排得很乱

#4

帖子 catcher-in-rye » 2009-10-22 15:53

已经用了auctex了。2楼不管这个问题只能说明用latex的量不够大,或者看的tex文档全都是自己在同一设置下写的。如果有人给你发了个用winedt写的tex文档,你就会发现每行字在屏幕上都很长(排满整个屏幕)。这样看会很不舒服的。如果2楼自己用的设置都是让字排满整个屏幕,那么我强烈建议你改设置,你会发现,每行字控制在70列内会非常舒服。既然你是latex用户,你应该懂这个基本常识啊!

这样做还有一种考虑。除非你写的东西永远不会交给别人,否则你就不能确定你的东西能不能在别人的机上正常显示。如果tex文档中有注释,这个问题就更为严重。每个人喜欢每行的长度都不一样,别人会需要重排收到的文档。重排后,你的文档很可能会在别人的机上不能正常编译,或者可读性很低。
anewbie
帖子: 159
注册时间: 2009-02-24 19:39

Re: emacs 使用 fill-region 后文件排得很乱

#5

帖子 anewbie » 2009-10-23 14:19

catcher-in-rye 写了:用emacs写latex文档,打开旧文档后总是需要fill-region一下,因为通常旧文档每行的长度可能和当前设置不一致,看着不舒服。选中全文 fill-region后,发现emacs对段落的定义很奇怪的,并不是按照一个回车键来划分。有一些本来是分开几行的命令,居然串起来成为一段那样排着。虽然不影响生成文件,但是看着会很不舒服。比如说,\title{********}\author{***}\date{},我本来是分开3 行的,fill-region后居然变成一段。还有\chapter{*****}后面会紧接着出现段落的文字, \chapter{*****}******** 这样的效果。看着也不爽。还有很多类似的问题,不能穷举。总之fill-region后,tex文件面目全非,可读性降低。大家有什么好的建议?谢谢!
1. Emacs 默认对段落的定义没啥好奇怪的,同 LaTeX 一样,一个或若干个空行表示分段;
2. 在 LaTeX-mode 中重定义 paragraph-start 和 paragraph-separate 直到得到你想要的效果(一劳永逸);或者定义一个永远不会用到的 fill-prefix (这办法简单,但愚蠢且不能一劳永逸)。
catcher-in-rye 写了:既然你是latex用户,你应该懂这个基本常识啊!
3. 个人比较反感这样的说话方式,况且你说的不过是个人偏好,还真算不上什么“基本常识”。嗯,这点纯属个人感觉,嫌碍眼请直接无视。
回复