Skip to content

a way to use react-virtualized to render lines of code for react-syntax-highlighter

Notifications You must be signed in to change notification settings

conorhastings/react-syntax-highlighter-virtualized-renderer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

React Syntax Highlighter Virtualized Renderer

React Syntax Highlighter allows for the use of custom renderers to change the behavior of the way the syntax highlighted code is rendered. This module utilizes React Virtualized to virtualize rendering of non visible code nodes to allow for better performance when syntax highlighting large blocks. See an example: here

Use

npm install react-syntax-highlighter --save
npm install react-syntax-highlighter-virtualized-renderer --save
import SyntaxHighlighter from 'react-syntax-highlighter';
import virtualizedRenderer from 'react-syntax-highlighter-virtualized-renderer'; 
import { docco } from 'react-syntax-highlighter/styles/hljs';
const Component = () => {
  const codeString = '(num) => num + 1';
  return (
	<SyntaxHighlighter 
	  language='javascript' 
	  style={docco}
	  renderer={virtualizedRenderer()}
  	>
  		{codeString}
  	</SyntaxHighlighter> 
  );
}

Optional Options Argument

  • overscanRowCount - number of rows to render ahead of what is currently visible. (defaults to 10)
  • rowHeight - if you use different fonts / line height styles, you made need to adjust the row height (defaults to 15)

About

a way to use react-virtualized to render lines of code for react-syntax-highlighter

Resources

Stars

Watchers

Forks

Packages

No packages published