nextcloud / nextcloud/text

Description lists

Open
#6,770 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
JavaScript
Stars
659
Forks
133
Avg merge
1d 20h
Merged PRs (30d)
110

Description

Is your feature request related to a problem? Please describe.
Nextcloud markdown doesn't have a syntax for description lists.

Describe the solution you'd like
Add support for a description list syntax, such as the one implemented by HedgeDoc:

Term A

: Description of term A.

Term B
: Description of Term B.


Term C
: First description of term C.
: Second description of term C.

Term D
: First description of term D.

: Second description of term D.

Up to one empty line between a title and a corresponding description should be allowed (as shown in Term A).

At least one empty line between the last description of one title and the next title should be required.

One or more empty lines between two descriptions corresponding to the same title should be allowed (as shown in Term D).

The above markdown should be equivalent to the following HTML:

<dl>
    <dt>Term A</dt>
    <dd>Description of term A.</dd>
    <dt>Term B</dt>
    <dd>Description of term B.</dd>
    <dt>Term C</dt>
    <dd>First description of term C.</dd>
    <dd>Second description of term C.</dd>
    <dt>Term D</dt>
    <dd>First description of term D.</dd>
    <dd>Second description of term D.</dd>
<dl>

Describe alternatives you've considered
Not use description lists, but that's not really an alternative.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue provides Markdown examples and their expected

,
, and
output; start by locating the project's Markdown parsing and editor-rendering entry points. Use the described spacing, repeated-description, and multiple-term cases as acceptance examples, with the work done when they produce the specified HTML.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, markdown
Domain
content, frontend
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.