Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>markdown-outline-helperNew to Visual Studio Code? Get it now.

markdown-outline-helper

John Tao

|
57 installs
| (0) | Free
A minimal markdown outline helper to toggle between list and headings, convert hierarchical list into flat items, and to sort hierarchical items
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

markdown-outline-helper

Coverage Status

1) Intro

  1.1) A minimal markdown outline helper to convert between list and headings, convert hierarchical list into flat items, and to sort hierarchical items

2) Motivation

  2.1) I use VSCode a lot, and with multi-cursor, I can change almost anything I want in a breeze.

  2.2) Except for the following cases...

    2.2.1) Generate ordered list with hierarchy prefix (like this --> 3-1; 3-1-2...)

    2.2.2) Convert hierarchical items into flat items (e.g. " - child" (beneath the "- parent") --> parent/ child)

    2.2.3) Sort child nodes in a hierarchical list

  2.3) A practice project (node.js, typescript, unit test, vscode extension api...)

    2.3.1) Hence, I didn't do the market research before starting

3) Demo

  3.1) Toggle between list and headings

Toggle between list and headings

  3.2) Sort hierarchical list

Sort hierarchical list

  3.3) Convert hierarchical list into flat items

Convert hierarchical list into flat items

4) Proposal

  4.1) Apply to the outlines where the cursor is located

    4.1.1) Should expand range automatically to match the range of the outlines

    4.1.2) NO PLANS to implement multi-selection

    4.1.3) NO PLANS to implement multi-block detection

  4.2) Use simple prompt for user input

    4.2.1) Positional input with hints, one to go

  4.3) Convert between list and heading (for github readme)

    4.3.1) With customizable indentation

    4.3.2) (Optional) Advanced feature: let user to decide the format (via template)

  4.4) Convert hierarchical list into flat items

    4.4.1) With customizable delimiter

    4.4.2) Ignore LogSeq tokens, skip block references by default

    4.4.3) Strip off LogSeq hierarchies (i.e. ~~tagA/ tagB/~~ tagC)

    4.4.4) NO PLANS to do bi-directional conversion

  4.5) Sort hierarchical items

    4.5.1) Order by ASC or DESC

    4.5.2) Sort until target level

    4.5.3) Sort without LogSeq tokens

    4.5.4) ------- (Optional) Below items are advanced features -------

    4.5.5) Case-sensitive sort options

    4.5.6) Skip sort on certain items

    4.5.7) Decide which level to sort or not

    4.5.8) Sort with customizable priorities

  4.6) Code Implementation

    4.6.1) Use Typescript

    4.6.2) Build unit tests

    4.6.3) Should use modular design

  4.7) Code Deployment

    4.7.1) Should go on marketplace

    4.7.2) Should try GitHub Actions and Codecov

  • Contact us
  • Jobs
  • Privacy
  • Terms of use
  • Trademarks
© 2023 Microsoft