<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
   <channel>
      <title>TepaEditor 開発日記</title>
      <link>http://www.greenspace.info/tepa_dialy/</link>
      <description>まだまだ拙いエディタの開発について思うところを、拙い文章で綴ります。</description>
      <language>ja</language>
      <copyright>Copyright 2008</copyright>
      <lastBuildDate>Mon, 08 May 2006 00:13:53 +0900</lastBuildDate>
      <generator>http://www.sixapart.com/movabletype/?v=3.34</generator>
      <docs>http://blogs.law.harvard.edu/tech/rss</docs> 

            <item>
         <title>喫茶店でヘルプ執筆</title>
         <description><![CDATA[<p>少し間が空いてしまいました。</p>
<p>4月が少々立てこんでいた反動で、GWは特に出かける予定もなく、喫茶店でコーヒーを飲みながらヘルプの作成をしていました。
</p>
<p><img alt="コーヒーとケーキとPCと"
     hspace="0"
     src=
     "http://greenspace.info/tepa_dialy//media/img_20060508T001350791.jpg"
     align="baseline"
     border="0" /><br />
<font size="1">アイスソイラテとミルクレープと、4月に新調した Let's Note。(あれば)2階の、
窓際の席が好きです。</font></p>
<p>外で作業しているほうが、家でやっているよりも、個人的には集中できる気がします。</p>
<p>さて、TepaEditor Version 5.0ではこれまでの　Windows標準ヘルプ(Win Help)から、HTML
Helpに変更を予定しており、ヘルプも HTMLで書き直しています。さすがに今では HTML Helpも一般的となったのと、
HTMLで書いておく事で、Web上からもそのまま参照できるという利点もあります。</p>
<p>実はヘルプの作成に当たって、プロジェクト管理的な機能が欲しくて、HTMLエディタを色々探してみたり
Wikiでの作成を検討したりしたのですが、いまいちしっくりくるものがなく、結局いまのところは Tepaで中身を書いて、
最終的にHTML Helpにまとめる段階で各ページの調整を行う形で進めています。<font size=
"2">浮気はできないようです ;P</font></p>
<p>また、ヘルプの内容も Ver4.ｘまでのものをそのまま流用という形にはいかず、大部分を新たに書き直したりしています。
この理由については、また次回書いていきたいと思います。</p>
<p>&nbsp;</p>]]></description>
         <link>http://www.greenspace.info/tepa_dialy/2006/05/post_1.html</link>
         <guid>http://www.greenspace.info/tepa_dialy/2006/05/post_1.html</guid>
         <category></category>
         <pubDate>Mon, 08 May 2006 00:13:53 +0900</pubDate>
      </item>
            <item>
         <title>TepaEditorの名前の由来</title>
         <description><![CDATA[<p>よく知り合いに「なんで TepaEditorってつけたの？」と聞かれたりするので、今回は
TepaEditorの由来について書いてみます。</p>
<p>実は、TepaEditorは 最初のころは「TextPainter」という名前でした。</p>
<p>当時はまだ VisualBasic5で開発していて、エディタとしての機能は メモ帳に毛が生えた程度でした。そして何より、
TepaEditorの独特な機能である「TtoGコンバータ」は、今のような「テキストを画像に変換する」というものではなく、
「テキストのデータを元に新たな"絵"を創り出す」というものでした。これは今以上に不思議な機能なのですが、テキストのデータを解析
（というほど高度なものではなく、ASCII値に変換して読み込んでいくだけでしたが）し、
そのデータを元に絵を作ってしまうというものでした。絵といっても、さすがに風景画や人物画のような具体的なものではなく、
線や円などを組み合わせて作った抽象画（というよりも落書きに近い）のような程度でした。</p>
<p>奇跡的に、当時の TtoGコンバータ機能で作成した画像を見つけました。</p>
<p><img alt=""
     hspace="0"
     src=
     "http://greenspace.info/tepa_dialy//media/img_20060313T000950619.gif"
     align="baseline"
     border="0" /><br />
<font size="2">エキセントリック・・・</font></p>
<p>こんな感じで、まぁ実用性はほぼゼロのお遊びみたいなものでした。</p>
<p>今の「テキストを画像に変換する」という機能は、実はユーザー（ではなかったかもしれませんが）からいただいたメールがきっかけで、
「テキストをビットマップ(画像ファイル)にするソフトはありませんか？」みたいな内容だったと思います。思い当たるソフトもなかったので、
ならば TextPainterに載せてしまえ、と思い立って実装したのが、今の「TtoGコンバータ」になります。</p>
<p>その後、以前の「画像を創り出す」機能は廃止し、開発環境を Delphiなどに移しながら、
TextPainterという名前ははバージョン 3.ｘまで続きました。その間、
バージョンアップを続けるたびにエディタとしての性格は強くなっていったものの、Text”Painter”という名称からか、
グラフィック関係のソフトと紹介されるケースも増えてきたため、Ver4.0へのバージョンアップを機に、名称を「TepaEditor」
と改名しました。</p>
<p>と、ここまででお気づきの通り、TepaEditorの Tepaとは TextPainterの略称から取ったものなのです。
</p>
<p>ちなみに、廃止された「画像を創り出す」という機能は「TextImageMaker」という別のソフトとして分離して、
しばらく公開を続けていたりしました。その分離当時（TextPainter Ver2.0公開時）に<a href=
"http://www.forest.impress.co.jp/">窓の杜</a>さんで紹介された記事が残ってました。 →
<a href=
"http://www.forest.impress.co.jp/article/1999/03/10/textpainter.html">
窓の杜の記事</a>&nbsp;<font size="2">（な、懐かしい...URLもまだ古い...）</font></p>
<p>そんなわけで、今後も Tepaをよろしくお願いいたします。</p>]]></description>
         <link>http://www.greenspace.info/tepa_dialy/2006/03/tepaeditor.html</link>
         <guid>http://www.greenspace.info/tepa_dialy/2006/03/tepaeditor.html</guid>
         <category>雑記</category>
         <pubDate>Mon, 13 Mar 2006 00:09:54 +0900</pubDate>
      </item>
            <item>
         <title>Beta 2.0 is not before...</title>
         <description><![CDATA[<p>今回公開した Beta 2.0は、前回の Beta6から実に 2年半も間が空いてしまいました。<br />
これまで TepaEditor使っていただいた方々、ベータ版をテストしていた方々には、大変お待たせしてしまい、
申し訳ありませんでした。</p>
<p>理由を挙げるといくつかあって、プライベートでは、前回のリリース直後に 就職活動、本の執筆、卒業研究が重なり、
さらにその後も就職したことで、以前よりも時間がとれなくなったというのが 1点。</p>
<p>そしてもう 1点がトップページなどでも書きましたが、内部のコードを全面的に書き直していたためです。</p>
<p>お恥ずかしい事に、Beta6まではオブジェクト指向的なほとんど書き方がされておらず、
共通ロジック以外はイベントハンドラに直書きという状態でした。TepaEditor自体が元々が VisualBasicから
Delphiに移植したもの(当時は TextPainterという名前でした。)だったのと、私自身も
BASIC→VisualBasic→Delphiという流れで触ってきたために構造化プログラミングに染まっていて、
オブジェクト指向的に書く事になれていなかったというところもあります。<font size="2">ま、言い訳ですが・・・
</font> そんなわけで、内部コードは典型的なスパゲッティコードと化してきていました。</p>
<p>しかし、大学で研究用プログラムを作成する段階で、
ようやく実践的にオブジェクト指向的なコードを書くようになり<font size="2">(それでも意固地に
Delphiを使っていましたが...)</font>、TepaEditorも今後のメンテナンス性などを考慮して、
徐々に書き直していこうと決心しました。それが Beta6のリリース後です。といっても最初はコードを分離してモジュール化する程度で、
実質的には以前と同じ構造化プログラムとなっていました。</p>
<p>その後、先にも挙げた、就職活動や卒業研究などの期間を経て、ついに社会人プログラマとして世に出る事になりました。そして、
会社でコード<font size="2">(さすがにここでは
C++でしたが)</font>を書いている間に本格的にオブジェクト指向的に書き直さなければマズイと感じ、
結局全面的に書き直すことになりました。多分、ベータテスト中、そしてまだ新米社会人である今のうちにやっておかないと、
おそらく今後書き直す事は出来ないだろうという直感的な部分もありました。</p>
<p>というわけで、機能的なアップグレードには 2年半という歳月にしてはそれほど多くはないものの、
規模としてはほぼ全面スクラッチに近いくらい書き直しを行っています。まだまだ継続的にリファクタリングしていく必要はありますが、
それでも Beta6までに比べて、全体的な可読性や構成は確実にマシになってきているので、今後のメンテナンスを考えると、
無駄ではなかったかなと思っています。</p>
<p>ユーザーの方々をお待たせしてしまったのは申し訳ないですが、その分、今後の継続的な更新・改良で少しでもお返しできれば、
と思っています。</p>
<p>&nbsp;</p>]]></description>
         <link>http://www.greenspace.info/tepa_dialy/2006/03/beta_20_is_not_before.html</link>
         <guid>http://www.greenspace.info/tepa_dialy/2006/03/beta_20_is_not_before.html</guid>
         <category></category>
         <pubDate>Mon, 06 Mar 2006 00:46:49 +0900</pubDate>
      </item>
            <item>
         <title>日記の開始</title>
         <description><![CDATA[<p>こんばんは。<a href=
"http://greenspace.info/tepa/">TepaEditor</a>を開発している こばやしです。</p>
<p>Beta 2.0の公開にあわせて、前々から考えていた開発日記を書いていこうと思います。<br />
といっても、開発寄りの話ばかりでなく、TepaEditor自体についていろいろと思うところなんかを書いていこうと思っています。
</p>
<p>その他の個人的な内容や、TepaEditor以外の開発に関する話題は、これまでどおり、<a href=
"http://greenspace.info/mt/">だべりの渦</a>の方で書いていきたいと思っています。</p>
<p>というわけで、まずは最初のご挨拶だけ。どうぞ、よろしくお願いいたします。</p>
<p>&nbsp;</p>]]></description>
         <link>http://www.greenspace.info/tepa_dialy/2006/03/post.html</link>
         <guid>http://www.greenspace.info/tepa_dialy/2006/03/post.html</guid>
         <category></category>
         <pubDate>Mon, 06 Mar 2006 00:05:04 +0900</pubDate>
      </item>
      
   </channel>
</rss>
