IT対象者に焦点を当てたプロジェクトでは、ソースファイルの構文を強調するというタスクがときどき発生します。 最近、この問題がRubyでどのように解決されるかを見たかった。
Rubyには、次の言語のサーバー側の構文を強調表示できる
CodeRayソリューションがあります。
- ルビー
 - と
 - デルファイ
 - HTML
 - RHTML(レール)
 - Nitro-xhtml
 - CSS
 - 差分
 - Java
 - Javascript
 - ジョンソン
 - ヤムル
 
強調表示プロセスはサーバー側で行われるため、クライアントをロードしません(Ruby On RailsなどのWebテクノロジーを使用している場合)。また、強調表示されたコードでhtmlファイルを作成するための個別のユーティリティ(コンソールなど)を開発することもできます。
CodeRayを使用した小さな例を検討し、特定のRubyファイルのハイライトを作成する小さなコンソールアプリケーションを作成します。
開始するには、簡単なコマンドでCodeRayをインストールしてください
gem install coderayその後、プログラム自体を作成します(それを発明したのは自分ではないので、いわば元のそのままの形で保存します)
#!/usr/bin/env ruby
# courtesy: Helder
# obvio171.wordpress.com/2007/06/03/colorful-ruby-code-for-your-blog
# modified to output to stdout so can be used as a filter
# 2008-09-03 23:22
require 'rubygems'
require 'coderay'
if ARGV.length != 1
puts "Wrong number of arguments. Use: codecolor.rb <source_file>"
exit
end
rb_file = File.expand_path(ARGV[0])
print CodeRay.encode(
File.read(rb_file),
:ruby,
:html,
:line_numbers => :inline,
:hint => :info,
:css => :style,
:wrap => :div
)
この単純なプログラムを順番に分析します。まず、関心のあるクラスにアクセスするためにcoderayモジュールをプラグインします。 その後、コマンドライン引数の数を確認し、最初の引数からファイル名を抽出します。 次は、プログラムの最も重要な部分です。CodeRay.encode関数を使用し、次の引数を渡します。
- ハイライトされたテキスト
 - 構文を強調する言語
 - 出力形式
 - 行番号の表示スタイル
 - ハイライトされたコードの追加ヒントの形式
 - スタイルを接続する方法(クラスまたはスタイル)
 - 要素をラップする方法
 
そして、作成したプログラムに自分自身を強調するように依頼します。 これを行うには、次のコマンドを実行します
ruby codecolor.rb > test.htmlその後、codecolor.rbプログラムの強調表示されたバージョンを含むtest.htmlファイル(任意のブラウザーで開くことができます)が作成されます。
実際、Rubyコード強調表示ジェネレーターを使用する際に知っておく必要があるのはこれだけです。 CodeRayのより詳細な研究については、 
公式ウェブサイトをご覧になることをお勧めします