vrawat79 / code-highlighter

Web Component to perform code highlighting on the body of the component

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

npm version Published on webcomponents.org

<code-highlighter>

Performs code highlighting on the body of the element. Useful when Source Code (e.g. Java Code) needs to be rendered as part of View.

Demo of how this works is available here

Pre-requisite

First, make sure you have the npm (packaged with Node.js) installed.

Install the WebComponent

Run sudo npm install --save polymer-code-highlighter to install the Code-Highlighter webcomponent.

How to use in a HTML file

In the HTML file, please do following:

  1. Add the script tag to get the code-highlighter.js.
  2. Add the tag to highlight the sample code.
<!-- #1. Get the code-highlighter.js -->
<script type="module" src="node_modules/polymer-code-highlighter/code-highlighter.js"></script>
   
    <body>
    <div>
      <h3>Basic code-highlighter demo</h3>      
      <!-- #2. Add the tag -->
          <code-highlighter lang="java">   
            <!-- java code to be highlighted -->
            class Person {
              private firstName = "Vikram";
              private lastName = "Rawat";

              public String getFirstName(){
                return firstName;    
              }

              public String getLastName(){
                return lastName;    
              }
            } 
          </code-highlighter>      
    </div>
  </body>
    

How to use in a Custom Polymer 3 Element

In the custom element js file, please do following:

  1. Import the code-highlighter.js
  2. Add the tag to highlight the sample code.
import { PolymerElement, html } from '@polymer/polymer/polymer-element.js';
import './shared-styles.js';

<!-- #1. Get the code-highlighter.js -->
import '../node_modules/polymer-code-highlighter/code-highlighter.js'

class MyView2 extends PolymerElement {
  static get template() {
    return html`
      <style include="shared-styles">
        :host {
          display: block;

          padding: 10px;
        }
      </style>

      <div class="card">       
        <!-- #2. Add the tag -->
        <code-highlighter lang="java">
            private void getValue(){
                 String name = "Vikram";
           }
        </code-highlighter>

      </div>
    `;
  }
}

window.customElements.define('my-view2', MyView2);

Limitations

  1. Currently supports highlighting for Java Code snippets only.

About

Web Component to perform code highlighting on the body of the component

License:BSD 3-Clause "New" or "Revised" License


Languages

Language:JavaScript 53.0%Language:HTML 47.0%