Mery はシンプルな機能で構成されているテキストエディターです。マニュアルなんて読まずに、思うがままに使って頂き、「ああねー」と感じていただければと思って開発しています。

したがって、細かい操作方法などを解説するつもりはありませんが、私が普段使っていて「コレって便利じゃね？」と思う小技をご紹介していきたいと思います。

スポンサーリンク

意外と知られていない文字数カウント

"Mery, テキストエディター" のようなキーワードで Google 検索すると、関連する検索キーワードとして「文字数」というのが上位に来ていました。

テキストエディターを使ってブログの記事などを書いていると確かに文字数は気になりますが、Mery のメニューにはそれっぽい機能が無いんですよね。

何も考えず Ctrl + A を押してみてください。

するとステータスバーに選択中の文字数が表示されます。すべて選択した状態ですから、テキスト全体の文字数が表示されていることになります。

もちろん部分的に選択した状態ですと、選択範囲のみの文字数が表示されます。

そうそう、ステータスバーの各項目はダブルクリックできるようになっていて、それぞれの項目に応じたメニューが呼び出せますよ。

ついクセになる Ctrl + Shift + ↓ または ↑

みなさんは単語を検索するときに [検索] メニューから検索ダイアログを開いて [検索する文字列] を入力して……。という手順を踏んでいますか？

例えば左の図のように "簡単" の付近にキャレットがあったとして、この状態から Ctrl + Shift + ↓ を押してみてください。

するとキャレット付近の単語を自動的に判別し、その単語を使用して下方向に検索します。

Ctrl + Shift を押したまま ↓ を何度か押すとどんどん下へ検索していきます。上に戻りたいときはそのまま ↑ を押せば一つ前の単語に戻ります。

実はこれ、[検索] メニューの中にある [次の文字列を検索] という機能なのですが、メニューから使用するよりもキーボードのショートカットキーから使用したほうが圧倒的に便利で、この機能こそが Mery の存在意義かもしれないと思うほどです。

左上アイコンの便利な使い方

タイトルバーの左端にテキストエディター「Mery」のアイコンがありますよね。これ、ただの飾りではありません。クリックすると [移動] や [サイズ変更] といった Windows のシステムメニューが表示されますが、ここまでは当たり前です。

開いているファイルのコピーを作成する

ファイルを開いている状態で、左上のアイコンをデスクトップやフォルダーにドラッグしてやると、現在アクティブになっているファイルのコピーを作成することができます。

編集中の内容が反映されるわけではなく、保存されているファイルの本体をコピーしますので、ちょっとしたバックアップなどにも活用できます。

開いているファイルをアプリケーションに渡す

ファイルを開いている状態で、左上のアイコンを任意のアプリケーションにドラッグしてやると、現在アクティブになっているファイルの本体のパスをアプリケーションに渡すことができます。

デスクトップなどにある任意のアプリケーションのショートカットに渡すことも可能です。

色んなところにドラッグ&ドロップ

マウスでの操作に慣れている場合、ドラッグ&ドロップの機能は非常に有効です。Mery のウィンドウはドロップする場所によって様々な役割を果たします。

テキストをドラッグ&ドロップする

テキストが選択されている状態で選択範囲をドラッグし、編集エリアにドロップすれば選択範囲のテキストをそこに移動させることができますが、これは割と普通ですよね。

では、編集エリアの外 (メニューやツールバーのあたり) にドロップすると……新たなタブが作成され、そこに選択範囲のテキストが貼り付けられます。

ブラウザなどの他のアプリケーションで選択している文字でも Mery のウィンドウや編集エリアにドラッグ&ドロップすることで同様の動作が可能ですので、わざわざ [コピー] して [貼り付け] する手間もかかりません。私はちょっとしたメモ代わりに使ったりもしています。

検索ダイアログにドラッグ&ドロップする

検索ダイアログのテキストボックスには色んなものをドロップすることができます。ドロップされたものを判別して自動的に文字列が入力されます。

例えば [検索文字列] には選択範囲のテキストをドロップすることもできますし、エクスプローラーからファイルをドロップすればファイルのパスが入力されます。

上図は [ファイルから検索] のダイアログですが、エクスプローラーからファイルを [ファイルの種類] にドロップすればそのファイルの拡張子が、[検索するフォルダー] にドロップすればそのファイルがあるフォルダーが自動的に入力されます。

