Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

chord-md-parser

Package Overview
Dependencies
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

chord-md-parser

guitar chords parser from markdown files

  • 0.0.2
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
1
Created
Source

chord markdown parser

Build Status

MarkDown Extractor

Extracts chords and lirics from markdown python code

import { Extractor } from 'chord-md-parser';
let extractor = new Extractor({
  md: {
    filepath: null,
    content: 'CONTENT'
  }
})

let song = extractor.getSong()
song // -> array with only song lirics and tablatures/chords

ChordParser

Split roots and override roots from a chord string.

import { ChordParser } from 'chord-md-parser';
let parser = new ChordParser()
let chord = parser.parse('Bb7(9)/Cb');

// -----------------------
chord === { root: 'Bb',
            flavors: '7(9)',
            rootOverride: 'Cb' }

ChordPrint

Print chord string from chord object.

import { ChordPrint } from 'chord-md-parser';

let printed = ChordPrint.print({
  root: 'C',
  flavors: 'M7',
  rootOverride: 'G'
})

// -----------------------
printed === 'CM7/G'

ChordTransposer

Change root and

import { ChordTransposer } from 'chord-md-parser';
let transposer = new ChordTransposer()

let new_chord = transposer.transpose({
  root: 'C',
  flavors: 'M7',
  rootOverride: 'G'
}, 1)

// -----------------------
new_chord === { root: 'C#', flavors: 'M7', rootOverride: 'G#', index: 3 }

ChordsConverter

Gets all chords from a string and convert to an array of chord objects.

import { ChordsConverter } from 'chord-md-parser';
let converter = new ChordsConverter()
let all_chords = converter.getChordsList('     A7+    E7/4      B7/9    Dm(7+)');

// -----------------------
all_chords:
[
  {
    chord:{
      root: 'A',
      flavors: '7+',
      rootOverride: null
    },
    loc: { start: 5, size: 3 }
  },
  {
    chord:{
      root: 'E',
      flavors: '7/4',
      rootOverride: null
    },
    loc: { start: 12, size: 4 }
  },
  {
    chord:{
      root: 'B',
      flavors: '7/9',
      rootOverride: null
    },
    loc: { start: 22, size: 4 }
  },
  {
    chord:{
      root: 'D',
      flavors: 'm(7+)',
      rootOverride: null
    },
    loc: { start: 30, size: 6 }
  }
]

Tests:

# start azk [optional]
$ azk shell

# run all tests
$ npm test

# run all tests and watch
$ npm run watch

using:

  • co
  • tape

Keywords

FAQs

Package last updated on 21 Dec 2015

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc