⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 stylesheet.dsl

📁 PostgreSQL 8.1.4的源码 适用于Linux下的开源数据库系统
💻 DSL
📖 第 1 页 / 共 2 页
字号:
		      0pt)    keep-with-next?: #t    (process-children)))(define %varlistentry-indent% 2em)(element (varlistentry listitem)  (make sequence    start-indent: (+ (inherited-start-indent) %varlistentry-indent%)    (process-children)));; Whitespace fixes for itemizedlists and orderedlists(define (process-listitem-content)  (if (absolute-first-sibling?)      (make sequence        (process-children-trim))      (next-match)));; Default stylesheets format simplelists as tables.  This spells;; trouble for Jade.  So we just format them as plain lines.(define %simplelist-indent% 1em)(define (my-simplelist-vert members)  (make display-group    space-before: %para-sep%    space-after: %para-sep%    start-indent: (+ %simplelist-indent% (inherited-start-indent))    (process-children)))(element simplelist  (let ((type (attribute-string (normalize "type")))        (cols (if (attribute-string (normalize "columns"))                  (if (> (string->number (attribute-string (normalize "columns"))) 0)                      (string->number (attribute-string (normalize "columns")))                      1)                  1))        (members (select-elements (children (current-node)) (normalize "member"))))    (cond       ((equal? type (normalize "inline"))	(if (equal? (gi (parent (current-node)))		    (normalize "para"))	    (process-children)	    (make paragraph	      space-before: %para-sep%	      space-after: %para-sep%	      start-indent: (inherited-start-indent))))       ((equal? type (normalize "vert"))        (my-simplelist-vert members))       ((equal? type (normalize "horiz"))        (simplelist-table 'row    cols members))))) (element member  (let ((type (inherited-attribute-string (normalize "type"))))    (cond     ((equal? type (normalize "inline"))      (make sequence	(process-children)	(if (not (last-sibling?))	    (literal ", ")	    (literal ""))))      ((equal? type (normalize "vert"))       (make paragraph	 space-before: 0pt	 space-after: 0pt))      ((equal? type (normalize "horiz"))       (make paragraph	 quadding: 'start	 (process-children))))));; Jadetex doesn't handle links to the content of tables, so;; indexterms that point to table entries will go nowhere.  We fix;; this by pointing the index entry to the table itself instead, which;; should be equally useful in practice.(define (find-parent-table nd)  (let ((table (ancestor-member nd ($table-element-list$))))    (if (node-list-empty? table)	nd	table)))	 ;; (The function below overrides the one in print/dbindex.dsl.)(define (indexentry-link nd)  (let* ((id        (attribute-string (normalize "role") nd))         (prelim-target (find-indexterm id))         (target    (find-parent-table prelim-target))         (preferred (not (node-list-empty?                          (select-elements (children (current-node))                                           (normalize "emphasis")))))         (sosofo    (if (node-list-empty? target)                        (literal "?")                        (make link                          destination: (node-list-address target)                          (with-mode toc-page-number-mode                            (process-node-list target))))))    (if preferred        (make sequence          font-weight: 'bold          sosofo)        sosofo)));; By default, the part and reference title pages get wrong page;; numbers: The first title page gets roman numerals carried over from;; preface/toc -- we want arabic numerals.  We also need to make sure;; that page-number-restart is set of #f explicitly, because otherwise;; it will carry over from the previous component, which is not good.;;;; (This looks worse than it is.  It's copied from print/dbttlpg.dsl;; and common/dbcommon.dsl and modified in minor detail.)(define (first-part?)  (let* ((book (ancestor (normalize "book")))	 (nd   (ancestor-member (current-node)				(append				 (component-element-list)				 (division-element-list))))	 (bookch (children book)))    (let loop ((nl bookch))      (if (node-list-empty? nl)	  #f	  (if (equal? (gi (node-list-first nl)) (normalize "part"))	      (if (node-list=? (node-list-first nl) nd)		  #t		  #f)	      (loop (node-list-rest nl)))))))(define (first-reference?)  (let* ((book (ancestor (normalize "book")))	 (nd   (ancestor-member (current-node)				(append				 (component-element-list)				 (division-element-list))))	 (bookch (children book)))    (let loop ((nl bookch))      (if (node-list-empty? nl)	  #f	  (if (equal? (gi (node-list-first nl)) (normalize "reference"))	      (if (node-list=? (node-list-first nl) nd)		  #t		  #f)	      (loop (node-list-rest nl)))))))(define (part-titlepage elements #!optional (side 'recto))  (let ((nodelist (titlepage-nodelist 		   (if (equal? side 'recto)		       (reference-titlepage-recto-elements)		       (reference-titlepage-verso-elements))		   elements))        ;; partintro is a special case...	(partintro (node-list-first		    (node-list-filter-by-gi elements (list (normalize "partintro"))))))    (if (part-titlepage-content? elements side)	(make simple-page-sequence	  page-n-columns: %titlepage-n-columns%	  ;; Make sure that page number format is correct.	  page-number-format: ($page-number-format$)	  ;; Make sure that the page number is set to 1 if this is the	  ;; first part in the book	  page-number-restart?: (first-part?)	  input-whitespace-treatment: 'collapse	  use: default-text-style	  	  ;; This hack is required for the RTF backend. If an external-graphic	  ;; is the first thing on the page, RTF doesn't seem to do the right	  ;; thing (the graphic winds up on the baseline of the first line	  ;; of the page, left justified).  This "one point rule" fixes	  ;; that problem.	  (make paragraph	    line-spacing: 1pt	    (literal ""))      	  (let loop ((nl nodelist) (lastnode (empty-node-list)))	    (if (node-list-empty? nl)		(empty-sosofo)		(make sequence		  (if (or (node-list-empty? lastnode)			  (not (equal? (gi (node-list-first nl))				       (gi lastnode))))		      (part-titlepage-before (node-list-first nl) side)		      (empty-sosofo))		  (cond		   ((equal? (gi (node-list-first nl)) (normalize "subtitle"))		    (part-titlepage-subtitle (node-list-first nl) side))		   ((equal? (gi (node-list-first nl)) (normalize "title"))		    (part-titlepage-title (node-list-first nl) side))		   (else		    (part-titlepage-default (node-list-first nl) side)))		  (loop (node-list-rest nl) (node-list-first nl)))))	  (if (and %generate-part-toc%		   %generate-part-toc-on-titlepage%		   (equal? side 'recto))	      (make display-group		(build-toc (current-node)			   (toc-depth (current-node))))	      (empty-sosofo))	  ;; PartIntro is a special case	  (if (and (equal? side 'recto)		   (not (node-list-empty? partintro))		   %generate-partintro-on-titlepage%)	      ($process-partintro$ partintro #f)	      (empty-sosofo)))	(empty-sosofo))))(define (reference-titlepage elements #!optional (side 'recto))  (let ((nodelist (titlepage-nodelist 		   (if (equal? side 'recto)		       (reference-titlepage-recto-elements)		       (reference-titlepage-verso-elements))		   elements))        ;; partintro is a special case...	(partintro (node-list-first		    (node-list-filter-by-gi elements (list (normalize "partintro"))))))    (if (reference-titlepage-content? elements side)	(make simple-page-sequence	  page-n-columns: %titlepage-n-columns%	  ;; Make sure that page number format is correct.	  page-number-format: ($page-number-format$)	  ;; Make sure that the page number is set to 1 if this is the	  ;; first part in the book	  page-number-restart?: (first-reference?)	  input-whitespace-treatment: 'collapse	  use: default-text-style	  	  ;; This hack is required for the RTF backend. If an external-graphic	  ;; is the first thing on the page, RTF doesn't seem to do the right	  ;; thing (the graphic winds up on the baseline of the first line	  ;; of the page, left justified).  This "one point rule" fixes	  ;; that problem.	  (make paragraph	    line-spacing: 1pt	    (literal ""))      	  (let loop ((nl nodelist) (lastnode (empty-node-list)))	    (if (node-list-empty? nl)		(empty-sosofo)		(make sequence		  (if (or (node-list-empty? lastnode)			  (not (equal? (gi (node-list-first nl))				       (gi lastnode))))		      (reference-titlepage-before (node-list-first nl) side)		      (empty-sosofo))		  (cond		   ((equal? (gi (node-list-first nl)) (normalize "author"))		    (reference-titlepage-author (node-list-first nl) side))		   ((equal? (gi (node-list-first nl)) (normalize "authorgroup"))		    (reference-titlepage-authorgroup (node-list-first nl) side))		   ((equal? (gi (node-list-first nl)) (normalize "corpauthor"))		    (reference-titlepage-corpauthor (node-list-first nl) side))		   ((equal? (gi (node-list-first nl)) (normalize "editor"))		    (reference-titlepage-editor (node-list-first nl) side))		   ((equal? (gi (node-list-first nl)) (normalize "subtitle"))		    (reference-titlepage-subtitle (node-list-first nl) side))		   ((equal? (gi (node-list-first nl)) (normalize "title"))		    (reference-titlepage-title (node-list-first nl) side))		   (else		    (reference-titlepage-default (node-list-first nl) side)))		  (loop (node-list-rest nl) (node-list-first nl)))))	  (if (and %generate-reference-toc%		   %generate-reference-toc-on-titlepage%		   (equal? side 'recto))	      (make display-group		(build-toc (current-node)			   (toc-depth (current-node))))	      (empty-sosofo))	  ;; PartIntro is a special case	  (if (and (equal? side 'recto)		   (not (node-list-empty? partintro))		   %generate-partintro-on-titlepage%)	      ($process-partintro$ partintro #f)	      (empty-sosofo)))	(empty-sosofo))))]]> <!-- %output-print --><!-- Plain text output customization ............................... --><!--This is used for making the INSTALL file and others.  We customize theHTML stylesheets to be suitable for dumping plain text (via Netscape,Lynx, or similar).--><![ %output-text; [(define %section-autolabel% #f)(define %chapter-autolabel% #f)(define $generate-chapter-toc$ (lambda () #f));; For text output, produce "ASCII markup" for emphasis and such.(define ($asterix-seq$ #!optional (sosofo (process-children)))  (make sequence    (literal "*")    sosofo    (literal "*"))) (define ($dquote-seq$ #!optional (sosofo (process-children)))  (make sequence    (literal (gentext-start-quote))    sosofo    (literal (gentext-end-quote)))) (element (para command) ($dquote-seq$))(element (para emphasis) ($asterix-seq$))(element (para filename) ($dquote-seq$))(element (para option) ($dquote-seq$))(element (para replaceable) ($dquote-seq$))(element (para userinput) ($dquote-seq$))]]> <!-- %output-text -->  </style-specification-body> </style-specification> <external-specification id="docbook" document="dbstyle"></style-sheet>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -