「検索(SJIS以外)」の版間の差分

提供: MeryWiki
ナビゲーションに移動 検索に移動
Masme (トーク | 投稿記録)
マクロ更新
Masme (トーク | 投稿記録)
マクロ更新
1行目: 1行目:
<div style="float:right">__TOC__</div>
Shift_JIS (CP932) で保存できない Unicode 文字を検索します。
Shift_JIS (CP932) で保存できない Unicode 文字を検索します。


Mery の検索機能を利用しているため、以下の特徴があります。
Mery の検索機能を利用しているため、下記の特徴があります。
* 検索文字列および検索強調が変更されます。
* 検索文字列および検索強調が変更されます。
* マクロ実行後は「次を検索(F3)」「前を検索(Shift+F3)」で次/前が検索できます。
* マクロ実行後は「次を検索(F3)」「前を検索(Shift+F3)」で次/前を検索できます。


==ソースコード==
==ソースコード==
16行目: 18行目:
==更新履歴==
==更新履歴==
[[ファイル:検索(SJIS以外).zip]] / [[ファイル:検索強調を解除.zip]]
[[ファイル:検索(SJIS以外).zip]] / [[ファイル:検索強調を解除.zip]]
* 2017/06/25
** アイコンファイルに24x24・32x32・48x48サイズの画像を追加。
** 変数を使用しないことにした。
* 2015/12/26
* 2015/12/26
** アイコンの指定先を "My Macros\検索(SJIS以外).ico" → "検索(SJIS以外).ico" に変更。
** アイコンの指定先を "My Macros\検索(SJIS以外).ico" → "検索(SJIS以外).ico" に変更。
** アイコンの指定先を "My Macros\検索強調を解除.ico" → "検索強調を解除.ico" に変更。
** アイコンの指定先を "My Macros\検索強調を解除.ico" → "検索強調を解除.ico" に変更。
==既知の不具合==
* 仕様上、サロゲートペアは2文字として扱われます。
*: サロゲートペアを1文字として扱おうとすると、単独サロゲートを検索できなくなってしまうため、現状の仕様になっています。


==補足==
==補足==
24行目: 33行目:


{|class="wikitable"
{|class="wikitable"
!検索文字列
! 検索文字列
|[^\x{00}-\x{80}。-゚ (中略) \x{F8F0}-\x{F8F3}]
| [^\x{00}-\x{80}。-゚ (中略) \x{F8F0}-\x{F8F3}]
|-
|-
!フラグ
! フラグ
|大文字と小文字を区別する (meFindReplaceCase)<br>正規表現を使用する (meFindReplaceRegExp)<br>文末まで検索したら文頭に移動する (meFindAround)<br>下/次を検索 (meFindNext)
| 大文字と小文字を区別する (meFindReplaceCase)<br>正規表現を使用する (meFindReplaceRegExp)<br>文末まで検索したら文頭に移動する (meFindAround)<br>下/次を検索 (meFindNext)
|}
|}


※検索文字列は、Shift_JIS (CP932) の全文字(約9400字)を列挙した、非常に長い正規表現(約7000字)となっています。
※検索文字列は、Shift_JIS (CP932) の全文字(約9400字)を列挙した、非常に長い正規表現(約7000字)となっています。

2017年6月25日 (日) 08:16時点における版

Shift_JIS (CP932) で保存できない Unicode 文字を検索します。

Mery の検索機能を利用しているため、下記の特徴があります。

  • 検索文字列および検索強調が変更されます。
  • マクロ実行後は「次を検索(F3)」「前を検索(Shift+F3)」で次/前を検索できます。

ソースコード

ダウンロード→ 検索(SJIS以外).zip

  • 拙作ですがアイコンファイル (検索(SJIS以外).ico) を同梱してあります。
    Mery 2.4.7 以降の場合、マクロ (検索(SJIS以外).js) と同じフォルダに、
    Mery 2.4.6 以前の場合、Mery.exe と同じフォルダに、
    アイコンファイルを配置しておくとツールバーにアイコンが読み込まれます。

おまけ→ 検索強調を解除.zip

  • 「検索文字列の強調を解除」をマクロで再現したものです。アイコンファイルも同梱してあります。

更新履歴

ファイル:検索(SJIS以外).zip / ファイル:検索強調を解除.zip

  • 2017/06/25
    • アイコンファイルに24x24・32x32・48x48サイズの画像を追加。
    • 変数を使用しないことにした。
  • 2015/12/26
    • アイコンの指定先を "My Macros\検索(SJIS以外).ico" → "検索(SJIS以外).ico" に変更。
    • アイコンの指定先を "My Macros\検索強調を解除.ico" → "検索強調を解除.ico" に変更。

既知の不具合

  • 仕様上、サロゲートペアは2文字として扱われます。
    サロゲートペアを1文字として扱おうとすると、単独サロゲートを検索できなくなってしまうため、現状の仕様になっています。

補足

このマクロを実行すると、下記の条件で検索が行われます。

検索文字列 [^\x{00}-\x{80}。-゚ (中略) \x{F8F0}-\x{F8F3}]
フラグ 大文字と小文字を区別する (meFindReplaceCase)
正規表現を使用する (meFindReplaceRegExp)
文末まで検索したら文頭に移動する (meFindAround)
下/次を検索 (meFindNext)

※検索文字列は、Shift_JIS (CP932) の全文字(約9400字)を列挙した、非常に長い正規表現(約7000字)となっています。

スポンサーリンク