~kst

Recent activity

[PATCH] fix incorrect memory fence usage in zix ringbuf 2 years ago

From Yu Fang to ~alextee/zrythm-devel

The original implementation seems to be misguided by the naming of
barrier macros. The barrier before read pointer increment should be a
release fence instead of an acquire fence,

  -  ZIX_READ_BARRIER();
  +  ZIX_WRITE_BARRIER();
     ring->read_head = (r + size) & ring->size_mask;

or otherwise the fence cannot prevent store-store reordering [1], i.e.
stores happens before pointer increment might be visible after the
increment to the other thread. I also added the missing acquire fences
when loading pointer from other thread.

I don't think this bug would lead to a major problem, since it only
[message trimmed]

[PATCH scdoc] Suppress sentence spacing after end-of-sentence characters. 4 years ago

From kst to ~sircmpwn/public-inbox

This should fix the inconsistent spacing issue mentioned in [1]. I also
fixed a spacing in issue in the man page.

[1]: https://lists.sr.ht/~sircmpwn/public-inbox/%3CC4VKFSIFINOA.X6VCIU2AV88M%40szk%3E
---
 scdoc.5.scd      | 2 +-
 src/main.c       | 9 ++++++++-
 test/line-breaks | 9 +++++++++
 3 files changed, 18 insertions(+), 2 deletions(-)

diff --git a/scdoc.5.scd b/scdoc.5.scd
index f4d393b..b548b81 100644
--- a/scdoc.5.scd
+++ b/scdoc.5.scd
[message trimmed]

Re: [scdoc] Inconsistent sentence spacing 4 years ago

From k.st to ~sircmpwn/public-inbox

As a follow-up to the second solution, Pandoc uses '\ ' to escape
sentence spaces in markdown, similar to TeX, and maintains an
abbreviation list for common abbreviations.

The drawback of this approach is that it adds some noise to the source
file.

Both approaches should be fairly easy to implement. I could send a patch
after some inputs.

[scdoc] Inconsistent sentence spacing 4 years ago

From k.st to ~sircmpwn/public-inbox

Hi Drew,

There is a subtle bug in the man pages produces by scdoc. This afffects
the man pages of aerc, wayland, and any other projects that depend on
it.

roff's syntax has a peculiar requirement. It *enforces* semantic
line-breaks [1].

For example, this is incorrect:

    This is a sentence. This is another sentence.

We have to insert a line-break after each sentence: