Files
Sprinter-SDCC/examples/mdview/SAMPLE.MD
T
snark13 737c974400 Add mdview markdown viewer, reorganize tests/examples and libc layout
- Split tests/ (libc feature tests) and examples/ (real apps); shared
  app.mk in repo root, was examples/example.mk
- libc/io/* split into libc/{conio,env,errno,file,mouse,string,sys,
  time,video}/ — clearer module boundaries
- New examples/mdview/: markdown viewer (Phases 1-5 + light nested
  lists). Headers (H1-H4), HR, ulist/olist/quote with nesting via
  leading spaces, fenced code blocks, inline emphasis (bold/italic/
  underscore/code), wrap/unwrap mode with soft wrap (F2), horizontal
  pan (← →) with '>' truncation indicator
- libc additions: scroll() in conio (ESTEX SCROLL), strlwr/strupr,
  gets() test
- Makefile updates across tests/ for the new shared app.mk path

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-04 22:23:36 +03:00

4.0 KiB

MDVIEW Sample Document

This is a sample Markdown file for testing the Sprinter mdview text viewer. Phase 3 adds inline emphasis: bold, italic and underscore runs render with distinct background colours.


Section: Inline emphasis

Plain words mixed with bold words, italic words, underscore words and code words to verify all four styles render with their own colours.

A single bold stretch, then a single italic stretch, then a single underscore stretch, then a single code stretch, all on the same line.

A long italic run that spans multiple words and several columns before it closes here and continues plain.

Inline code with punctuation: call printf("%d\n", x) then check the result; or use argv[0] to grab the program name.

Unclosed emphasis (open **bold left dangling) — should auto-close at the end of the line so the next line starts clean.

Conflict cases: bold with a stray * inside stays bold, and italic with a stray _ inside stays italic, and code with **bold** inside stays code.

Section: Lorem ipsum

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Section: Lists

Unordered (dash):

  • alpha
  • bravo
  • charlie

Unordered (asterisk):

  • delta
  • echo

Unordered (plus):

  • foxtrot
  • golf

Numbered list (digits + period highlighted):

  1. first
  2. second
  3. third
  4. tenth — verifies multi-digit numbering
  5. ninety-ninth

Numbered with parens:

  1. parenthesised one
  2. parenthesised two

Nested lists (light v1 — leading spaces enable detection at non-zero col; no hanging indent in wrap continuation yet):

  • top level alpha
    • nested level 1 bravo
    • nested level 1 charlie
      • nested level 2 delta
      • nested level 2 echo
        • nested level 3 foxtrot
    • nested level 1 golf
  • top level hotel

Mixed nested:

  1. first top
    1. nested numeric
    2. nested numeric
      • mixed bullet under numeric
      • another bullet
    3. nested numeric
  2. second top

Section: Blockquote

Single-line blockquote.

Multi-line blockquote starts here. Each line keeps the > prefix highlighted while the body stays plain text.

Section: Code

Inline code: printf("hello").

Fenced block (lines inside should render with code attribute on the full row, no inline parsing — note the stars and italics below remain literal):

int main(void) {
    /* **not bold**, *not italic*, `not nested` */
    return 42;
}

After the block, normal bold parsing resumes.

Section: Long line truncation

This line is intentionally long to verify that the viewer truncates at 80 columns instead of wrapping or scrolling horizontally. Anything past the 80th visible column should simply not appear on screen.

Section: Tabs

Indented with tabs:

tab-indent level 1
	tab-indent level 2
		tab-indent level 3

Section: Blockquote

Markdown blockquotes start with a greater-than sign at column zero. Multiple lines look like this.

Subsection: deeper heading (H3)

The line above is an H3 — it should render in a colour distinct from H1 and H2.

Subsubsection: H4 and below

H4 (and the rarely-seen H5/H6) all share the H4 colour slot.


Section: Filler

The remaining content exists to make the document scroll past one viewport.

Line 50 ........... approx. Line 51 ........... . Line 52 ........... .. Line 53 ........... ... Line 54 ........... .... Line 55 ........... ..... Line 56 ........... ...... Line 57 ........... ....... Line 58 ........... ........ Line 59 ........... ......... Line 60 ........... ..........

End-of-document marker. If you can see this line you can use Home / End to bounce between the start and finish of the file.