summaryrefslogtreecommitdiff
path: root/info/context-notes-zh-cn/src/project.tex
diff options
context:
space:
mode:
Diffstat (limited to 'info/context-notes-zh-cn/src/project.tex')
-rw-r--r--info/context-notes-zh-cn/src/project.tex67
1 files changed, 67 insertions, 0 deletions
diff --git a/info/context-notes-zh-cn/src/project.tex b/info/context-notes-zh-cn/src/project.tex
new file mode 100644
index 0000000000..861c51f179
--- /dev/null
+++ b/info/context-notes-zh-cn/src/project.tex
@@ -0,0 +1,67 @@
+\startcomponent project
+\environment doc-env
+\product ctxnotes
+
+\chapter{大文档项目}
+
+对于规模比较大的文档项目而言,采用 \TEX\ 的优越性要高于 WYSIWYG 的字处理器 (MS Word)。众人谓之曰字处理器使用起来比较方便,实际这只不过表面现象,在其背后是文档更新方面的困难——难以进行多人协同撰写与版本维护。本章主要介绍 \CONTEXT\ 所提供的文档项目管理功能,探讨如何在文档项目中布置版本控制系统,建立一种比较稳定的大文档项目撰写模式。
+
+\section{项目的部署}
+
+一个 \TeX\ 文档项目,通常可以将文档结构分为:环境、宏、文档主体内容。这样划分的意图就是让文档的样式与内容分离开。环境,主要用于定制版面样式。宏,主要是封装一些排版命令,实现一些特定的排版功能。在 \CONTEXT\ 中,环境或宏可以由一份或多份专门的环境文件来定义,环境文件的格式如下:
+
+\startniceTEX
+\startenvironment 环境文件名
+... 环境内容 ...
+\stopenvironment
+\stopniceTEX
+
+如果不对文档的主体内容进行划分的话,那么它就与普通的 \CONTEXT\ 文档无异,只是多了加载环境文件的命令:
+
+\startniceTEX
+\environment 环境文档名
+... ... ...
+\starttext
+... 文档内容
+\stoptext
+\stopniceTEX
+
+如果对文档的主体内容细分下去,可以有封面、前言、正文章节、附录、封底等。文档结构划分的深浅程度,这个主要由用户来把握,主要视文档的规模而定。对于 \CONTEXT\ 而言,文档的主体内容实际上只有产品 (product) 与 组件 (component) 这两种划分\footnote{事实上还有比产品更高层的结构,就是项目 (project),不过我们写文档一般用不到它,如果是出版期刊杂志倒是有可能用到它。}\;。对于产品与组件之间的关系,这在产品文档中便可以直观地看到,譬如:
+
+\startniceTEX
+\startproduct 产品文档名
+\environment 环境文档名
+
+\component 组件文档 1
+\component 组件文档 2
+... ... ...
+\stopproduct
+\stopniceTEX
+
+产品文档将环境与组件的信息都记录了下来,因此当我们在使用 \CONTEXT\ 编译一个文档项目时,只需要编译产品文档即可。
+
+组件文档的格式如下:
+
+\startniceTEX
+\startcomponent 组件文档名
+\environment 环境文档名
+\product 所属产品名
+
+... 组件内容 ...
+
+\stopcomponent
+\stopniceTEX
+
+也可以直接编译组件文档,因为在组件文档中已经记录了所使用的环境文档信息;在撰写文档的过程中,推荐使用编译组件文档的方式来查看排版效果。
+
+\section{更多阅读……}
+
+如果上述内容有误或者你认为讲述的不够细致,那么请阅读以下文档:
+
+\startitemize
+\item “\CONTEXT\ 文稿的物理结构”:\crlf \hbox{\tt http://garfileo.is-programmer.com/2011/1/12/project-structure.23773.html}
+\stopitemize
+
+我计划今年年底将这些外部文档归整到这份文档中。
+
+\stopcomponent