view xsls/directive.xsls @ 3072:7f493ec56c12

Renamed news page.
author Maxim Dounin <mdounin@mdounin.ru>
date Tue, 09 Apr 2024 18:14:16 +0300
parents 5188cb06bb13
children
line wrap: on
line source

<!--
  Copyright (C) Igor Sysoev
  Copyright (C) Nginx, Inc.
  -->

X:stylesheet {

    X:template = "directive" {
        <a name="{@name}"/>
        <!-- <center><h4> !{@name} </h4></center> -->
        <div class="directive">
        <table cellspacing="0">
        !! "syntax";
        !! "default";
        !! "context";
        </table>
        !! "appeared-in";
        </div>
        !! "para";
    }

    X:template = "syntax" {
        X:if "position() = 1" {
            X:text disable-output-escaping="yes" {
                &lt;tr&gt;
                &lt;th&gt;
            }
            !{document(concat($XML, '/i18n.xml'))
                       /i18n/text[@lang = $LANG]/item[@id='syntax']}
            X:text{:}
            X:text disable-output-escaping="yes" {
                &lt;/th&gt;
                &lt;td&gt;
            }
        }
        <code>
        <strong>
        !{../@name}
        </strong>
        X:if "count(node()) != 0" {
            X:text{ } !!;
        }
        X:if "@block = 'yes'" {
            X:text{ \{ ... \}}
        } else {
            X:text{;}
        }
        </code>
        <br/>
        X:if "position() = last()" {
            X:text disable-output-escaping="yes" {
                &lt;/td&gt;
                &lt;/tr&gt;
            }
        }
    }

    X:template = "default" {
        X:if "position() = 1" {
            X:text disable-output-escaping="yes" {
                &lt;tr&gt;
                &lt;th&gt;
            }
            !{document(concat($XML, '/i18n.xml'))
                       /i18n/text[@lang = $LANG]/item[@id='default']}
            X:text{:}
            X:text disable-output-escaping="yes" {
                &lt;/th&gt;
                &lt;td&gt;
            }
        }
        X:if "count(node()) = 0" {
            &#8212;
        } else {
            <pre>
            !{../@name}
            X:if "count(../syntax[@block='yes'])" {
                X:text{ \{} !!; X:text{\}}
            } else {
                X:text{ } !!; X:text{;}
            }
            </pre>
        }
        X:if "position() = last()" {
            X:text disable-output-escaping="yes" {
                &lt;/td&gt;
                &lt;/tr&gt;
            }
        }
    }

    X:template = "context" {
        X:if "position() = 1" {
            X:text disable-output-escaping="yes" {
                &lt;tr&gt;
                &lt;th&gt;
            }
            !{document(concat($XML, '/i18n.xml'))
                       /i18n/text[@lang = $LANG]/item[@id='context']}
            X:text{:}
            X:text disable-output-escaping="yes" {
                &lt;/th&gt;
                &lt;td&gt;
            }
        }
        <code>
        X:if "count(node()) = 0" {
            !{document(concat($XML, '/i18n.xml'))
                       /i18n/text[@lang = $LANG]/item[@id='context.any']}
        } else {
            !!;
        }
        </code>
        X:if "position() != last()" {
            X:text{, }
        } else {
            <br/>
            X:text disable-output-escaping="yes" {
                &lt;/td&gt;
                &lt;/tr&gt;
            }
        }
    }

    X:template = "appeared-in" {
        X:if "last() = 1" {
            <p>
            !{document(concat($XML, '/i18n.xml'))
                       /i18n/text[@lang = $LANG]/item
                       [@id='directive.version']}
            X:text{ }
            !!;.
            </p>
        } else {
            X:choose {
                X:when "position() = 1" {
                    X:text disable-output-escaping="yes" {
                        &lt;p&gt;
                    }
                    !{document(concat($XML, '/i18n.xml'))
                               /i18n/text[@lang = $LANG]/item
                               [@id='directive.versions']}
                    X:text{ }
                    !!;
                    X:if "last() > 2" {
                        X:text{,}
                    }
                    X:text{ }
                }
                X:when "position() != last()" {
                    !!;
                    X:text{, }
                }
                X:otherwise {
                    !{document(concat($XML, '/i18n.xml'))
                               /i18n/text[@lang = $LANG]/item
                               [@id='and']}
                    X:text{ }
                    !!;.
                    X:text disable-output-escaping="yes" {
                        &lt;/p&gt;
                    }
                }
            }
        }
    }
}