我必須在Framemaker中編寫一份技術文檔,解釋各種編程源代碼。如何格式化Framemaker文檔中的源代碼?
所以,我的文檔由一堆文字,接着一堆源代碼(Java,XML),再其次是更多的文字等
這個問題不是我是否應該或不應該使用Framemaker - 這是我必須使用的軟件。 。 。
我很困惑的是如何將源代碼格式化爲我的文檔的一部分。有沒有人爲技術文件做過這件事,並且遇到任何指示或提示?到目前爲止,我的谷歌搜索沒有產生任何與我需要做的事情相關的東西。
我必須在Framemaker中編寫一份技術文檔,解釋各種編程源代碼。如何格式化Framemaker文檔中的源代碼?
所以,我的文檔由一堆文字,接着一堆源代碼(Java,XML),再其次是更多的文字等
這個問題不是我是否應該或不應該使用Framemaker - 這是我必須使用的軟件。 。 。
我很困惑的是如何將源代碼格式化爲我的文檔的一部分。有沒有人爲技術文件做過這件事,並且遇到任何指示或提示?到目前爲止,我的谷歌搜索沒有產生任何與我需要做的事情相關的東西。
至少,爲代碼示例創建段落樣式,使用良好的等寬字體,並且不要忘記關閉連字符。
當我以前這樣做時,我會創建一個表格樣式並將代碼粘貼到那裏,所以我在它上面有一個很好的標題頭,並且它有點突出。唯一的問題是Frame表格單元格不會突破分頁符,所以如果你的代碼比頁面長或者可能會低於頁面底部,你需要在表格中創建多行,分解行中的代碼。
從幾年前我在這篇文章中寫到的一篇論文,將在下週再次發佈。
排印主要關注的易讀性,並有工具,實踐和傳統 追溯到幾年上數百乃至數千 自然語言設置文本時依靠。但是,計算機程序不是用自然語言編寫的。它們是用'編程語言'編寫的:人造語言,它們有自己的語法規則,它們自己的表示約定以及它們自己的易讀性標準。計算機 代碼因此是排版的特殊領域,就像音樂,數學和化學一樣。 這些域有它們自己的規則,這些規則不是設置天然 語言時使用的規則。
計算機編程本身是最近的起源,以及 實踐類型設置它的不回去超過45歲:中 計算機代碼顯著卷只在過去的20年或更短的時間已經出版。相關的排版規則尚不成熟或實際上並不存在,而且該領域從業人員的印刷要求也很低,正如您通過檢查許多貿易書籍所看到的那樣。沒有理由爲什麼你不能嘗試做得更好。
使用無襯線字體。在我的一本書中,我使用了相同的字體系列,FF Scala作爲文本,FF Scala Sans作爲代碼。我認爲它看起來不錯,但有相反的意見:這些可能會迫使你使用等寬字體,儘管我個人認爲這已經過時了。避免信使,它不與任何東西混合。
縮進是符號的一部分。您必須尊重現有的左縮進。源代碼已經被選中。最多將每個標籤減少到一個或兩個空格,否則將耗盡水平空間。
儘量減少垂直空間,例如:禁止空行。嘗試將整個示例放到一個頁面上。讓它浮動,如果有必要做到這一點。
換行符是符號的一部分。未諮詢作者不要添加換行符。
引號是符號的一部分。不要將單人更改爲雙人或反之。
理由:計算機程序總是被寫入,瀏覽和設置左對齊,右對齊。
分頁符。在書中設置計算機代碼時,分頁符不能遵循排版自然語言時使用的簡單的孤形/寡婦原則。相反,如果可能的話,代碼的邏輯'塊'必須保持在一起。印刷工 通常不可能確定代碼中的塊邊界,儘管空白行通常是分頁的可接受的 點。 '塊註釋'應與下面的代碼塊保持一致。 如果您不知道這些是什麼,請諮詢作者。
連字符。編程語言不是自然語言,並且不遵守通常的連字慣例。如果需要連字符,請諮詢作者,或者不要。除非按照作者的指示,否則程序文本中的單詞不能連字符或斷行。
大寫和小寫。程序代碼中的情況通常對計算機很重要,實際上對於作者和他們的讀者來說也是如此。通常使用僅在情況下不同,表示不同事物的單詞對。 BufferedOutputStream和bufferedOutputStream。 程序員,特別是作者程序員,通常是高度系統化的,對於印刷工(或其他程序員)來說可能不一定有意義。
切實可行的建議
這很好,謝謝。任何關於Framemaker的好書的建議?我很想在一本書中使用Adobe的課堂。但是也許你知道更好的通用介紹? – 2009-07-31 02:59:21