スポンサーサイト

--年--月--日 --:--

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

LotusScript のコードをブログ用にHTML形式へフォーマットする

2008年10月31日 15:49

Webだとスペースやタブが無視されるからPREタグをつけないといけないし、Designerペインのように予約語に色をつけたり、コメントが別色で表示されると見やすくなるのでそういう風にフォーマットしよう、て思うと案外大変です。

 なので、前のエントリではフォーマットしたLotusScriptのサンプルを貼りましたが、以下のnsftools のサンプルを使いました。 ブログでLotusScript を貼るときには見違えるほどきれいになるので重宝すると思います。

Format LotusScript as HTML, RTF (nsftools.com)

 このエントリにはNSF形式のものもあるので、僕はNSF形式のもので「Use Inline Styles」を選択して変換したものを使っています。 (CSS を別定義にするとブログで定義しているCSSと競合しそうなので。。。)NSF形式のサンプルはWeb で使うことだけをサポートしているので、HTTPタスクを起動しているサーバー上に置くか、Designerの入っているクライアントで、IE プリビューをするかのどっちかが必要です。

 このツールの問題では無かったのですが、ここで生成されたコードを使うと、ブログの上では背景が黄色くなるのでどうしてだろう・・・と思って調べていたのですが、CSSを見たらPREタグに対して背景色が指定されるようになっていたためでした。divタグとかクラス名ばかり気にしていたのですが、PREタグにスタイルを指定しているなんて。。。。

 僕はこのnsftoolsみたいなブログが日本でももう少し増えないかな、て思ったのもブログを書こうと思った動機の一つです。こんなに高度なTipsとかサンプルコード(と言うかここのは完全にライブラリですよね)を提供することはさすがに出来ませんが、ちょっと参考に出来るようなコードがたくさん提供できれば色々なアプリケーション開発の促進になるのではないかな、と思っています。

Just in case Julian visit this site ....
I love the various tips in nsftools.com and I used and referred to the above tips in this entry to show the sample code.
Thanks!
スポンサーサイト

@Left/@Right のEmulate

2008年10月31日 03:03

実際に必要になってから書いても大したコードでも無いのですが、LotusScriptって文字列処理がイマイチなので、@Leftや@Rightの処理がLotusScriptで使いたくなることがあります。
 Evaluateを使えばいいじゃん?て声もありそうですが僕は以下のようなコードを使います。

これは実は僕が考えたコードでなくて、R5時代にSetup.nsfに含まれていたコードを自分のローカルに取っておいたものです。なのでブログのネタにしやすいな、て思ったのです。確かNotes/Domino Magazineでもこの話は取り上げられていました。
テンプレートのコードはなぜかRightStrに初歩的なバグがあったのですが、そこは直してあるので使えると思います。


Function LeftStr(sString As String, sKey As String) As String
%REM
この関数は@left 関数のように動作します。
キーが見つからなかったら "" を返します。
%END REM

Dim nPos As Integer
nPos = Instr(sString,sKey)
If (nPos > 0) Then
LeftStr = Left$(sString,npos-1)
Else
LeftStr = ""
End If
End Function

Function RightStr(sString As String, sKey As String) As String
%REM
この関数は @Right のように動作します。
キーにある文字が見つからなかったら""を返します。
%END REM

Dim nPos As Integer
nPos = Instr(sString, sKey)
If (nPos = 0) Then
RightStr = ""
Else
RightStr = Right$(sString, Len(sString)-nPos-Len(sKey)+1)
End If
End Function


「IBM 技術情報の検索」ボタンの表示

2008年10月31日 02:23

8.0.1 からクライアントでエラーが出たときに場合によって「IBM 技術情報の検索」と言うボタンが出るようになった事に気が付いているでしょうか。
MR間でUIが変わってしまうのでエンドユーザー教育上よくない、と言う場合には以下のNotes.ini パラメータで隠すことも出来ます。

  DoNotShowDetailsButton=1

詳細については以下の文書も参考にしてみて下さい。
特定のエラーダイアログに表示される「IBM 技術情報の検索」ボタンについて (#731922)

MR間でUIが変わるような変更はよくないのではないか?と言う議論も当然あったのですが、自己解決を促進する上ではエラーメッセージから該当する技術情報に辿り着くまでの手段を早めるためにデフォルトで有効にする事になりました。

また、8.0.1時点では英語の技術情報しか検索できなかったのですが、多くの日本のお客様は日本語の技術情報を使用して情報を検索している、と言う背景もあったため、日本語の技術情報を検索できるように8.0.2から改善が行われています。
 これは以下のようなNotes.ini で検索サイトを変更できるようにしたことと、デフォルトでこの値を追加させるようにした事によって実現可能になりました。

TechnoteSearchURL = http://www-1.ibm.com/support/search.wss?rs=475&tc=SSKTWP+SSKTMJ&dc=DA400+DB500&q=

必要ない、と言う声も多いとは思うのですが、日本語でも検索可能にするため30-40近い技術文書を追加している事もあるので一人でも多くの方に使ってもらえるとうれしいです。

以下のサイトに機能紹介もされているので興味がある方は是非。
第17回 エラー時に技術情報を表示させる

ブログ始めました

2008年10月31日 01:10

 Notes/Domino のサポートをしていて色々感じる事はあるのですが、中々発信する機会が無いのでブログを始めてみる事にしました。

 実際にどんな反応が来るのかも分からないし、どれくらいの頻度で更新できるかも分からないのですが、読んでいる人にも有益な情報が投稿できるように頑張るのでよろしくお願いします。




最新記事


上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。