[スレッド全体]

[344] ヘルプのコメント(rev.1135) 
2007/9/30 (日) 00:06:15 げんた

まず,sakura.hhc, sakura.hhk, sakura.hhpがsvn:ignoreに指定されているにもかかわらず追加commitされているようですが...

▼[HLP000005.html] 他
『VisualStyle化』『UAC対応化』『マルチユーザー化』という言葉にどうも違和感があるように感じられます.

『VisualStyle化』→『VisualStyleを有効にする』

『UAC対応化』→『VirtualStoreを無効にする』

『マルチユーザー化』→『個別プロファイルの利用』(は飛躍しすぎでわかりにくいか...)
『設定のユーザ毎管理』『設定の個別保存』
なんか良い言葉ないですかね...

>詳しくはUAC対応化およびマルチユーザー化の頁参照
「の頁」は不要.

>パッケージ版のアンインストールでは、sakura.ini は削除しないようになっています。
削除しないようになっています→削除されません

*サクラエディタが作成する作業ファイルについて
sakura.exeのあるフォルダに以下のファイルが作成されます。
→マルチユーザの場合はsakura.exe.iniで指定された保存先.

▼[HLP000006.html]
正規表現の違いについて(別途確認します.)

▼[HLP000010.html] ツールバーアイコンの変更手順
>これは以前のバージョンが間違えていたわけではなく、過去の経緯によるものなので仕様と理解してください。
以降の部分はヘルプとしては不要な気がしますけど.
「仕様と」→「仕様変更と」の方がbetter.

(HLP000149.htmlも同様)

アイコンファイルの作成について
URLが2つ紹介してありますが,この部分は外部リンクにした方が良いのでは?

▼[HLP000148.html] 「検索」タブ
画像が古いです.(正規表現ライブラリを指定した場合は指定以外のDLLを確認しないので「優先」という言葉はやめました.)
ちなみにbregonigも1.41aが最新.

▼[HLP000260.html] アプリアイコン
>サクラエディタと同じフォルダ
「あるいは設定フォルダに」を追加

[348] Re:ヘルプのコメント(rev.1135) 
2007/9/30 (日) 08:20:31 K.Takata

> ▼[HLP000006.html]
> 正規表現の違いについて(別途確認します.)

まずは、Bregexp.dllでも使えるものについて。

>パターンについて
>. \nを除く任意の1文字 [.\n]と同じ
「[^\n]と同じ」の誤記?


>使える(かもしれない)直前のパターンの数量子
・? の最小一致である ?? の記載がありません。
・m は省略可能であることを記載するか、別途 {n,} と {n,}? の欄を作った方が
  良いかもしれません。
・{n} と同じ意味で {n}? も使えます。
・最大一致(欲張りな量指定子)と最小一致(無欲な量指定子)は別の表にしても
  良いかもしれません。


>使える(かもしれない)エスケープシーケンス
>\b 単語の境界(SJIS未対応)
・「SJIS未対応」の意味がよく分かりません。\w に合わせて、「英単語の境界」に
  した方が良いかもしれません。
・[ ] の中で \b を使うと、バックスペース(BS)の意味になることも記載した方が
  良いかもしれません。

>\Z 文字列の最後
一般的な意味は、「文字列の最後、または文字列の最後の改行の直前」です。
sakuraの改行の扱いに合わせて適宜修正すべきだと思います。

>\n ( )でグループ化した文字列を指定する(nは1) 置換文字列などに使用できます
「(nは1)」は変です。「(nは1以上の整数)」等でしょうか。
また、Perl では、置換文字列には、\n より $n が推奨されています。
(sakuraで使うにはどちらでも良いかもしれませんが。)

Bregexp.dll では \G は使えないことになっていますが、全く使えないわけではなく、
限定的に使用可能です。
検索では使い道はなさそうですが、置換では有用な場合もあるかもしれません。
http://homepage3.nifty.com/k-takata/diary/2007-09.html#22a


▼拡張式集合
(?...) 形式の拡張正規表現については、Bregexp.dll のドキュメントには
何も書かれていませんが、以下のものが使えます。

