@emprespresso/codemirror-lang-tabloid
v0.2.1
Published
tabloid language support for CodeMirror
Readme
@emprespresso/codemirror-lang-tabloid
Tabloid language support for CodeMirror 6.
About Tabloid
Tabloid is the clickbait headline programming language created by Linus Lee. It features outrageous keywords like DISCOVER HOW TO (function declaration), EXPERTS CLAIM (variable assignment), and PLEASE LIKE AND SUBSCRIBE (required program terminator).
Installation
npm install @emprespresso/codemirror-lang-tabloidUsage
import { EditorView, basicSetup } from 'codemirror'
import { tabloid } from '@emprespresso/codemirror-lang-tabloid'
const view = new EditorView({
extensions: [basicSetup, tabloid()],
parent: document.querySelector('#editor')
})Language Features
Keywords
DISCOVER HOW TO ... WITH ...- Function declarationEXPERTS CLAIM ... TO BE ...- Variable assignmentRUMOR HAS IT ... END OF STORY- Code blockWHAT IF ... LIES! ...- If/else statementSHOCKING DEVELOPMENT- Return statementYOU WON'T WANT TO MISS- Print statementLATEST NEWS ON- Input statementPLEASE LIKE AND SUBSCRIBE- Program terminator (required)
Operators
Arithmetic:
PLUS- AdditionMINUS- SubtractionTIMES- MultiplicationDIVIDED BY- DivisionMODULO- Modulo
Comparison:
IS ACTUALLY- EqualityBEATS- Greater thanSMALLER THAN- Less than
Logical:
AND- Logical ANDOR- Logical OR
Literals
- Numbers:
123,45.67 - Strings:
"hello",'world' - Booleans:
TOTALLY RIGHT(true),COMPLETELY WRONG(false)
Example Programs
Hello World
YOU WON'T WANT TO MISS 'Hello, World!'
PLEASE LIKE AND SUBSCRIBEFactorial
DISCOVER HOW TO FACTORIAL WITH N
RUMOR HAS IT
WHAT IF N IS ACTUALLY 0
SHOCKING DEVELOPMENT 1
LIES!
SHOCKING DEVELOPMENT
N TIMES FACTORIAL OF N MINUS 1
END OF STORY
EXPERTS CLAIM RESULT TO BE FACTORIAL OF 10
YOU WON'T WANT TO MISS 'Result is'
YOU WON'T WANT TO MISS RESULT
PLEASE LIKE AND SUBSCRIBEFibonacci
DISCOVER HOW TO FIBONACCI WITH A, B, N
RUMOR HAS IT
WHAT IF N SMALLER THAN 1
SHOCKING DEVELOPMENT B
LIES! RUMOR HAS IT
YOU WON'T WANT TO MISS B
SHOCKING DEVELOPMENT
FIBONACCI OF B, A PLUS B, N MINUS 1
END OF STORY
END OF STORY
EXPERTS CLAIM LIMIT TO BE 10
YOU WON'T WANT TO MISS 'First 10 Fibonacci numbers'
EXPERTS CLAIM NOTHING TO BE FIBONACCI OF 0, 1, LIMIT
PLEASE LIKE AND SUBSCRIBEDevelopment
# Install dependencies
npm install
# Build the parser
npm run prepare
# Run tests
npm testLicense
MIT
