利用Word宏提高科技期刊编辑排版效率

2023-01-16 14:12曹粤锋梅晓英李艳芳陈万勤
中国传媒科技 2022年12期
关键词:宏程序图表参考文献

曹粤锋 梅晓英 李艳芳 沈 倩 陈万勤

(中国现代应用药学杂志社,浙江 杭州 310052)

科技期刊的编排专业化要求高,工作强度大,在有限的时间精力下,编辑人员应分配更多的精力在组稿约稿,提高期刊质量上,而不是论文写作是否规范、量单位符号是否正确等编辑和排版(以下简称:编排)规范上。这并不是说编排规范不重要,恰恰相反,编辑的基本要求就是编排规范,只有保证稿件齐清定,编辑才能发挥创造性的想法和能力,不断提高期刊质量。

目前我国期刊编辑部一般由专人进行排版,或委托印刷厂进行排版,效率较低,成本较高。专业化的排版软件价格昂贵,学习成本较高,对小的编辑部来说仍存在一定困难。

《中国现代应用药学》编辑部编排一体,编辑兼任排版,编辑人员较少,日常稿件量大,因此,2019年《中国现代应用药学》(以下简称本刊)设计了Word宏程序,引进了参考文献校对系统、黑马校对系统,大幅提高了编辑效率,降低了差错率。

已有文献报道,采用Word宏提高编校效率,但一般采用批注或窗口的方式供编辑进行查询核对[1-3],或仅对易错词和单位符号进行校对[4],重点仍然在编校分开,编辑校对,由排版人员进行修改。随着科技论文时效性的提高,网络优先出版是科技期刊发展的重要趋势,由编辑人员对论文进行简单排版,单篇上传、优先出版将使论文更快地呈现给读者,具有明显的优势。本文Word宏程序兼顾了编辑和排版两方面的内容,首先对稿件中常见的不规范术语、单位进行校对修改,其次进行规范化自动排版,可以大幅降低编辑工作量,提高效率。

1.智能化编校

1.1 自动替换常见不规范术语

来稿中常见术语使用不规范或与编辑部规范不符的用词,如医生应为医师,病人应为患者,甙应为苷等。术语不规范具有常见性、隐蔽性,编辑为了找出文中所有不规范词语需要多次通读全文,工作量大,且一不留神就会疏漏,效率低。王红剑等[5]编写了Word宏程序对重点词语进行了替换,但该文并没有提供相应代码。本文宏程序思路与其基本一致,常见错误词语替换代码如下:

Sub 替换不规范术语()

Selection.Find.ClearFormatting

Selection.Find.Replacement.ClearFormatting

Dim rng As Range,arr,arrr,j As Integer

Set rng = ActiveDocument.Content

arr = Array(“体重”“通讯”“医生”“病人”,“成份”“甙”“毒性作用”“毒副作用”“副作用”“机理”“抗生素”“理论塔板数”“其它”“容量瓶”“粘”“(“,“)”)

arrr = Array(“体质量”“通信”“医师”“患者”“成分”“苷”“不良反应”“不良反应”“不良反应”“机制”“抗菌药物”“理论板数”“其他”“量瓶”“黏”“(“,“)”)

With rng.Find

.ClearFormatting

.Replacement.ClearFormatting

.Replacement.Highlight = True

Options.DefaultHighlightColorIndex = wdYellow

.Format = True

.MatchCase = True

For j = LBound(arr) To UBound(arr)

.Text = arr(j)

.Replacement.Text = arrr(j)

.Execute Replace:=wdReplaceAll

Next

End With

Selection.Find.Execute Replace:=wdReplaceAll

End Sub

如需修改或增加替换词语,仅需要在arr数组中修改或增加相应不规范词语,在arrr数组修改或增加对应的正确词语即可,修改的内容会进行标记,方便编辑核对。需要注意宏程序中所有标点符号为英文,词语需要用引号标出,arr和arrr的词组为一一对应关系,如arr中的第3个词语会被替换为arrr中的第3个词语。替换效果见图1。由图可见,不规范术语已替换为规范术语,并自动进行了标示。

