This action will force synchronization from abel533/spring-framework-reference, which will overwrite any changes that you have made since you forked the repository, and can not be recovered!!!
Synchronous operation will process in the background and will refresh the page when finishing processing. Please be patient.
#Spring框架参考文档 翻译
##文档地址
英文文档:http://spring.oschina.mopaas.com/html_en/
##基本说明
Spring文档为adoc格式,文件已经按基本的章节和内容拆分为大量的adoc子文件,该文件在src/asciidoc/chapter
路径下。
每一个adco文件内容在20行~200行左右,行数少的文件纯翻译内容较多,行数多的文件包含大量不需要进行翻译的代码。
##参与翻译
准备参与前,请仔细考虑自己能否抽出一定的时间来参与翻译,我们要求每月至少翻译完一个adoc文件(20行~200行)!
首先加QQ群Team翻译小组:111763438
进群后,查看群公告的Team邀请链接,通过链接加入Team
然后从群共享下载参与Spring文档翻译.pdf(或.doc版本)查看。
##I. 全部章节(加粗内容为已分配的章节)
##II. 翻译一般要求
为了大家在翻译的时候文件格式正确,而且翻译比较一致,需要遵守一定的要求。
###第一条、 adoc语法
Spring文件使用的adoc语法,和markdow比较接近。
只有大概了解这种语法才能在翻译的时候知道应该翻译什么,那些不应该翻译。所以要求大家简单了解adoc语法。
asciidoc语法--快速参考:
http://asciidoctor.org/docs/asciidoc-syntax-quick-reference/
asciidoc中文文档:
建议大家一定看看,否则翻译后的文档会出现一些格式错误。
为了便于查询adoc的预览效果,可以安装Chrome插件:
由于文档中的换行对英文来说只是一个空格,但是对中文就会有影响,所以大家在翻译的时候可以先有换行,翻译完这一个段落后,再将换行删除。
###第二条、 代码部分
在adoc语法中:
[source,xml,indent=0]
[subs="verbatim,quotes,attributes"]
----
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>{spring-version}</version>
<scope>runtime</scope>
</dependency>
</dependencies>
----
这种是代码内容,这里面的内容一般不需要做任何修改。但是如果代码中有注释内容,需要把注释翻译成中文。
###第三条、 词库
对于一些英语中专有的词汇,不需要进行翻译的可以不翻译。
例如:Spring不需要翻译,list,map等等不需要翻译,像bean也不用翻译。
具体遇到那些词可以在群内讨论。
##III. 编译本项目
目录结构:
为了便于独立翻译,已经手工将index.adoc
和appendix.adoc
进行了拆分。拆分后的内容在src\asciidoc\chaptor
中。
Spring项目使用的Gradle,编译文档也需要用到Gradle,所以如果你想编译本项目,需要按如下进行操作:
###1. 下载并配置Gradle
按照官方的进行配置即可,主要是bin加入Path
###2. 在项目的根目录执行命令
gradle
然后会下载项目依赖,其中jruby有20多M,整体下载速度一般(使用的osc的maven库)。
项目运行到最后会报错。
报错解决:
报错是因为文件编码的问题,需要修改一个jar包。这个jar包只有执行上面的命令后才会下载下来。
这个jar包的目录可能是这样:
E:.gradle\caches\modules-2\files-2.1\org.asciidoctor\asciidoctor-java-integration\0.1.4\3596c7142fd30d7b65a0e64ba294f3d9d4bd538f
或者你找到**.gradle目录后搜索asciidoctor-java-integration-0.1.4.jar**查找。
在jar包的asciidoctor-java-integration-0.1.4.jar\gems\asciidoctor-0.1.4\lib这个目录下,有一个asciidoctor.rb文件。
在这个文件中找到110行左右,在下面这行代码前添加内容:
FORCE_ENCODING = RUBY_VERSION > '1.9' && Encoding.default_external != Encoding::UTF_8
添加的内容为:
Encoding.default_external = Encoding::UTF_8
修改后的文件为:
# utf8
Encoding.default_external = Encoding::UTF_8
# Flag to indicate whether encoding of external strings needs to be forced to UTF-8
# _All_ input data must be force encoded to UTF-8 if Encoding.default_external is *not* UTF-8
# Address failures performing string operations that are reported as "invalid byte sequence in US-ASCII"
# Ruby 1.8 doesn't seem to experience this problem (perhaps because it isn't validating the encodings)
FORCE_ENCODING = RUBY_VERSION > '1.9' && Encoding.default_external != Encoding::UTF_8
然后将修改后的asciidoctor.rb覆盖jar包目录中的文件即可。
最后,再次执行:
gradle
经过几分钟的编译就好了。编译成功的输出日志:
E:\Git\spring-framework-reference>gradle
:asciidoctor
:referenceHtmlMultiBUILD SUCCESSFUL
Total time: 3 mins 56.987 secs
成功后可以在根目录下的build中看到生成的内容。
目前为了节省编译时间,现在只生成了分章节的html。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。