マーカー機能の使い方をいまさら解説

その名のとおり、文章の任意の箇所に蛍光ペンで線を引いたような目印を付けることができる機能ですが、マーカーバーと合わせて使ったほうが断然便利です。

マーカーバーは現在登録されているマーカーにすばやくアクセスするためのツールバーです。マーカー機能を使用するにあたって、マーカーバーを有効にしておくとさらに多くの機能が使用できるようになります。

マーカーバーを表示するには、[表示] メニューから [ツール バー] を選択し [マーカー バー] にチェックを入れます。

初期状態では、マーカーバーはツールバーの右端に最小化されていますので、境目をドラッグしてマーカーバーを好きな位置に移動させましょう。

マーカーが登録されていない場合、マーカーバーは空っぽのバーなのでどれがマーカーバーなのか判別しづらいかもしれません。

そういうときは [表示] メニューの [ツール バー] を選択し [ツール バーのタイトル] にチェックを入れると各ツールバーにタイトルが表示されるようになります。

マーカーを追加・削除する

マーカーの追加は、単語を選択して右クリックから [マーカーに追加 / 削除] を実行するか、マーカーバーにドラッグ&ドロップします。

マーカーはドラッグ&ドロップで順番を入れ替えることもできます。

マーカーの削除は、もう一度、単語を選択して [マーカーに追加 / 削除] を実行しても良いですが、マーカーバーで任意のマーカーを右クリックして [削除] するほうが簡単だと思います。

このマーカーバー、Mery の編集エリア内のテキストに限らず、ブラウザなどの他のアプリケーションからテキストの選択範囲をドラッグ&ドロップしても追加することができます。

マーカーバーを活用する

マーカーバーの単語を左クリックするとその単語で [次を検索]、 Shift を押しながら左クリックすると [前を検索] します。

また、右クリックするとマーカーの操作に関連する機能がポップアップメニューで表示されます。

[有効] のチェックを外すと登録された単語は残したまま、色付けのみを解除します。[置換] などの機能も、もうお分かりですよね。

そうそう、マーカーバーの単語の部分を編集エリア内にドラッグ&ドロップすると、単語をその部分に挿入することもできますよ。簡単なテンプレート機能としても使うことができそうですね。

ヌルヌル動くルーラ機能

編集エリアの上部に表示されている定規みたいなやつのことです。これは文字を数える目安みたいなものかなーと思われていると思いますが、そのとおりです。

このルーラの部分をクリックしたり、ドラッグしたりしてみてください。すると、折り返し位置がヌルヌル動きます。

え、開いている文書すべてに影響しちゃうって？

ルーラを Ctrl を押しながらクリック・ドラッグしてやれば、そのタブだけに反映されます。

私はお気に入りのヌルヌル動くルーラ機能なのですが、時々「誤クリックしてしまうので無効にしたい」というご意見を頂きます。

残念ながらお肌に合わなかったかたは [ツール] メニューの [オプション] を選択して [基本] タブの [ルーラで文字数を指定する] のチェックを外すと、この機能は無効になります。

文章を書くときに使用する【P】付きのフォント、例えば「ＭＳ Ｐゴシック」などのプロポーショナルフォントをお使いの場合は、文字によって幅が様々なのでルーラの目盛りはあてになりません。

ポータブル版として持ち出そう

通常、設定ファイルはお使いのパソコンの [C:\Users\ユーザ名\AppData\Roaming\Mery] に保存されますので、別のパソコンで Mery を使用すると設定ファイルは個別に作成されてしまいます。

ポータブル機能を使用すれば、設定ファイルを USB メモリの中に保存できますので、パソコンを移動しても共通の設定ファイルを使うことができ、しかもパソコンの環境を汚すことはありません。

ポータブル機能、なんて難しそうなことを言ってますが、やり方はとても簡単。

Mery の ZIP 版を解凍して、Mery.exe があるフォルダーに [Mery.ini] という空のファイルを作るだけです。

右クリックで [新規作成] から [テキスト ドキュメント] を選択。[新しいテキストドキュメント.txt] を [Mery.ini] に変更するだけ。

あとは Mery フォルダーを USB メモリなどにコピーしてください。設定はすべて先ほど作成した [Mery.ini] に書き込まれますので、別のパソコンでも共通の設定でお使いいただけます。

入力中の文字がリアルタイムに反映されるトゥルーインライン入力