图1 不规范词语自动替换

1.2 单位的自动替换

来稿中常见单位使用不规范,如毫升、ml,单位前不空格等。本刊对量和单位的标注尤其严格,如mg/mL必须改为mg·mL-1的格式,其中“-”采用Symbol格式,其他所有英文和数字采用Times New Roman格式,作者来稿一般不能达到本刊编排规范,编辑和排版需要一一校对,工作较为繁琐复杂。黄城烟[4]以ml为例,说明了Word录制宏进行单位替换的思路,邓小光等[6]采用宏便于编辑查询正确单位并进行批注,但均不能达到本刊编排要求。笔者直接利用宏替换不规范的量和单位。以ml为例,设计思路①区分毫升、ml、空格+ml,/ml和含ml的单词;②数字+ml,数字+空格+ml统一为数字+空格+mL,组合单位的/ml统一为·mL-1;③图表的单位出现/mL,并不是组合单位,宏程序应避免修改。查找数字+ml的核心代码为:

.Text = “([0-9])ml>”

.Replacement.Text = “1 mL”

该代码仅查找数字+ml,以ml开始的英文单词不会被选中替换,差错率比较低。查找代码“([0-9])^32ml>”可以选中数字+空格+ml,同样的,以ml开头的英文单词不会被选中替换。对/ml的处理则较为复杂。首先应将ml修改为mL,其次,选择“/”前后均为英文单词,且后英文单词一般≤3个单词,作为单位依据,将选中的部分修改为“英文单词+·+英文单词+手动分行符+-1”的格式,然后将“手动分行符+-1”上标,删除手动分行符,最后将上标的“-”改为Symbol格式。手动分行符用于定位要上标的“-1”,核心代码为

.Text = “<ml>”

.Replacement.Text = “mL”

……

.Text = “([a-zA-Z])/([a-zA-Z]{1,3}>)”

.Replacement.Text = “1·2^11-1”

……

With Selection.Find.Replacement.Font

.Superscript = True

.Subscript = False

End With

With Selection.Find

.Text = “^11-1”

.Replacement.Text = “”

……

.Text = “^11”

.Replacement.Text = “

笔者采用宏对本刊常见单位kg,g,mg,µg,ng,L,mL,µL,min,h等和所有组合单位进行统一规范,而图表中不是组合单位的/mL等,宏程序则不进行修改。宏程序运行后的修改处标出,便于编辑核对。替换效果见图2。由图可见,单位已替换为本刊规范格式,且如mile单词,参考文献中的页码半字线不会被错误替换。

图2 单位的自动替换

1.3 校对重复出现的词语

人工校对重复词句工作量较大,且容易出错。黑马校对系统可以有效检出重复词语,但需要付费。通过Word宏可以简单方便地校对出重复词句,只要在查找框中使用通配符查找“([!^11^13]@)1”,以高亮标出,即可标出所有重复的单词和词语,非常方便。

2.快速排版

编辑对论文进行简单排版,可以使论文更加清晰整洁,有助于论文的阅读,对单篇论文优先出版也非常有帮助。本文利用宏进行排版的原理是先设置好论文的样式,将论文的各部分利用宏更改样式即可。首先要建立一篇论文模板的Word文档,该模板包含排版论文的所有样式,版式、页边距是设定好的,其次将稿件内容全文复制粘贴到该模板文档,最后运行宏即可。

以下各个内容的排版均在论文模板的Word文档中进行。

2.1 摘要的排版

摘要的排版,设计思路是先在全文查找“摘要”“关键词”两个词,对摘要和关键词两个段落套用摘要样式,更改摘要、目的、方法、结果、结论、关键词几个词语的格式。为避免在全文段落中存在的“摘要”和“关键词”的词语,查找时应同时查找段落标记+对应词语,排版效果见图3。由图3可见,摘要已被排版为规范格式,统一为小五号方正楷体简体,且上述词语统一为黑体,但有一个“摘要”也被错误替换为黑体,在实际论文撰写时此处一般不会出现该词,因此错误率是比较低的。宏代码如下:

图3 摘要的排版

‘ 摘要()

Selection.HomeKey Unit:=wdStory

Selection.Find.ClearFormatting

Selection.Find.Replacement.ClearFormatting

Selection.Find.Replacement.Font.Bold = False

With Selection.Find

.Text = “摘*@^13”

.Replacement.Text = “”

.Forward = True

.Wrap = wdFindContinue

.Format = False

.MatchCase = False

.MatchWholeWord = False

.MatchByte = False

.MatchAllWordForms = False

.MatchSoundsLike = False

.MatchWildcards = True

End With

Selection.Find.Execute

Selection.MoveDown Unit:=wdParagraph,Count:=1,Extend:=wdExtend

Selection.Style = ActiveDocument.Styles(“样式3”)

Dim arrz,i As Integer

arrz = Array(“摘要”,“目的 ”,“方法 ”,“结果 ”,“结论 ”,“关键词”)

With Selection.Find

.ClearFormatting

.Replacement.ClearFormatting

.Replacement.Font.Name = “黑体”

.Format = True

.MatchCase = True

.Replacement.Text = “”

For i = LBound(arrz) To UBound(arrz)

.Text = arrz(i)

.Execute Replace:=wdReplaceAll

Next

End With

2.2 层次标题

层次标题的格式一般与正文不同,该项设计思路是在全文查找以段落标记+数字为开头的段落或短句,该段落或短句与后文以段落标记或空格分隔。查找到该项内容后套用层次标题样式,并加粗数字。由于数字难以定位,故加粗数字的设计思路是在层次标题中间先插入手动分行符,然后加粗所有数字+手动分行符,然后删掉手动分行符,代码如下:

‘ 层次标题样式

Selection.Find.ClearFormatting

Selection.Find.Replacement.ClearFormatting

With Selection.Find

.Text = “(^13)([0-9])”

.Replacement.Text = “1^l2”

.Forward = True

.Wrap = wdFindContinue

.Format = False

.MatchCase = False

.MatchWholeWord = False

.MatchByte = False

.MatchAllWordForms = False

.MatchSoundsLike = False

.MatchWildcards = True

End With

Selection.Find.Execute Replace:=wdReplaceAll

Selection.Find.ClearFormatting

Selection.Find.Replacement.ClearFormatting

Selection.Find.Replacement.Style = ActiveDocument.Styles(“正文不缩进”)

With Selection.Find

.Text = “(^l)([0-9].)”

.Replacement.Text = “2”

.Forward = True

.Wrap = wdFindContinue

.Format = True

.MatchCase = False

.MatchWholeWord = False

.MatchByte = False

.MatchAllWordForms = False

.MatchSoundsLike = False

.MatchWildcards = True

End With

Selection.Find.Execute Replace:=wdReplaceAll

Selection.Find.ClearFormatting

Selection.Find.Replacement.ClearFormatting

Selection.Find.Replacement.Style = ActiveDocument.Styles(“标题 2”)

With Selection.Find

.Text = “(^l)([0-9])”

.Replacement.Text = “2”

.Forward = True

.Wrap = wdFindContinue

.Format = True

.MatchCase = False

.MatchWholeWord = False

.MatchByte = False

.MatchAllWordForms = False

.MatchSoundsLike = False

.MatchWildcards = True

End With

Selection.Find.Execute Replace:=wdReplaceAll

2.3 图表

图表的排版是科技论文排版的重要内容,往往需要花费较多时间。本文对图表的部分内容进行自动排版。表格需要使用三线表,六号字,因此利用宏删除表格所有框线,统一字体大小(套用表格样式),最后为表格加上上下框线,第一行加上下框线。代码如下:

Sub 表格()

Selection.SelectCell

Selection.Font.Name = “Times New Roman”

Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter

Selection.Cells.VerticalAlignment = wdCellAlignVerticalCenter

