JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 5
  • Score
    100M100P100Q36735F
  • License MIT

πŸ“œ Formats the provided string as a comment, either a single or a multi line comment for the given programming language. πŸ’»

Package Exports

  • @igor.dvlpr/comment-it
  • @igor.dvlpr/comment-it/dist/index.mjs

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@igor.dvlpr/comment-it) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

/* CommentIt! */


πŸ“œ Formats the provided string as a comment, either a single or a multi line comment for the given programming language. πŸ’»


🌍 62 languages are currently supported - even Carbon,
an upcoming C++ successor made by Google 🎀




πŸ’– Support further development

I work hard for every project, including this one and your support means a lot to me!
Consider buying me a coffee. β˜•
Thank you for supporting my efforts! πŸ™πŸ˜Š


Donate to igorskyflyer

@igorskyflyer



πŸ•΅πŸΌ Usage

Install it by executing:

npm i "@igor.dvlpr/comment-it"

🀹🏼 API

getLanguageIds()

getLanguageIds(): string[]

Gets IDs of all available language formatters. Language formatters are callable as comment.<languageId>. See more below at comment.


language()

language(id: string): CommentFormatter | null

Performs a case-insensitive search for a language formatter with the provided id and returns it - if one is found - else returns null.


supportsLanguage()

supportsLanguage(id: string): boolean

Returns whether the given language formatter is supported, case-insensitive.

See the comment object below for available valid identifiers.


alias()

 alias(id: CommentLanguage, alias: string): boolean

Adds an alias for an existing comment formatter. Returns true upon success, false otherwise.


comment

An object where all formatters are stored.


comment's properties/formatters:

  • comment.ada - Ada
  • comment.bash - Bash
  • comment.batch - Batch
  • comment.c - C
  • comment.carbon - Carbon
  • comment.cSharp - C#
  • comment.coffeeScript - CoffeeScript
  • comment.cpp - C++
  • comment.crystal - Crystal
  • comment.css - CSS
  • comment.dart - Dart
  • comment.delphi - Delphi
  • comment.dockerFile - Dockerfile
  • comment.elixir - Elixir
  • comment.erlang - Erlang
  • comment.euphoria - Euphoria
  • comment.fortran - Fortran
  • comment.fSharp - F#
  • comment.genie - Genie
  • comment.go - Go
  • comment.groovy - Groovy
  • comment.hack - Hack
  • comment.haskell - Haskell
  • comment.html - HTML
  • comment.icon - Icon
  • comment.java - Java
  • comment.javaScript - JavaScript
  • comment.jsx - JSX
  • comment.julia - Julia
  • comment.kotlin - Kotlin
  • comment.lisp - Lisp
  • comment.liveCode - LiveCode
  • comment.lua - Lua
  • comment.maple - Maple
  • comment.matlab - MATLAB
  • comment.mercury - Mercury
  • comment.mql4 - MQL4
  • comment.objectiveC - Objective-C
  • comment.objectiveCpp - Objective-C++
  • comment.oz - Oz
  • comment.pascal - Pascal
  • comment.perl - Perl
  • comment.php - PHP
  • comment.powerShell - PowerShell
  • comment.pug - Pug/Jade
  • comment.python - Python
  • comment.q - Q
  • comment.r - R
  • comment.razor - Razor
  • comment.red - Red
  • comment.ring - Ring
  • comment.ruby - Ruby
  • comment.rust - Rust
  • comment.scala - Scala
  • comment.sql - SQL
  • comment.swift - Swift
  • comment.typeScript - TypeScript
  • comment.vala - Vala
  • comment.visualBasic - VisualBasic
  • comment.vue - Vue
  • comment.vueHtml - VueHtml
  • comment.xml - XML

Each formatter exposes two functions, single() for single-line comments and multi() for multi-line comments.



single()
single(value: string): string

Returns a single-line comment formatted for the selected language.


multi()
multi(value: string): string

Returns a multi-line comment formatted for the selected language.


Examples

import { comment, supportsLanguage } from '@igor.dvlpr/comment-it'

const singleLine: string = 'hello world'
const multiLine: string = `hello


world

this is a test`

console.log(comment.javaScript.single(singleLine)) // prints '// hello world'

console.log(comment.jsx.single(singleLine)) // prints '{/* hello world */}'

console.log(comment.coffeeScript.multi(multiLine)) // prints '###\nhello\n\n\nworld\n\nthis is a test\n###'

// note: new lines in the example results are written as-is for brevity

console.log(supportsLanguage('lua')) // prints true
console.log(supportsLanguage('TYPEscript')) // prints true
console.log(supportsLanguage('foo')) // prints false

πŸͺͺ License

Licensed under the MIT license which is available here, MIT license.


@igor.dvlpr/mapped-replacer

πŸ—Ί Zero-dependency Map and RegExp based string replacer with Unicode support. 🍁

@igor.dvlpr/jmap

πŸ•ΆοΈ Reads a JSON file into a Map. 🌻

@igor.dvlpr/strip-html-headings

πŸ› Strips HTML headings! 🍀

@igor.dvlpr/strip-headings

β›Έ Strips Markdown headings! 🏹

@igor.dvlpr/unc-path

πŸ₯½ Provides ways of parsing UNC paths and checking whether they are valid. 🎱



Provided by Igor Dimitrijević (@igorskyflyer).