Permalink
Commits on Jan 9, 2017
  1. Merge pull request #463 from marcoscaceres/ansi_compliance

    style: ansi conforming comments
    geoffmcl committed on GitHub Jan 9, 2017
Commits on Jan 8, 2017
  1. Issue #469 #473 Bump to 5.3.13

    geoffmcl committed Jan 8, 2017
  2. Merge documentation of "command-line" and "configuration" options (Is…

    …sue #469) (#473)
    
    * Track tidy.1 before merging duplicate sections
    
    I am adding the file to the git repository to track and review
    the changes to this generated file. I will then update the XSLT
    transformation which produces this file to remove duplicate sections.
    As a first step, I will stop outputting duplicate sections; I will
    then merge them into existing sections. I will commit the changes
    to the generated file at each step.
    
    Related issue: #469
    
    * Also track changes in text rendering of the man page tidy.1
    
    The rendering to text was done with following command:
    
      /usr/bin/groff -Tascii -mandoc -c tidy.1
    
    This format should make the review of differences more readable.
    
    Related issue: #469
    
    * Remove duplicate sections: temporarily discard detailed options
    
    Related issue: #469
    
    * Generalize command line given in SYNOPSIS
    
    The new SYNOPSIS expresses the fact that multiple files can
    be provided as argument, and that options and files can be mixed
    (options apply only to the files specified after, not the ones before).
    
    It does not explain that there are actually two types of options; this
    shall be detailed afterwards: simple options (aka standard options) start
    with single dash while configuration options start with a double dash.
    Only the latter can be defined in configuration files, using their name
    without the double dash.
    
    I have also reformatted the terms 'options' and 'file' to be underlined,
    to follow conventions that I observed in other man pages (ls, grep, wget...)
    
    Related issue: #469
    
    * Regroup sentences related to options at the start of OPTIONS section
    
    This is an intermediate step before adapting the text to its new
    location. I will probably start the section with a paragraph to
    introduce the two different kinds of options. Then describe the
    "standard" options in more details. Then list the standard options.
    Then describe the configuration options in more details. Then list
    the configuration options, using a format similar to the one used
    for standard options.
    
    Related issue: #469
    
    * Describe "standard" and "expanded" options part of OPTIONS section
    
    The section now starts with a description of both types of options,
    and explains that the first part of the section concerns with the
    "standard" options while the second part of the section concerns with
    the "expanded" options.
    
    More details are provided about "standard" options, which are then
    listed individually.
    
    More details are then provided about "expanded" options and their
    usage on the command line and in configuration files. The configuration
    options are not listed yet. In order to avoid repeating a lot of
    information with every separate configuration option, I will first
    describe common values and formats; I will then describe each option
    more succinctly, like "standard" options.
    
    Related issue: #469
    
    * Remove redundant USAGE section
    
    The fact that the input file defaults to standard input
    and the output file to standard output is already indicated
    in the DESCRIPTION section. This was the only information
    left in this section at this point.
    
    Related issue: #469
    
    * Delete separation line
    
    The line used to separate "standard" usage from "extended" usage.
    Both forms are now integrated in the common description of OPTIONS.
    
    Related issue: #469
    
    * Delete DETAILED CONFIGURATION OPTIONS section
    
    The detailed configuration options are now described together
    with standard options in a common OPTIONS section.
    
    Related issue: #469
    
    * Delete duplicate SYNOPSIS section
    
    A single generalized SYNOPSIS now encompasses both kinds of options.
    
    Related issue: #469
    
    * Delete WARNING section, no longer relevant
    
    The WARNING referred to a separate section for the description
    of "standard" options. They are now described in the same OPTIONS
    section as "extended" options.
    
    Related issue: #469
    
    * Copy details of configuration options and file format to OPTIONS
    
    Just before listing all the configuration options, this is the
    expected place to describe the "extended" options in more details.
    The description was already worded as an introduction to the list
    of configuration options. I will update this description after having
    compacted entries which describe individual configuration options.
    
    Related issue: #469
    
    * Delete duplicate DESCRIPTION section
    
    This section has been merged into the generalized OPTIONS section.
    
    Related issue: #469
    
    * List configuration options at the end of the OPTIONS section
    
    This list is very long, with lots of duplicate information
    repeated for entries of the same type. The description of
    configuration options should be compacted to match as closely
    as possible the description of "standard" options.
    
    Related issue: #469
    
    * Delete duplicate OPTIONS section
    
    I contained the list of configuration options, which is now included
    at the end of the generalized OPTIONS section.
    
    Related issue: #469
    
    * Delete config-section template
    
    The template was now empty. Its contents have been merged
    into the cmdline-section template.
    
    Related issue: #469
    
    * Remove redundant sentence
    
    The sentence listed the five categories of configuration options.
    This kind of made sense when the options were listed in the following
    section. Now that they are listed just below, it has become redundant.
    
    Related issue: #469
    
    * Remove colon ':' at the end of configuration options categories
    
    The categories of "standard" options do not end with a colon;
    no title does actually.
    
    Related issue: #469
    
    * Remove extra lines before the list of configuration options
    
    Related issue: #469
    
    * Add double space after period '.  ' where missing
    
    For consistency with usage, sentences within paragraphs shall be
    separated by a double space rather than a single space. This was
    done in most places in the document, with only a few places missing.
    
    Related issue: #469
    
    * Delete irrelevant comment
    
    The comment refers to cmdline section at the start of the processing
    of configuration options. The cmdline options are opposed to
    config options in the context of this transformation. They are
    provided through two separate XML input files.
    
    Related issue: #469
    
    * Delete extra blank line before sample configuration file
    
    Related issue: #469
    
    * Remove multiple empty lines after heading of each options category
    
    Related issue: #469
    
    * Remove duplicate empty line before 'See also:' lines
    
    Related issue: #469
    
    * Clarify the terms used for both kinds of options
    
    I removed references to "standard" (or regular) command-line options
    and "extended" (or detailed) options. I used the terms featured in
    the description of the options which output XML files describing
    each kind of options:
    
      -xml-help
            list the command line options in XML format
    
      -xml-config
            list all configuration options in XML format
    
    The term for single-dash options is now (purely) command-line options
    while double-dash options are referred to as configuration options.
    
    Related issue: #469
    
    * Update copyright year to 2016
    
    * Clarify configuration options equivalent to command-line options
    
    I added a paragraph to explain the equivalence of a command-line
    option with a configuration option and value, and to explicit the
    format used to describe this equivalence in the description of
    command-line parameters.
    
    I moved the parentheses, which were on the last line, at the end
    of the description, to the first line at the end of the list of
    names for the command-line option.
    
    Related issue: #469
    
    * Use underlines (I) instead of bold (B) for option names in config example
    
    This is for consistency with the format used for the option names in
    the equivalent command-line example above, and in the other example
    of configuration file.
    
    Related issue: #469
    
    * Update copyright year to 2017
    
    * Add double dash before the name of configuration options
    
    This is a first step for the harmonization of the descriptions
    of command-line and configuration options.
    
    Related issue: #469
    
    * Reformat logically to separate formatting (bold) from text (option name)
    
    Related issue: #469
    
    * Move Type after name of configuration option
    
    This puts it in the position expected on the command line.
    
    Related issue: #469
    
    * Move default value after config option name and Type
    
    I tried different formats for the default value:
    
      --clean Boolean:no
      --clean Boolean[no]
    
    and more formats after I realized that the 'default' value is
    not applied when the value is omitted, but when the option is
    not used at all:
    
      --clean Boolean (initially: no)
      --clean Boolean (unset: no)
    
    I selected the less confusing format:
    
      --clean Boolean (no if unset)
    
    which is self-explanatory.
    
    Related issue: #469
    
    * Clarify that a configuration option cannot be used without a value
    
    For example, using --clean without a value is not equivalent to
    using -clean option:
    
      curl -s https://www.google.com | tidy --clean 2>&1 1>/dev/null | head -n 1
    
    results in:
    
      Config: missing or malformed argument for option: clean
    
    Related issue: #469
    
    * Add double dash before option names in 'See also' sections
    
    This is consistent with the format used at the top of the
    description of configuration options.
    
    Related issue: #469
    
    * Fix order of items in comment describing documentation of config options
    
    The 'seealso' comes last actually, after the description.
    
    * Break long lines to keep source code readable in a terminal (80 characters)
    
    This makes no change on the text generated by
    
      /usr/bin/groff -Tascii -mandoc -c tidy.1 > tidy.1.txt
    
    * Only output an empty line when Example section is present
    
    Otherwise, the description starts with an empty line when
    no Example section is present.
    
    Related issue: #469
    
    * Simplify matching of example elements with contents
    
    Using a template match instead of a named template,
    I will then add rules with higher priority to ignore
    examples for certain types of values, which are very
    redundant (identical for all options of the same type).
    
    Related issue: #469
    
    * Do not print redundant examples
    
    Examples for Boolean and AutoBool are redundant because they are
    described in the main text and identical for all options of that type.
    
    Examples for Tag names are redundant because they are redundant
    with the name of the Type, and identical for all options of that type.
    
    Examples for Integer are redundant because they are identical for
    all options of that type but one, where the value 0 is followed with
    a comment, but even in this case the examples are redundant because
    the comment for the value 0 is also included in the description.
    
    Related issue: #469
    
    * Rename 'Examples' section to 'Supported values' to clarify
    
    I also updated the description related to 'Examples' section
    in the introduction paragraphs to the configuration options.
    
    Related issue: #469
    
    * Use italics consistently for the names of option types
    
    Related issue: #469
    
    * Use capitalization with no extra style consistently for Type
    
    Previously, a mix of
    
      * Type set in bold font
      * Type set in regular font
      * "types" (quoted)
      * types (unquoted)
    
    was found. I replaced all instances by Type in regular font.
    
    Related issue: #469
    
    * Consistently use bold format for option values
    
    Both parameter names and values are now in bold,
    while keys and values for configuration files are in italics.
    
    Related issue: #469
    
    * Use the same format as other subsections for 'See also'
    
    The subsection is now flush left, in regular font, like
    the 'Supported values' subsection.
    
    The previous format was less adequate when the list wrapped
    to the next line (--new-inline-tags): wrapping started on
    the very first column, breaking the alignment of the rest of
    the description.
    
    Related issue: #469
    
    * Consistently indent with 2 spaces, use a single line between templates
    
    Parts of the file were indented with 2 spaces, others with 3 spaces.
    Parts of the templates were separated with two empty lines, others
    with a single one.
    
    * Remove temporary files used for step by step comparisons of man page
    
    Related issue: #469
    eric-brechemier committed with geoffmcl Jan 8, 2017
Commits on Dec 20, 2016
Commits on Oct 30, 2016
Commits on Oct 2, 2016
  1. Change to msvc140 2015 build

    geoffmcl committed Oct 2, 2016
Commits on Sep 11, 2016
  1. Merge branch 'issue-428'

    Conflicts:
    	version.txt
    
    This closes #428
    geoffmcl committed Sep 11, 2016
  2. Merge pull request #450 from marcoscaceres/as_attribute

    Add support for link 'as' attribute (closes #449)
    geoffmcl committed on GitHub Sep 11, 2016
Commits on Sep 10, 2016
Commits on Aug 23, 2016
Commits on Aug 8, 2016
  1. Merge branch 'master' into issue-428

    Conflicts:
    	version.txt
    geoffmcl committed Aug 8, 2016
Commits on Aug 4, 2016
  1. Merge pull request #445 from AdamMajer/fix_buffer_overflow

    Fix static buffer overrrun (issue #443)
    geoffmcl committed on GitHub Aug 4, 2016
Commits on Aug 2, 2016
  1. rebase issue-428

    geoffmcl committed Aug 2, 2016
  2. Fix static buffer overrrun (issue #443)

    result[6] is a fixed array of size 6, but in the process
    of copying data into it, we clobber the last allocated byte.
    
    Simplify some of the code by not calling redundant functions.
    AdamMajer committed Aug 2, 2016
Commits on Jul 29, 2016
  1. Issue #441 - add 'integrity' attribute.

    Bumped to 5.3.8 for this change...
    
    See also #418 and the merge #442
    
    Thanks @bdesham and @dengeist...
    geoffmcl committed Jul 29, 2016
  2. Merge pull request #442 from bdesham/add-integrity-attribute

    Add support for the "integrity" attribute
    geoffmcl committed on GitHub Jul 29, 2016
Commits on Jul 24, 2016
  1. Add support for the "integrity" attribute

    This attribute may be used on "link" and "script" elements. See
    http://www.w3.org/TR/2016/REC-SRI-20160623/#element-interface-extensions
    bdesham committed Jul 24, 2016
Commits on Jul 11, 2016
  1. Issue #433 #429 #426 - bump to 5.3.7 - avoid crash when no doc

    This bump also includes merge of #424 - licence fix, and #423 - add
    __GLIBC__ to long HAS_FUTIME list.
    
    And coincidentally #427 - an improved french translation!
    geoffmcl committed Jul 11, 2016
  2. Merge pull request #433 from nijel/fix-crash-upstream

    Avoid crash in tidyCleanAndRepair if document was not loaded
    geoffmcl committed on GitHub Jul 11, 2016
  3. Merge pull request #424 from danielhjames/patch-1

    Update LICENSE.md
    geoffmcl committed on GitHub Jul 11, 2016
  4. Merge pull request #423 from pinotree/glibc

    Set HAS_FUTIME=0 on any GNU libc platform
    geoffmcl committed on GitHub Jul 11, 2016
  5. Merge pull request #427 from vargenau/master

    Improve French translation.
    geoffmcl committed on GitHub Jul 11, 2016
Commits on Jul 10, 2016
  1. Merge pull request #420 from AdamMajer/compat_headers

    Add compatibility headers
    geoffmcl committed on GitHub Jul 10, 2016
Commits on Jul 7, 2016
  1. Avoid crash in tidyCleanAndRepair if document was not loaded

    These services can only be used when there is a document loaded, ie a
    lexer created.  But really should not be calling a Clean and Repair
    service with no doc!
    nijel committed Jun 29, 2016
Commits on Jul 2, 2016
Commits on Jul 1, 2016
  1. Issue #418 - Ensure TidyAttrID enum exactly matches table.

    The file tidyenum.h has an attribute ID enumeration that must exactly
    match the attribute_defs[] table in attrs.c.
    
    Originally some attempt was made to keep this enum in some sort of order
    but that should now be totally abandonned. Any 'new' attribute
    enumerations should be added just above the last N_TIDY_ATTRIBS, and
    likewise in the table, to avoid this problem.
    geoffmcl committed Jul 1, 2016