Giter Club home page Giter Club logo

sh2's Introduction

Sh2

Client-side syntax highligher for Rails. Based on SyntaxHighlighter2 by Alex Gorbatchev.

Example

In your layout:

 <head>
   <%= include_syntax_highlighter_assets(:theme => :midnight, :brushes => :all) %>
   <%= include_syntax_highlighter_assets(:theme => :midnight, :brushes => [:ruby, :shell, :jscript, :sql, :xml, :css]) %>
 </head>

Brushes stands for lang plugins. See PLUGIN_ROOT/assets/javascripts/shBrush* for supported languages. Themes located in PLUGIN_ROOT/assets/stylesheets/shTheme*

At the bottom of page (or after all to-be-highlighted-code-blocks) call sh2_highlight_code helper

 <%= sh2_highlight_code %> 

Code like this will be highlighted:

 <pre class="brush: js;"> 
 function onThemeChange(sender)
 {
   var parts = sender.value.split('|');
   document.getElementById("theme").href = "Styles/" + parts[1];
   document.body.style.backgroundColor = parts[0];
 }
 </pre> 

Availible code-brushes and themes:

 SH2_BRUSHES = {
   :bash    => 'Bash',
   :cpp     => 'Cpp',
   :csharp  => 'CSharp',
   :css     => 'Css',
   :delphi  => 'Delphi',
   :diff    => 'Diff',
   :groovy  => 'Groovy',
   :java    => 'Java',
   :jscript => 'JScript',
   :perl    => 'Perl',
   :php     => 'Php',
   :plain   => 'Plain',
   :python  => 'Python',
   :ruby    => 'Ruby',
   :scala   => 'Scala',
   :sql     => 'Sql',
   :vb      => 'Vb',
   :xml     => 'Xml'
 }

 SH2_THEMES = {
   :default      => 'Default',
   :django       => 'Django',
   :emacs        => 'Emacs',
   :midnight     => 'Midnight',
   :rdark        => 'RDark',
   :fade_to_gray => 'FadeToGrey'
 }

Copyright (c) 2009 Antono Vasiljev, released under LGPLv3 license

Haml Example

Place this wherever you want all the brushes and css files included

= raw include_syntax_highlighter_assets(:themes => :midnight, :brushes => :all)

When all code to be highlighted is present call this helper method

= raw sh2_highlight_code

sh2's People

Contributors

antono avatar wlaurance avatar

Stargazers

 avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.