「トゥルーインライン入力」という名前だけ聞くと、うわぁ、なんだか面倒くさそうだなーと思ってしまうかもしれません。

Microsoft の Word や Outlook でも採用されている入力方式で、入力中で変換を確定していない文字をリアルタイムで文章に反映されることができる機能です。

通常のインライン入力

従来の IME 入力では、入力中の文字は変換を確定するまで編集エリアに反映されませんでした。

左図のように、変換中の文字が後に続く文字の上に重なってしまい、前後の文脈を見失ってしまいそうになります。

トゥルーインライン入力

トゥルーインライン入力を使用すると、入力中の文字が未確定の状態でもリアルタイムで編集エリアに反映されます。

未確定の文字に続く後ろの文字が常に見えていますので、前後の文脈を見失うことなく文章の入力に集中することができます。

トゥルーインライン入力を使用するには、[ツール] メニューから [オプション] を開いて [基本] タブの中にある [変換中の文字列を挿入モードで入力] にチェックをいれます。

あとは [OK] ボタンをクリックしてオプション画面を閉じれば設定完了です。

昇順・降順で並べ替え。その他、便利な標準マクロ

行を並べ替えたりする機能は、標準の機能としては搭載されていませんが Mery に同梱されているマクロを使えば可能です。

Mery には以下のようなマクロが最初から入っています。

昇順で並べ替え

行を昇順に並べ替えます。文字列を選択した状態で実行すれば選択範囲内のみ並べ替えます。

行を昇順に並べ替えます。文字列を選択した状態で実行すれば選択範囲内のみ並べ替えます。 降順で並べ替え

行を降順に並べ替えます。文字列を選択した状態で実行すれば選択範囲内のみ並べ替えます。

行を降順に並べ替えます。文字列を選択した状態で実行すれば選択範囲内のみ並べ替えます。 連続する重複行を削除

重複する行を削除して 1 行にします。[昇順で並べ替え] などで並べ替えた後に使用すれば効果的です。

重複する行を削除して 1 行にします。[昇順で並べ替え] などで並べ替えた後に使用すれば効果的です。 このファイルから検索 (マッチする行)

現在編集中の文書の中から正規表現で一致した行のみを抽出します。

現在編集中の文書の中から正規表現で一致した行のみを抽出します。 このファイルから検索 (マッチしない行)

現在編集中の文書の中から正規表現で一致しない行のみを抽出します。

現在編集中の文書の中から正規表現で一致しない行のみを抽出します。 特殊文字を入力

文字コードを数値で指定して入力します。U+10000 以上の文字も対応しています。(数値の部分のみ入力してください)

マクロの使い方はとても簡単。まず [マクロ] メニューから [カスタマイズ] を開きます。

[追加] ボタンをクリックして Mery のインストール先フォルダーにある Macros フォルダーから使いたいマクロを選択します。開くダイアログでは複数のマクロを一括で選択することも可能です。

あとは [OK] ボタンをクリックしてカスタマイズダイアログを閉じると、[マクロ] メニューに機能が追加されていますのでそれを選択するだけです。

カスタマイズダイアログには [イベントで実行] という機能がありまして、そこにチェックを入れて [イベント] ボタンから任意のイベントを選択することで、お好きなタイミングで自動的にマクロを実行することもできます。

マクロを Python で記述する

Mery のマクロは、Windows の ActiveScript という機能を利用しているため、標準では JScript 及び VBScript に対応していますが、これに Python を追加して、マクロを Python で記述できるようにする手順をご紹介します。

Windows 10 (64 ビット) と Mery 2.6.5 (64 ビット) の組み合わせで確認しました。バージョンが異なったり 32 ビット環境の場合は手順が異なる部分があります。また、すでに Python をインストールしている場合や、違うバージョンの Python を使用したい場合などは適宜読み替えてください。

Python のインストール

まずは Python をダウンロードします。今回は Mery の 64 ビット版を使用するので Python も 64 ビット版に合わせる必要があります。

現時点での最新版を使用してみます。Python 3.6.4 の 64 ビット版インストーラー をダウンロードします。

ダウンロードが完了したら、早速 python-3.6.4-amd64.exe をダブルクリックしてインストールしてみましょう。

インストーラーが起動したら、最初の画面で [Add Python 3.6 to PATH] にチェックを入れておきます。

インストール先に問題がないことを確認し、[Install Now] をクリックすればインストールが始まります。