(?#...)  注釈
(?imsx)  孤立オプション
           i: 大文字小文字照合
           m: 複数行  (sakuraではデフォルトでon?)
           s: 単一行  (. が \n にもマッチ)
           x: 拡張形式(空白を無視、# 以降を無視)

(式)     捕獲式集合
(?:式)   非捕獲式集合 (グループ化のみ)

(?=式)   先読み
(?!式)   否定先読み

・用語は鬼車のドキュメントから持ってきましたので、必要に応じて変更すべきかも
  しれません。
・sakuraが複数行の検索に対応していないことを考えると、(?m) の記載はあまり
  意味がないかもしれません。
・Perl 5.005 から使えるようになった、
  (?-imsx), (imsx-imsx:式), (?<=式), (?<!式), (?>式) は、
  bregonig.dll では使用できますが、Bregexp.dll では使用できません。

[351] Re2:ヘルプのコメント(rev.1135) 
2007/9/30 (日) 14:42:02 K.Takata

> >使える(かもしれない)エスケープシーケンス
> >\b 単語の境界(SJIS未対応)
> ・「SJIS未対応」の意味がよく分かりません。\w に合わせて、「英単語の境界」に
>   した方が良いかもしれません。


確認したところ、マッチすべきでないところにマッチする場合があるようです。例えば、

 2 バイト文字

に対して \b で検索した場合は問題ないのですが、

 2バイト文字

に対して同じように検索すると、おかしな結果になります。

[352] Re3:ヘルプのコメント(rev.1135) 
2007/9/30 (日) 22:47:38 maru

詳細なご説明をありがとうございます。
正直今まで、よく分からない・自身の無いところが多く、修正したくとも躊躇していました。

一応1.6.0.0ヘルプでは、コメントいただいた内容を元に私なりにまとめましたが、説明いただいた内容が詳細すぎて、かなり自信ないです。まだ不適切な部分が残っていそうですが、とりあえずリリースしました。

なお、正規表現の説明はライブラリの説明から独立してHLP000089.htmlに引越ししました。
http://sakura-editor.sourceforge.net/htmlhelp/HLP000089.html

[355] Re4:ヘルプのコメント(rev.1135) 
2007/10/1 (月) 01:37:16 K.Takata

▼ maruさん
> まだ不適切な部分が残っていそうですが、とりあえずリリースしました。
リリースお疲れ様です。

>HLP000089.html
いろいろ気になる点がありましたので、細かいですが指摘させていただきます。

▼量指定子
上のメタキャラクタでは数量子となっており、統一されていません。(どちらが一般的かは分かりません。)

強欲な量指定子はまだ2.00のベータ版にしか搭載していないので、ヘルプに正式に載せるには早いかもしれません。

▼エスケープシーケンス
\w は、Bregexp.dll では英単語ですが、bregonig.dll では英単語ではないので、
 単語の構成文字 [0-9A-Za-z_]と同じ
 [鬼] 2バイト文字も含む
の方が良いかもしれません。こうする場合は、\b, \B の「英単語」も「単語」に戻すべきでしょう。

\G を「前回のマッチ終端」と記載するのは問題がある気がします。「すべて置換」(s///g) の場合には一応そうなるのですが、普通の置換や検索の場合には、検索開始位置にマッチしますので。

\x{HHHH} の HHHH は青字にすべきです。「拡張十六進数表現」は、「Hに16進数で文字コードを指定する(Hは1〜4桁)」にした方が \xhh との統一がとれると思います。\xhh とは H の大小が合っていないのでどちらかに合わせた方がよいと思います。

\p{^property-name}, \P{property-name} は1つの欄にまとめて良いと思います。property-name は青字にすべきです。

\k<name+n>, \k<name-n>, \k'name+n', \k'name-n' は1つの欄にまとめて良いと思います。name と n は青字にすべきです。

エスケープシーケンスは、鬼車のドキュメントのように、文字、文字種、位置、参照に分類した方がわかりやすくなるかもしれません。

▼置換表現および参照
name と n は青字にすべきです。

\x{HHHH} がぽつんと存在しているのは不自然な気がします。こちらの表からは削除するか、あるいは、置換で使える他のエスケープシーケンスも列挙するかどちらかに統一した方が良いと思います。


長くなったので分けます。

[356] Re5:ヘルプのコメント(rev.1135) 
2007/10/1 (月) 01:38:22 K.Takata

> >HLP000089.html

続きです。

▼文字集合
メタキャラクタ の [ ] の説明は「キャラクタクラス」となっています。どちらかに統一した方がよいでしょう。(鬼車では文字集合と言っていますが、どちらが一般的かは分かりません。)

POSIX ブラケットの説明は、
 [:xxxxx:] POSIXブラケット
 [:^xxxxx:] POSIXブラケット(否定)
の方が他との統一がとれているような気がします。xxxxx は青字にすべきです。

[...] の ... と、..&&.. の .. は青字にした方が良いかもしれません。

▼拡張式集合
(?#...) の ... は青字にした方が良いかもしれません。

(?imsx) で m があるのに、m の説明がないのはやはり不自然な気がしてきました。
 m: 複数行(サクラエディタではデフォルトでon)
あたりにしておくのがよいかもしれません。

(式) は、メタキャラクタの ( ) と同じものです。(?:式) との対比の意味では、この表に記載してあってもいいと思うのですが、上との表現の統一が必要でしょう。

(式) などの 式 や、(?<name>式) などの name は青字にした方が良いかもしれません。式 ではなく パターン の方が既存の部分との統一がとれるかもしれません。

▼bregonig.dllへの変更による違い
「何度も書いていますが、」はいらないと思います。ヘルプ執筆者に対するコメントのつもりでしたので。

▼その他
\p{property-name} で使えるプロパティ名や、POSIXブラケットで使える名前は鬼車のドキュメントを参照するようにというのが良いでしょうかね?
http://www.geocities.jp/kosako3/oniguruma/doc/RE.ja.txt

bregonig.dll で拡張された機能とそうでないものがきれいに分けてあるのですが、類似の機能は並べた方がわかりやすいのではないかと思うのですがいかがでしょうか?
例:\Zと\z、\xhhと\x{HHHH}、$nと${n}、(?imsx)と(?imsx-imsx)と(imsx-imsx:式)、

[357] Re6:ヘルプのコメント(rev.1135) 
2007/10/2 (火) 00:02:53 maru

修正内容がとても具体的で、ものすごく助かります。
いまだに良く分からない機能がありますが、修正したものを下記に添付しました。
http://sakura.qp.land.to/?Document%2F9

用語統一の件、単なる方言なのか鬼車の用語なのか、私にはよく分からないので、なるべく併記する方向で対応予定です。

鬼車のドキュメントに記載されている、\G「照合開始位置」は分かりにくい印象を受けますが、分かる人にはこの一言で通じるのでしょうか。できれば1行説明を追加したいのですが、どう説明するのが適切でしょうか。

不勉強でいろいろと申し訳ありません。

[358] Re7:ヘルプのコメント(rev.1135) 
2007/10/2 (火) 03:58:43 K.Takata

▼ maruさん
> http://sakura.qp.land.to/?Document%2F9

手を加えたものを添付しておきました。

検索(あるいは置換前)で使える参照と、置換後の文字列に使える参照は別物なので、分ける必要があります。
置換後の方では、参照と \t, \n, \xHH などの「文字」が使えることを書いた方が良いのかもしれませんが、今回は書きませんでした。

あと、^ の説明にある「※サクラエディタでは、制限があります。」の記述が前から気になっています。サクラエディタ用の Bregexp.dll で BMatchEx() が使えるようになる前の名残のような気もするのですがどうなのでしょう?


> 鬼車のドキュメントに記載されている、\G「照合開始位置」は分かりにくい印象を受けますが、分かる人にはこの一言で通じるのでしょうか。できれば1行説明を追加したいのですが、どう説明するのが適切でしょうか。

照合開始位置が意味するところは、ライブラリの呼び出し方に依存します。
サクラエディタの場合は、カーソル位置になるのでしょうか? よく分かりません。

> 不勉強でいろいろと申し訳ありません。
こちらこそ、本当はbregonig.dllのドキュメントで書いておくべきことなのでしょうが、手抜きしたせいでお手数をおかけします。

[361] 正規表現で行頭の制限 
2007/10/2 (火) 23:29:19 maru

>あと、^ の説明にある「※サクラエディタでは、制限があります。」の記述が前から気になっています。サクラエディタ用の Bregexp.dll で BMatchEx() が使えるようになる前の名残のような気もするのですがどうなのでしょう?
このあたりの経緯をどなたかご存知でしたら教えてください。

問題の記述は、現バージョンのヘルプではこのページです。
http://sakura-editor.sourceforge.net/htmlhelp/HLP000089.html

help_20031107←この時点では記述あり
help_20040207←ここで削除(byMocaさん)された
help_20040926←ここ(Uchiさんのバージョン)で復活

ヘルプの更新履歴を見るとUchiさんのバージョンはhelp_20031107からの更新と思われ、Mocaさんの修正が漏れてしまっただけのように見えます。どなたからも「待った」が無ければ次回までに削除します。

[▼次のスレッド]
INCM/CMT
Cyclamen v3.81