bug-groff
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug #64454] [tbl] 'u' column modifier ("stagger") does not affect text


From: G. Branden Robinson
Subject: [bug #64454] [tbl] 'u' column modifier ("stagger") does not affect text block
Date: Fri, 4 Aug 2023 19:50:06 -0400 (EDT)

Follow-up Comment #7, bug #64454 (project groff):

Well, I should have known it wouldn't be that simple.  :-|

However, I can't _quite_ reproduce your results.

For me, the entry starting "underling" is aligned with the two cells to its
left.

But, I'm running Git HEAD plus my working copy changes.

Here are all the _tbl_ commits since 1.23.0.


commit 59233c0d33d74817dd2021e283e1d12990426b2d (HEAD -> master)
Author: G. Branden Robinson <g.branden.robinson@gmail.com>
Date:   Fri Aug 4 18:28:52 2023 -0500

    [tbl]: Fix row staggering of text blocks.
    
    * src/preproc/tbl/table.cpp: Add C preprocessor macro storing a "text
      block row staggering macro".
    
      (block_entry::position_vertically): Call it in generated output with a
      negative half-vee motion.
    
      (block_entry::position_vertically, left_block_entry::print)
      (right_block_entry::print, center_block_entry::print)
      (alphabetic_block_entry::print): Call it in generated output with a
      positive half-vee motion.
    
      (table::init_output): Write out its definition in generated output.
      It wraps the `sp` request.  If we're in a diversion, use the `\!`
      technique to recursively call ourselves and bubble up the spacing
      request a diversion level (spacing requests of anything other than 1v
      are ignored in diversions).  Otherwise, invoke the request.
    
    Fixes <https://savannah.gnu.org/bugs/?64454> a.k.a. Debian #1038391.
    Thanks to наб for the report and a good test case.
    
    ANNOUNCE: Credit наб.

commit 0ef363e278f01ae27c17658d90033e29b8fd0425
Author: G. Branden Robinson <g.branden.robinson@gmail.com>
Date:   Fri Aug 4 18:17:45 2023 -0500

    [tbl]: Regression-test Debian #1038391.
    
    * src/preproc/tbl/tests/align-staggered-text-blocks-correctly.sh: Do it.
    * src/preproc/tbl/tbl.am (tbl_TESTS): Run test.
    
    Test fails at this commit.

commit 1f870e6d9171f66a4b20c9cb3504262f049032c5
Author: G. Branden Robinson <g.branden.robinson@gmail.com>
Date:   Fri Aug 4 17:55:33 2023 -0500

    tbl(1): Correct error; row staggering is 10th ed.

commit c076c8b6c49434cfe14fe44547aa8b76ca237c85
Author: G. Branden Robinson <g.branden.robinson@gmail.com>
Date:   Mon Jul 17 19:38:36 2023 -0500

    [tbl]: Fix post-1.23.0 regression.
    
    * src/preproc/tbl/main.cpp (process_format): Fix thinkos introduced in
      commit ba420961c3, 19 May, which caused the first character after
      [PpVv] column modifiers to be ignored.  Problem visible in typeset
      renderings of our "ms.ms" document, where some table entries were
      getting rendered at a type size of 1p.

commit 652d2c585071f0804f6dfc268d09987978d305fc
Author: G. Branden Robinson <g.branden.robinson@gmail.com>
Date:   Fri May 19 04:29:29 2023 -0500

    [tbl]: Refactor type size, vert spacing handling.
    
    * src/preproc/tbl/table.h (struct inc_number): Rename this...
      (struct size_expression): ...to this, and change its member types.
      The `inc` `short` becomes a `relativity` enum because it only ever
      takes 3 values.  The `val` short becomes an `int`, undoing what I
      suspect to be premature optimization.
    
    * src/preproc/tbl/main.cpp (entry_modifier::entry_modifier)
      (entry_format::debug_print, process_format):
    * src/preproc/tbl/table.cpp (set_modifier, set_inline_modifier)
      (restore_inline_modifier): Update to reflect new types and enum
      literals.

commit 4e26290a85040da43fe3b1e379a87a3689e10c58
Author: G. Branden Robinson <g.branden.robinson@gmail.com>
Date:   Fri May 19 03:48:16 2023 -0500

    [tbl]: Diagnose premature EOF in more places.
    
    * src/preproc/tbl/main.cpp (process_format): Check for EOF after eating
      spaces and tabs when processing [pPvVwW] column modifiers, and emit an
      appropriate error diagnostic.  This was already being done for [fFmM].

commit ba420961c3ead021fec784420eb2ea03bdeffe85
Author: G. Branden Robinson <g.branden.robinson@gmail.com>
Date:   Fri May 19 03:45:18 2023 -0500

    [tbl]: Process 'p' and 'v' more Postelianly.
    
    * src/preproc/tbl/main.cpp (process_format): Accept (and discard) space
      and tab characters after [pPvV] in a column descriptor, as is already
      done for [fFmMwW].  Modify [wW] to use the same loop style as the
      others, for consistency.

commit ad4d3fb78dfd14d466ee8f468b8ab4c7b4754554
Author: G. Branden Robinson <g.branden.robinson@gmail.com>
Date:   Fri Apr 28 06:16:10 2023 -0500

    [tbl]: Fix Savannah #64122.
    
    * src/preproc/tbl/table.cpp (table::init_output): Specify scaling unit
      when using `hym` and `hys` requests.  Continues commit cee547e883, 30
      January 2021.
    
    Thanks to Frederic Chartier and Peter Schaffter for the report.

commit c2033f0d36374af86d21750489deaa789e8513ed
Author: G. Branden Robinson <g.branden.robinson@gmail.com>
Date:   Fri Apr 28 06:15:38 2023 -0500

    [tbl]: Regression-test Savannah #64122.
    
    * src/preproc/tbl/tests/save-and-restore-hyphenation-parameters.sh:
      Update input and add check.
    
    Test fails at this commit.

commit 0b631d6efce5f08a9eaeb33821dc914fcfd8a2a0
Author: G. Branden Robinson <g.branden.robinson@gmail.com>
Date:   Sat Feb 4 01:20:08 2023 -0600

    [tbl]: Trivially refactor ("line" -> "rule").
    
    [tbl]: Trivially refactor.  Rename variables and functions to
    use the term "rule" rather than "line".  The value of the term
    "rule" is that it is not confusable with "lines" of (text) input
    or output.
    
    * src/preproc/tbl/main.cpp
      (struct format) <vline>:
      (format::format) <vline>:
      (format::add_rows) <old_vline, vline>:
      (format::~format) <vline>:
      (struct input_entry_format) <vline, vline_count>:
      (input_entry_format::input_entry_format) <vline, vline_count>:
      (input_entry_format::debug_print) <vline, vline_count>:
      (process_format) <vline_count>:
      (process_data) ([anonymous] enum) <SINGLE_HLINE, DOUBLE_HLINE>:
    * src/preproc/tbl/table.cpp:
    * src/preproc/tbl/table.h
      (enum format_type) <FORMAT_HLINE, FORMAT_DOUBLE_HLINE>
      (class table) <vline, vline_spanned, ([anonymous] enum)
      <HAS_TOP_VLINE, HAS_TOP_HLINE>, add_single_hline,
      add_double_hline, add_vlines, print_single_hline, print_double_hline:
      Rename these...
    
    * src/preproc/tbl/main.cpp
      (struct format) <vrule>:
      (format::format) <vrule>:
      (format::add_rows) <old_vrule, vrule>:
      (format::~format) <vrule>:
      (struct input_entry_format) <vrule, vrule_count>:
      (input_entry_format::input_entry_format) <vrule, vrule_count>:
      (input_entry_format::debug_print) <vrule, vrule_count>:
      (process_format) <vrule_count>:
      (process_data) ([anonymous] enum) <SINGLE_HRULE, DOUBLE_HRULE>:
    * src/preproc/tbl/table.cpp:
    * src/preproc/tbl/table.h
      (enum format_type) <FORMAT_HRULE, FORMAT_DOUBLE_HRULE>
      (class table) <vrule, vrule_spanned, ([anonymous] enum)
      <HAS_TOP_VRULE, HAS_TOP_HRULE>, add_single_hrule,
      add_double_hrule, add_vrules, print_single_hrule,
      print_double_hrule: ...to these.

commit 8209b72061ea7fb0380bdb42e6e68d80117aac7c
Author: G. Branden Robinson <g.branden.robinson@gmail.com>
Date:   Sat Feb 25 18:44:58 2023 -0600

    [tbl]: Fix Savannah #63838.
    
    * src/preproc/tbl/table.cpp (table::add_entry): Throw error diagnostic
      if table entry ends in the zero-motion escape sequence `\z`.  This is
      nonsense and provokes baffling diagnostics from the formatter.  Stick
      user's nose directly into the problem.
    
    Fixes <https://savannah.gnu.org/bugs/?63838>.  Thanks to the mandoc(1)
    project for documenting the issue in a regression test.
    
    Also annotate a null pointer with `nullptr` comment to ease any future
    transition to C++11, which defines it as a keyword.

commit 38a9451d75d2041b6076cd15f1c20cb70ca192b2
Author: G. Branden Robinson <g.branden.robinson@gmail.com>
Date:   Fri Apr 28 05:06:38 2023 -0500

    [tbl]: Update conventions used in test script.
    
    * src/preproc/tbl/tests/save-and-restore-hyphenation-parameters.sh:
      Migrate to more recent test conventions, emitting the formatted output
      and updating the style of shell usage.  Eliminate use of hard tabs in
      table, for readability.  Use table format case convention now
      exemplified in tbl(1) man page.


This will require more thought.


    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?64454>

_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]