[Customize installation] をクリックすると追加機能をインストールする・しないを切り替えることなどが可能ですが、今回はすべてデフォルトのままインストールしました。

インストール完了の画面が表示されましたが、ここで [Disable path length limit] という項目があることに気づきます。

Windows ではファイルのパスが最大 260 文字という制限がありましたが、Windows 10 ではこの制限を解除できるようになりました。

Python 3.6 ではここから設定できるようです。長いパスを扱う場合など、必要に応じてクリックしてください。

以上で Python のインストールは完了です。続いて Python for Windows (pywin32) Extensions をインストールします。

Python for Windows (pywin32) Extensions のインストール

Python for Windows (pywin32) Extensions は Python から Windows の API にアクセスするためのものですが、これをインストールすることで Windows の ActiveScript で Python をエンジンとしてスクリプトを実行することができるようになります。

pywin32 をダウンロードします。pywin32 は Python のバージョンごとに用意されています。Python 3.6 用で 64 ビット版のものをダウンロードしましょう。

pywin32 って、名前に 32 が付いていますが、ちゃんと 64 ビット版も用意されています。今回は pywin32-223.win-amd64-py3.6.exe をダウンロードしました。

pywin32-223.win-amd64-py3.6.exe をダブルクリックしてインストールします。インストールは [次へ] をクリックしていくだけです。

正常に Python がインストールされている場合、pywin32 のインストールの途中でインストール済みの Python が検出されます。

この画面で Python が検出されず空欄になっている場合は、Python のインストールが失敗しているか、Python のバージョンやビット数が合っていないなどの原因が考えられます。

最後までインストールが進めば完了です。基本的に [次へ] をクリックするだけの作業ですが、インストールってなんだか疲れますよね……。あと一息です！

Python を ActiveScript のエンジンとして登録する

それでは Python を ActiveScript のエンジンとして使用できるように登録作業を行います。と言っても操作は簡単で、登録用のスクリプトを実行するだけです。

Python 3.6.4 はデフォルトで以下のフォルダーにインストールされます。

C:\Users\<username>\AppData\Local\Programs\Python\Python36\

Python のインストール先の以下のフォルダーにある "pyscript.py" をダブルクリックで実行します。

Python36\Lib\site-packages\win32comext\axscript\client\

一瞬、黒いヤーツがチラっと表示されたら完了です。

ダブルクリックで実行できない場合などはコマンドプロンプトを [管理者として実行] して直接 "pyscript.py" を叩くと行けるかもしれません。

Mery のマクロで Python が使えるか試してみる

上記の手順が完了していれば、Mery のマクロで Python が使用できる状態になっていますが、環境変数などを反映させるために Mery が起動中の場合は一度再起動してください。

適当な Python のマクロを用意します。

a = 1 if a == 1: window.alert("mery") else: window.alert(a)

ファイル名を "sample.pys" のように拡張子を "pys" とします。マクロの内容は何でも構いませんが、なるべく Python 独自の書き方が入っていた方が確認しやすいです。

Python が正常にインストールされていないなどの理由でスクリプトエンジンが見つからない場合、Mery はマクロを JScript として実行しますので "a = 1" だけのようなマクロですと JScript として実行できてしまいます。

Python の書き方でマクロが実行できれば完了です。あとは自由に Python を使用したマクロをお楽しみください！

……と言いたいところですが注意点が 2 つ。

グローバルオブジェクトは省略できません

JScript では省略できるグローバルオブジェクトですが、きちんと記述する必要があります。以下のような書き方は JScript では大丈夫ですが Python ではエラーが発生します。

alert("mery") document.selection.Text = "mery"

グローバルオブジェクトの window は省略せず、以下のように書かなければなりません。

window.alert("mery") window.document.selection.Text = "mery"

Mery が定義している定数は使用できません

Mery のマクロを JScript や VBScript で実行したときに使用できていた meEncodingUTF16LE などのエンコード定数や、その他もろもろの定数は JScript と VBScript 以外では定義されていません。

定数を使用する場合は手動で定義してやる必要がありますので、Python 向けの定数宣言部のソースを掲載しておきます。

