ブログやホームページにソースコードを貼り付けるためのソースコード→HTML変換ツールです。
言語を問わないハイライト機能とプレビュー機能などがあります。


概要

 ブログなどにプログラムソースコードを貼り付けるために、貼り付け可能な形式にコードを変換するツールです。
 プログラム言語に特に制限はなく、なんでも使用できます。(キーワードファイルとして定義)
 キーワードの装飾は正規表現や単語の検索で行えます。

 ◆できること
  1.キーワードのハイライト表示ができる
  2.キーワードを簡単に追加できる
  3.スタイルシートで自由にカスタマイズできる
  4.行番号を表示できる(非表示可)
  5.HTML化後のコピペに完全対応(※)
  6.Another HTML lint完全対応

  (※)よくあるJavaScript等を利用した、全てのソースをクリップボードに転送する方式ではありません。
    普通の選択→コピーでソースコードをコピーできます(IE/Firefox/OPERAで確認済み)
 
  Web Diary Professional で使用する場合は以下の改造が必要となります。
  WebDiaryProfessionalの整形を無効にする

 ◆制限事項
  コードの1行の幅が設定値を超える(はみ出す)場合、行番号がズレます。
  これは対策の仕様がないため恒久的な制限事項とします。
  (もしやる場合JavaScriptを用いる必要があるため、ブログ等で使用できない)

 

ダウンロード

 ◆実行ファイル
  CodePublisherのダウンロード

 ◆装飾キーワードファイル
 C言語キーワードファイル - 2010.07.05版
 VB.NETキーワードファイル - 2010.08.04版
 ActionScript2.0/3.0キーワードファイル - 2010.08.23版

 

実行イメージ

ファイル 28-9.png ファイル 28-8.png

 

このツールで生成したコードのサンプル

1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
Public Class frmMain
‌ 
    Private Sub btnDlgOpen_Click(ByVal sender As System.Object, _
                                 ByVal e As System.EventArgsHandles btnDlgOpen.Click
‌ 
        ' ====== テキスト編集ダイアログのインスタンスを生成
        Dim myDialog As dlgEdit = New dlgEdit
‌ 
        ' ====== ダイアログを開いてテキストボックスの内容を編集
        Dim myResult As dlgEdit.EditDialogResult = myDialog.Show(Me, txtInput.Text)
‌ 
        ' ====== 編集された結果をテキストボックスに反映
        If Not myResult Is Nothing Then
            txtInput.Text = myResult.Text
        End If
‌ 
        ' ====== インスタンスを破棄(GCが勝手に動くのでやらなくてもいい)
        myResult = Nothing
‌ 
‌ 
        ' ====== デザイナからダイアログを追加している場合、dlgeditのインスタンスを生成せず
        ' ====== 以下のようにダイアログ名で直接指定しても良い
        'dlgEdit.Show(Me, txtInput.Text) 
    End Sub
End Class
‌ 

  

動作要件

 ・.NET Framework 2.0以降が必要
 ・Windows XP / Vista / 7 で確認。

 

開発環境

 ・Microsoft Visual Studio 2008 Professional ( VB.NET )
 ・.NET Framework 2.0
 ・Windows XP / 7

 

ソースコード

 コチラから最新ソースがダウンロードできます
 (ごめんなさい、最新(v091)は準備中で、上記はv09のものです)
 ライセンスはパブリックドメインとします。

 

機能説明

 そのうち。。

 

その他

 不具合、要望など、コメント頂けると幸いです。

 

今後の開発

 正規表現の部分一致置換に対応したいです。
 これによって.NETのコメント内SUMMARYタグにも対応できると思います。
 が、そこまでやる必要あるのか?という疑問もあります。

 

変更履歴

2010.08.23(Mon)
ver 0.91 正式版 リリース
・タブがうまくスペースに変換されない(揃わない)不具合対応
・変換処理中にフリーズしないように修正

2010.07.05(Mon)
ver 0.9 正式版 リリース
・Another HTML lint完全対応
・キーワード定義構造を完全見直し(これにより古い定義は使えなくなった)
・出力HTML構造を完全見直し
・ツール名を[WdpCodePaste]から[CodePublisher]と変更
・WebDiaryProfessional向けとしていたが、汎用版とした。

2010.06.21(Mon)
ver 0.8 正式版(?)リリース
・行番号をつけられる機能を追加
・テキストボックス上で全選択(CTRL+A)できるようにした

2010.06.08(Tue)
ver 0.8β リリース
コメント内のタグを装飾しないよう変更
( /* int ←これを装飾しないようにした */ )
それに伴い、キーワード優先順位を設定した。

2010.06.03(Tue)
ver 0.8α リリース

コメント

  • コメントはまだありません。

コメントを投稿する

コメントを投稿する場合は以下に注意してください。

・記事に関係する内容であること
・特別な理由がない限り「全体公開」であること

これさえ守っていただければどんな内容でも投稿可能です。
皆様の質問やコメントは他の方の問題解決に繋がりますのでご協力ください。

コメント投稿フォーム
名前
メール
URL
コメント
閲覧制限

コメントを投稿するには、以下の問題に答えてください。
問題:「このサイト名をカタカナ六文字にして入力してください」