SyntaxHighlighterを導入してみました

書いた人: noriaki 2007,06月23日(土) 23:39

技術系のブログを書いているとソースコードを載せることが多くなりますが,Javascriptで書かれたソースコードをきれいに表示できるシンタックス・ハイライトのためのライブラリsyntaxhighlighterをこのブログに導入してみました.

以下に例を載せてみます.

Ruby

require 'open-uri'
require 'kconv'

class Page < ActiveRecord::Base
  acts_as_ludia

  class << self
    def create_index(user_name)
      i = 0
      feed_uri = "http://b.hatena.ne.jp/#{user_name}/atomfeed"
      while feed_uri
        atomfeed = open(feed_uri).read
        doc = Hpricot(atomfeed)
        feed_uri = doc.at("link[@rel='next']")
        feed_uri = feed_uri[:href] if feed_uri
        (doc/:entry).each do |e|
          title = e.at(:title).inner_html
          url = e.at("link[@rel='related']")[:href]
          begin
            entity = open(url).read.toutf8
          rescue
            puts '[ERROR] Errno::ECONNREFUSED'
            next
          end
          doc = Hpricot(entity)
          next unless body = doc.at(:body)
          body = body.to_text.gsub(" ", " ")
          pp [i += 1, title, url]
          begin
            create(:url => url,
                   :title => title,
                   :body => body,
                   :entity => entity)
          rescue ActiveRecord::StatementInvalid
            puts '[ERROR] ActiveRecord::StatementInvalid'
            next
          end
        end
      end
    end
  end
end

XML

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" href="/stylesheets/rss.css"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
  <channel>
    <title>We Ain't Seen Nothin' Yet.</title>
    <link>http://blog.fulltext-search.biz/</link>
    <language>en-us</language>
    <ttl>40</ttl>

    <description>(X)HTML, CSS, Ruby, Rails, Web, 新しいものやおもしろいものを</description>
    <item>
      <title>Award on Rails 参戦!?</title>
      <description><blockquote cite="http://rails.drecom.jp/" title="トップ-Drecom Award on rails 2007">

<p>日本生まれの言語 Ruby、そしてそれを利用した Ruby on Rails によるソフトウェア開発を発展させていくため、Webサービスの成果発表の機会、プログラミングコミュニティの活性化、並びにエンジニアの成長の機会を提供したいと考え、昨年プログラミングコンテストAward on Rails第1回を開催する運びとなりました。 </p>
<p>多数の作品の応募をいただくことができ、現在では流行のWeb開発フレームワークとして、多くの開発者に知られるようになりました。 そこで、昨年に引き続きAward on Rails2007を開催することに決定しました。 今回はより多くの方に参加して頂くため、作品募集期間は7月~9月に設定しております。 皆様のエントリーをお待ちしております。</p>
<cite><a href="http://rails.drecom.jp/" title="トップ-Drecom Award on rails 2007">トップ-Drecom Award on rails 2007</a></cite>
</blockquote>

<p>さて,今年も大賞賞金は100万円だそうです.
7月~9月の忙しい時期,何とか時間を作って参戦するしか!!</p></description>
      <pubDate>Thu, 14 Jun 2007 12:41:00 +0900</pubDate>
      <guid isPermaLink="false">urn:uuid:02ed728c-c05f-4069-a9ac-b9b45f6e05a9</guid>
      <author>noriaki</author>
      <link>http://blog.fulltext-search.biz/articles/2007/06/14/pre-entry-award-on-rails</link>
      <category>rails</category>

      <trackback:ping>http://blog.fulltext-search.biz/articles/trackback/10</trackback:ping>
    </item>
  </channel>
</rss>

SQL

Drop table if exists tags;
CREATE TABLE tags (
  id MEDIUMINT unsigned NOT NULL AUTO_INCREMENT,
  name varchar(100) NOT NULL,
  PRIMARY KEY(id),
  UNIQUE (name),
);

CSS

/* Azure Screen Styles */

body {
        margin: 20px 0;
        text-align: center;
        background: #8ab3d1 url(../../images/theme/bg-tile.gif) repeat-x;
        font: 1em/1.2em Arial, Verdana, Helvetica, sans-serif;
        color: #333;
        }

#container {
        margin: 0 auto;
        width: 762px;
        text-align: left;
        background: #fff;
        border: 7px solid #fff;
        font-size: 80%;
        }

このエントリをdel.icio.usにブックマークしているユーザ数このエントリをdel.icio.usに追加する
このエントリをはてなブックマークしているユーザ数このエントリをはてなブックマークに追加する
 | Tags ,

このエントリはアーカイブされています。
コメントする場合は、お手数ですが「このページのURL」を記載した上で、新しいエントリにお願いします。