ME_CASEUPPERCASE = 1 ME_CASELOWERCASE = 2 ME_WIDTHHALFWIDTH = 1 ME_WIDTHFULLWIDTH = 2 ME_COPYUNICODE = 1 ME_COPYQUOTES = 2 ME_FINDPREVIOUS = 0x0000 ME_FINDNEXT = 0x0001 ME_FINDREPLACECASE = 0x0002 ME_FINDREPLACEONLYWORD = 0x0004 ME_FINDAROUND = 0x0008 ME_FINDREPLACEREGEXP = 0x0010 ME_REPLACESELONLY = 0x0020 ME_REPLACEALL = 0x0040 ME_FINDRECURSIVE = 0x0080 ME_FINDFILENAMESONLY = 0x0100 ME_REPLACEBACKUP = 0x0200 ME_FINDREPEATPREVIOUS = 0x00 ME_FINDREPEATNEXT = 0x01 ME_FINDREPEATWORD = 0x02 ME_FORMATINSERTNL = 1 ME_FORMATDELETENL = 2 ME_FORMATSPLITLINES = 3 ME_FORMATJOINLINES = 4 ME_POSVIEW = 1 ME_POSLOGICAL = 2 ME_LINEVIEW = 1 ME_LINELOGICAL = 2 ME_GETLINEWITHNEWLINES = 0x01 ME_GETLINEVIEW = 0x02 ME_DATETIMEDATE = 1 ME_DATEDATETIME = 2 ME_MENUCHECKED = 0x01 ME_MENUGRAYED = 0x02 ME_MENUSEPARATOR = 0x04 ME_POSMOUSE = 1 ME_COLLAPSESTART = 1 ME_COLLAPSEEND = 2 ME_OPENALLOWNEWWINDOW = 1 ME_ENCODING_NONE = 0 ME_ENCODING_UTF16LE = 65537 ME_ENCODING_UTF16LEBOM = 655371 ME_ENCODING_UTF16LENOBOM = 655370 ME_ENCODING_UTF16BE = 65538 ME_ENCODING_UTF16BEBOM = 655381 ME_ENCODING_UTF16BENOBOM = 655380 ME_ENCODING_UTF8 = 65001 ME_ENCODING_UTF8BOM = 650011 ME_ENCODING_UTF8NOBOM = 650010 ME_ENCODING_UTF7 = 65000 ME_ENCODING_ARABIC = 1256 ME_ENCODING_BALTIC = 1257 ME_ENCODING_CENTRALEUROPEAN = 1250 ME_ENCODING_CHINESESIMPLIFIED = 936 ME_ENCODING_CHINESETRADITIONAL = 950 ME_ENCODING_CYRILLIC = 1251 ME_ENCODING_GREEK = 1253 ME_ENCODING_HEBREW = 1255 ME_ENCODING_EUC = 51932 ME_ENCODING_JIS = 50222 ME_ENCODING_SHIFTJIS = 932 ME_ENCODING_KOREAN = 949 ME_ENCODING_THAI = 874 ME_ENCODING_TURKISH = 1254 ME_ENCODING_VIETNAMESE = 1258 ME_ENCODING_WESTERNEUROPEAN = 1252

以上が、Mery のマクロで Python を使用する方法です。

実行するために Python の環境が必要なので気軽にマクロを配布することはできないかもしれませんが、Python の勉強用だとか、Python が超得意なかたとか、Python でしか使えないライブラリがある場合などは役に立つかもしれません。

上記の手順は動作を保証するものではありません。環境によってはうまく動かなかったりするかもしれませんが、ActiveScript に Python を追加する手順につきましては Mery とは関係ありませんのでサポート外とさせていただきますことをご了承ください。

まとめ

個人的にお気に入りなのは「ついクセになる Ctrl + Shift + ↓ または ↑」です。検索したいと思った瞬間にタンターン！とキーボードを叩いてすぐ検索できるのでとても心地よいですね。

それから「左上アイコンの便利な使い方」も非常に便利な機能です。

私はブログをいじくったりするのに FTP ソフトをよく使いますが、複数のファイルを編集していると FTP ソフトのファイルマネージャーやエクスプローラーなどでフォルダーを行ったり来たりするのがなかなか大変ですよね。

そんな時、Mery の左上アイコンを使えばドラッグドロップで簡単に FTP ソフトにそのファイルのパスを渡せるので活用しています。

みなさんも面白い使い方や便利な小技を見つけてみてくださいね。「そんなの知ってるよ！」みたいな内容も多いかもしれませんが、この記事が何かのお役に立てれば幸いです。

スポンサーリンク

関連する記事

フォローする