スタッフブログ

  • カテゴリ XOOPS の最新配信
  • RSS

google-code-prettify for XOOPS XCode

naoto : XOOPS » TIPS小ネタ 2008/8/5 9:00

Blogger's Avatar

こんにちわ2回目のなおとです。
今日はRYUSの伝統?に倣って、XOOPS Hackネタをご披露します。
とはいえ私も若輩の身、お手軽なHTMLテクニックで行きたいと思います。

題のとおりなのですが、google-code-prettifyを使った、プログラム・コードのシンタックス・ハイライトつまり色分けをします。

google-code-prettifyについては1年以上前のマイコミジャーナルの記事、「ハイライトもGoogle流 - "google-code-prettify"でソースコードに色付けを」が参考になります。
Javascriptでいろいろうまい具合にやってくれて、大変お手軽です。

これを組み込むと、フォーラムやブログで書いた、

 some codes 
といったXCode(XOOPSbbcode、XOOPSコード、BBコード)の記法による出力を対象に、色分けをします。、、のつもりですが今回は手抜きで、コンテンツ中の全てのpre要素に影響します。これでxpwikiなどの整形済み記法とかにも対応できますね!!

それでは今回の肝になる部分ですが、以下のJavascript等の固まりを、HTMLの「できるだけ後のほう」に組み込めばミッション・クリアです。
その前に、外部jsと外部cssファイルは上記リンク先から入手して、サーバにアップロードしておいてくださいね。

 <script src="/themes/prettify.js" type="text/javascript"></script>
<link rel="stylesheet" type="text/css" href="/themes/prettify.css" />
<script type="text/javascript">
// fetch a list of nodes to rewrite
var preXCodeSegments = document.getElementsByTagName('pre');
for (var i = 0; i < preXCodeSegments.length; ++i) {
preXCodeSegments[i].className = 'prettyprint';
}
prettyPrint();
</script>

方法その1 テーマで

XOOPS_ROOT_PATH/themes/[mytheme]/theme.html
を書き換えます。詳細の説明は省きます。当サイトではこの手法でやっています。

方法その2 カスタム・ブロックで

管理メニューに入って、「互換モジュール >> ブロックの管理」画面の、「カスタムブロック追加」ボタンからはじめます。もちろんaltsysを使ってもかまいません。
で、上のカコミの中身をHTML(無変換)でコンテンツエリアに書きます。

タイトルは好きにしてかまいません。ただ、表示サイドは必ず「サイドブロック 右」で、並び順も99といったように、できるだけ後のほうになるように指定してください。この方法だと、ブロックのタイトルがどうしても表示されてしまうのが欠点です。。。

表示先のモジュールは「すべてのモジュール」、アクセス権はサイト管理者と登録ユーザとゲスト、つまり全部許可でいいと思います。このあたりは適宜調整してください。


ほかにも、フッターエリアを使う方法も考えられます。ただ、テーマによってはうまくいかないかも知れません。

さて。
ここでたとえば、上記のカスタマイズを一撃でクリアしてくれるようなモジュールを用意しました〜、と言えれば最高だったのですが、そこはそれ。今後の宿題ということで、皆さんもチャレンジしてはいかが?ということでお茶を濁らさせていただきます。

しまらない感じでしたが、じっさい、当ブログのように、頻繁にプログラムを書く人には効果は絶大ですよ。

XOOPSで、まずは書くことから始めよう

Ryuji : XOOPS » 総合的な情報 2008/6/10 17:52

Blogger's Avatar

先週開催されたCubeNight6/4でも「社内で使うXOOPS Cube」というタイトルで、社内の情報共有を目的とした社内サイトをXOOPSでつくるということを発表させてもらいました。

RYUSでもこのサイト以外に、社内のスタッフとお手伝いしていただいてる方がアクセスする社内サイトをXOOPSでつくって利用しています。

RYUSの社内サイトは非常にシンプルな構成で、
・社外の方も含めて閲覧・投稿できるフォーラム
・スタッフだけが閲覧・投稿できるフォーラム
・案件ごとに、その案件に参加している人だけが閲覧・投稿できるフォーラム
というのが基本になってます。

これに、プラスして、私の予定をみんなが把握できるようにpiCalをいれたり、資料のダウンロードスペースを用意したりして使ってます。

たったこれだけの事なんですが、徐々に役立ってきてます。

■どんな点でよかったのか?

1.書く場所ができた。
情報共有とかナレッジ共有サイトを検討するときに、コンテンツをしっかり整理しようとか、役立つ情報が参照しやすいようにシステム側でなにかしかけをつけようとか、ついつい大がかりに考えすぎてしまうことがあります。

その結果、けっきょく何も手つかずということが少なくないと思ってます。(実際、私はその傾向が非常に強いと思ってます)

とりあえず「書く場所」だけでも用意することで、箇条書き程度でも打ち合わせの議事録を書きためたり、「○○なときは、××してから△△すればいい」というようなことも書きためられるようになってきました。

もちろん見やすいように整理してあるのがベストですが、書いてさえあれば検索でみつけることもできるし、何か聞かれたときも「それならフォーラムに書いてあるからURL送るよ」ですむこともあります。

これ、書いてないと何か聞かれる度に、何回も同じ話をすることになったり、「聞いた覚えがあるけどどうするんだっけなぁ」というときも、相手の時間をもらって、口頭で確認することになってしまいます。


2.書くことで思考が整理されるようになった。
打ち合わせをした後に、できるだけ議事録を社内サイトに書くようにしています。

箇条書き程度の簡単なものですが、書くと思考が整理されるようで、打ち合わせ中には気がつかなかったことに気がついたり、「あれ?結局これって結論でてないな」ということがあるのに気がついたりします。

書くことで思考が整理されるのは実感としてはあったのですが、これまでは意識的に考える時しか実行していませんでした。

議事録を書くというのはこれまであまり重視してこなかったのですが、書くことで新たな発見があるというのがわかったので、これからも続けていこうと思ってます。


というわけで、まだ社内サイトが無いなら、まず書くための入れ物としてXOOPSを導入することを検討してみてはいかがでしょうか

スタッフブログ最新
カテゴリ一覧

〒104-0061 東京都中央区銀座1丁目3番3号 G1ビル7階
お問い合わせ TEL 03-3524-8860

Copyright(c) 2012 RYUS.All Rights Reserved.