Selection.Rows.HeightRule = wdRowHeightAtLeast

Selection.Rows.Height = CentimetersToPoints(0)

With Selection.Tables(1)

.TopPadding = CentimetersToPoints(0)

.BottomPadding = CentimetersToPoints(0)

.LeftPadding = CentimetersToPoints(0)

.RightPadding = CentimetersToPoints(0)

.Spacing = 0

.AllowPageBreaks = True

.AllowAutoFit = True

.Borders(wdBorderTop) = wdLineWidth075pt

.Borders(wdBorderBottom) = wdLineWidth075pt

.Rows(1).Borders(wdBorderBottom) = wdLineWidth050pt

End With

Selection.Tables(1).Rows.Alignment = wdAlignRowLeft

End Sub

本刊图表标题与正文不同,因此需要单独设计宏程序,此外,本刊“图”“表”的字体为黑体,又与图表标题的其他字体不同,对排版人员来说,一一校对修改,工作量较大。宏的设计思路是查找全文“段落标记+表或图+段落标记”的段落,设定排版格式,然后查找“段落标记+表或图+图表序号”在表或图和图表序号中间加上空格,最后查找“段落标记+图或表”加粗。核心代码如下:

.Text = “(^13)([表图])*@([0-9])”

.Replacement.Text = “1^l23”

……

Selection.Find.Replacement.Style = ActiveDocument.Styles(“样式4”)

Selection.Find.Replacement.Font.Bold = True

With Selection.Find

.Text = “^l(图)*@([0-9])”

.Replacement.Text = “12”

……

.Text = “^13[表图]”

.Replacement.Text = “”

.Replacement.Font.Name = “黑体”

Selection.Find.Replacement.Style = ActiveDocument.Styles(“样式4”)

Selection.Find.Replacement.Font.Bold = True

With Selection.Find

.Text = “^l(图)*@([0-9])”

.Replacement.Text = “12”

2.4 参考文献

利用参考文献校对软件可以很好地完成参考文献的校对,但不能进行排版。本文对参考文献进行了排版,首先是设定参考文献样式,其次是设定字体,对参考文献标点符号进行统一,如将中文标点如【】,(),:;。等统一改用英文标点,多个空格的统一为一个空格,可以做到在格式上是完全统一的。代码较为简单,与上述相似,此处略去。

3.讨论

本文各个项目实现的效果见图1。宏程序运行速度快,3秒钟内即可运行完毕,解放了编辑的简单重复劳动,极大地提高了编辑效率。在实际使用过程中,尚存在一些问题,如在术语替换时有时会替换不应该替换的内容,需要编辑对高亮处进行核对;在层次标题的排版上因不能识别正文中以数字开头的段落,会出现差错;在图表标题的排版上,因部分图表标题前面没有段落标记无法识别。上述问题虽然存在,但出现的情况相对较少。宏程序设计完成后,笔者将其推广给所有编辑和排版人员,并将宏设定为快捷按钮,固定在快速功能栏上,只需点击按钮即可完成宏程序,更加方便快捷。

编校工作是劳动强度大,重复性劳动较多的工作,长时间的校对工作不可避免地产生差错[7-8],采用自动化排版校对可以有效降低错误率,提高编辑工作效率。

笔者将继续探索宏程序的更多应用,如自动校对参考文献标引,自动规范常见缩略语等。利用自动化工具减轻编辑重复的机械性劳动,提高编辑的创造性工作时间比例,是本刊的发展方向,也是科技期刊编辑的发展趋势。

猜你喜欢
宏程序图表参考文献
椭球槽宏程序编制及其Vericut仿真
The Muted Lover and the Singing Poet:Ekphrasis and Gender in the Canzoniere*
用修正渐开线投影法螺旋铣球面宏程序的编制
应用Fanuc宏程序的球面螺旋加工程序编制
Study on the physiological function and application of γ—aminobutyric acid and its receptors
双周图表
双周图表
双周图表
图表
The Review of the Studies of Trilingual Education in inghai