タブ 空白変換について(MOONさん宛て?)

  1. こんにちは

    下記は 2009年10月23日 10時11分に 旅人さんの「文の途中のタブも空白に変換したい」要望に対して
    MOONさんが残されたコメントです。

    >ふむ、これが複数行となるとなかなか難しいですね。
    >指定したところだけなら範囲選択して置換すれば指定範囲だけ置換されます。
    >そのへんはどこのテキストエディタでも出来なさそうだなぁ・・・

    私も旅人さんより以前に同様の要望を出しましたが、「置換で対処してください」とのことで、あきらめました。
    だって、最初のタブがスペース4つになると、ずれてしまうので。
    ただ、今回、上のコメントを発見して、少し気になったので、書かせて頂きます。
    上記の「どこのテキストエディタでも出来なさそうだなぁ」とは「文の途中のタブも空白に変換できるエディタは少ない」という意味でしょうか?
    私が適当に拾ってきて使ってみた6本のフリーエディタは全て「文の途中のタブも空白に変換」できました。
    だからこそ、Mery にも実装して欲しいと思ったのですが、私が意味を取り違えてますか?

     |  Takara  |  返信
  2. 本人ではありませんが、失礼しますmm

    元ネタ探すのが大変でした。

    たぶん旅人さんの書かれた
    > 特定行のみのtabを変換したいという要件がありました。
    に対して自動(または少ない手順)で行うことが難しいと言っているのでは
    ないでしょうか?

     |  shu  |  返信
  3. >Shuさん

    > 元ネタ探すのが大変でした。

    ごめんなさい、日時じゃ探せないですね。
    全文引用するには大きすぎると思い、省いてしまいました。

    > たぶん旅人さんの書かれた
    > > 特定行のみのtabを変換したいという要件がありました。
    > に対して自動(または少ない手順)で行うことが難しいと言っているのでは
    > ないでしょうか?

    あっ、「特定行」がキーワードなのですね。
    私は、「他のエディタでは、範囲指定しても変換できるんだけど...」と悩んでいました。
    「何かの条件でヒットする行に対して、変換するのは難しい」という理解でいいですね。
    ありがとうございます。

     |  Takara  |  返信
  4. こんばんは!横から失礼します。。。

    > ¥t (これはなんとか学びました)を半角スペース4つに変換します。そのあとで
    > 例えば ABC<タブ>XYZ はスペースを3つ削除しないといけません。

    ようやくTakara さんの意図する動作の真相が見えました。。。
    単純にタブを「指定した数の空白」に置き換えるわけではなく、タブ幅にあわせて空白で埋める、ということ
    だったんですね。確かにこの場合は置換ではできなさそうです。

    Takara さんのおっしゃる動作が理にかなってると思いますので、見直したいと思います。
    ちょいと難易度高そうなのでしばらくかかりそうですが・・・。

     |  Kuro  |  返信
  5. > ちょいと難易度高そうなのでしばらくかかりそうですが・・・。

    仕様的に無理ぽ・・・。

     |  Kuro  |  返信
  6. > > ちょいと難易度高そうなのでしばらくかかりそうですが・・・。

    > 仕様的に無理ぽ・・・。

    うわぁぁっ! 書き込みにもたついてる間に........

    私のお正月が......orz ...orz ...
    もうだめだ、立ち直れそうにない。

     |  Takara  |  返信
  7. > うわぁぁっ! 書き込みにもたついてる間に........

    うはっw
    すみません、、、まだがんばってソース眺めてますのでw

    可変ピッチのフォントの場合に半角スペースの幅が解らないのでどうしょうもないですね、、、
    この機能のために可変ピッチフォントを封印するのは本末転倒な気がしますし・・・。

    ぐすん・・・。

     |  Kuro  |  返信
  8. なんか、それっぽいモノができた・・・
    某テキストエディタを見てみると、可変ピッチフォントの場合でも、固定ピッチフォントと同じ数しか
    空白入れてないみたいだからガタガタになっちゃうようなので、こういうものなのだろう・・・。

    ちなみに、某テキストエディタの「空白→タブ」は先頭の空白だけみたいだから、Meryもこのままで
    良いかな。。。

     |  Kuro  |  返信
  9. うぉーーー本人いない間に話がもりあがってた(ぉ
    すいません昨日は屍でした・・・

    ShuさんTakaraさん

    その通りです、文章の途中の特定行だけを自動的に置換するって案件でしたねあれは
    なんで正規表現もしくは範囲指定で多少はなんとかかなーってやつでしたね
    Shuさんフォローありがとうございます

    文字の形式がきまっていれば正規表現でできそうですが・・・やはりきびしそうですなぁ・・

    misoさん
    いつもフォローありがとうございます
    この場でなんですが、ツイッターフォローかえしてちょw

    kuro様
    お疲れ様です、むずかしいっすよねー
    ここでいろんな意見聞くたびにこんな使い方もあったのかと勉強させられますよ
    がんばってください

     |  MOON  |  返信
  10. http://homepage3.nifty.com/kinzoku/editor/index.html
    手前味噌なんですけど。
    mme.wsc を導入して、 tab2space.zip の
    空白をタブへ変換.js
    タブを空白へ変換.js
    を使えば、タブ幅を考慮した変換ができます。

     |  kinzoku  |  返信
  11. misoさん
    Yes
    それが僕ですw

    Kinzokuさん
    mme.exe愛用させてもらってます

    おもに罫線ひくためっすけどw
    超便利

    > mme.wsc を導入して、 tab2space.zip の
    > 空白をタブへ変換.js
    > タブを空白へ変換.js
    > を使えば、タブ幅を考慮した変換ができます。

    うほ、あれってそんな高度だったんですね。
    ちょっとつかってみよっと

     |  MOON  |  返信
  12. >うほ、あれってそんな高度だったんですね。
    罫線マクロも、一部で同じ計算をしています。

    GetActivePointX(mePosView) が、タブ幅を考慮した見かけの位置を返してくれないし、
    文字列メソッドは、マルチバイト文字でも1文字扱いだし、
    Mery のタブ幅を調べるために Mery.ini を開かなければならない

    すごい面倒だった。

     |  kinzoku  |  返信
  13. 使用上の注意を思い出した。

    Mery の設定でタブ幅を変更したら、
    いったん、Mery を再起動しないと、
    空白をタブへ変換.js
    タブを空白へ変換.js
    は、古いタブ幅で変更してしまいます。

    Mery を再起動することで、新しいタブ幅が
    Mery.ini に反映されます。

     |  kinzoku  |  返信
  14. Mery 1.0.10.2270 にてタブ変換まわりを見なおしました。

    > Takara さん
    昨日、諦めかけてましたが、Takara さんのタイミングが可愛らしすぎてやる気がでましたw
    あのあと夜更かししてなんとか実装完了しましたのでお試しください。(ちょっと不安ですが・・・。)

    > shu さん
    色々とご協力ありがとうございます。
    元ネタ探すの、私も手間取りました・・・。なんだこのフォーラム・・・。ぼそぼそ。
    こんなにたくさん書き込みがあるとは思っても無かったので検索とかぜんぜん付いてないですし。。。
    そのうち見直さないとなぁ・・・。

    > miso さん
    > 何このオールスター総出演w
    ウケたw
    しかもツイッターネタですかっw いい感じにゆるいフォーラムになってきた気がしますw

    > MOON さん
    応援ありがとうございます!
    > こでいろんな意見聞くたびにこんな使い方もあったのかと勉強させられますよ
    そうなんですよね、、、私は「もうっ!そんな使い方しないでっ!」って思うばかりですが(ぉ
    テキストエディタの奥の深さは、下手なRPGやるより難しい・・・。今、地下迷宮5階ぐらいにいる気分w

    > kinzoku さん
    ご無沙汰しております。よくマクロでできましたね・・・、実際作ってみてすごい苦労しましたよ。
    GetActivePointX(mePosView) 、、、きゃぁぁぁ。
    でも、可変ピッチフォントの場合を考慮しなければ実装可能ですね。(触りたくないですが・・・)

     |  Kuro  |  返信
  15. > Mery 1.0.10.2270 にてタブ変換まわりを見なおしました。

    > > Takara さん
    > 昨日、諦めかけてましたが、Takara さんのタイミングが可愛らしすぎてやる気がでましたw
    > あのあと夜更かししてなんとか実装完了しましたのでお試しください。(ちょっと不安ですが・・・。)

    > > shu さん
    > 色々とご協力ありがとうございます。
    > 元ネタ探すの、私も手間取りました・・・。なんだこのフォーラム・・・。ぼそぼそ。
    > こんなにたくさん書き込みがあるとは思っても無かったので検索とかぜんぜん付いてないですし。。。
    > そのうち見直さないとなぁ・・・。

    > > miso さん
    > > 何このオールスター総出演w
    > ウケたw
    > しかもツイッターネタですかっw いい感じにゆるいフォーラムになってきた気がしますw

    > > MOON さん
    > 応援ありがとうございます!
    > > こでいろんな意見聞くたびにこんな使い方もあったのかと勉強させられますよ
    > そうなんですよね、、、私は「もうっ!そんな使い方しないでっ!」って思うばかりですが(ぉ
    > テキストエディタの奥の深さは、下手なRPGやるより難しい・・・。今、地下迷宮5階ぐらいにいる気分w

    > > kinzoku さん
    > ご無沙汰しております。よくマクロでできましたね・・・、実際作ってみてすごい苦労しましたよ。
    > GetActivePointX(mePosView) 、、、きゃぁぁぁ。
    > でも、可変ピッチフォントの場合を考慮しなければ実装可能ですね。(触りたくないですが・・・)

     |  Takara  |  返信
  16. これの一つ前の投稿は
    ご、ごめんなさい。名前を入れて、間違ってEnter押したら、投稿されちゃいました。

    > Mery 1.0.10.2270 にてタブ変換まわりを見なおしました。

    > > Takara さん
    > 昨日、諦めかけてましたが、Takara さんのタイミングが可愛らしすぎてやる気がでましたw
    > あのあと夜更かししてなんとか実装完了しましたのでお試しください。(ちょっと不安ですが・・・。)

    Kuroさんを始め、多くの方々へ
    ありがとうございます。

    私...「立ち直れそうにない」とコメントした後に、本当にショックで、ずーっとこのサイトに来ませんでした。
    「私には『メモ帳』で十分」と自暴自棄(?)になって、メモ帳を使い続けてました。

    あれから、2週間が経ち、さすがにMeryが恋しくなって帰ってきました。

    「フォントが...」とKuroさんが言っていたので、機能の変更に関しては、完全に諦めていましたが、
    かわいそう(?)な私に、慰めのひとつも、あるかも なんて思って覗いて見たら、なんと!!
    冒頭のコメントが!!

    途中には、色々な方のコメントまであり、感激しました。
    (内容はほとんど理解できません、すみません)

    さっそく、「タブを空白に変換」 試してみました。
    勿論、大、大、大満足です。

    夜更かしして実装していただいたのに、知らぬこととはいえども、ゴメンナサイ。
    本当にありがとうございます。
    感謝の気持ちを込めて、ベク○ーから、ガンガン、落としちゃいます!

    やっぱり、Mery 最高!Kuroさんもここの常連さんも最高!

    ところで、メモ帳では「置換」のショートカットがCTRL+H だって知ってました?
    私、知らなかったです。
    バグってるのかと思いましたが、ワードパッドも同じでした。

     |  Takara  |  返信
  17. お久しぶりですw

    > ご、ごめんなさい。名前を入れて、間違ってEnter押したら、投稿されちゃいました。
    あはは、気にしないでください、さっきチラっとみたら久しぶりにご来場してくださったのに誤爆しててビックリしましたがw
    InternetExplorerじゃないと入力チェックかからないんです、このフォーラム(手抜き)

    > 私...「立ち直れそうにない」とコメントした後に、本当にショックで、ずーっとこのサイトに来ませんでした。
    > 「私には『メモ帳』で十分」と自暴自棄(?)になって、メモ帳を使い続けてました。

    その時のノリで現状報告のつもりだったのですが、まさかそこまでのショックだとはつゆ知らず、
    ほんとごめんなさい。

    > あれから、2週間が経ち、さすがにMeryが恋しくなって帰ってきました。

    なんだかロマンチックな展開になってるしw
    でも、こうして再びお会いできてとても嬉しいです。
    ほんと、このフォーラムに書き込んでくださる方々はみんな優しくて私もしょっちゅう励まされてます。

    > さっそく、「タブを空白に変換」 試してみました。
    > 勿論、大、大、大満足です。
    > 感謝の気持ちを込めて、ベク○ーから、ガンガン、落としちゃいます!

    よかった~・・・、動作確認があんまり取れてないのでご希望の動作になっているか不安で不安で。。。
    ベク○ーw ありがとうございます。最近ランキング落ちてきたし・・・w 宜しければAwardの投票も(ぉ
    あ、マイクロソフトのはほとんど「置換」のショートカットはCTRL + Hになってますよね。Excelとかも。
    秀丸で育った人達(私もですが)はCTRL + Rに慣れてると思いますし、CTRL + Hだと片手で押すのキッツイので
    Meryは秀丸に準拠してます。ちなみに、メモ帳でCTRL + Gを押すと指定行にジャンプできるの知ってました?w

     |  Kuro  |  返信
  18. > よかった~・・・、動作確認があんまり取れてないのでご希望の動作になっているか不安で不安で。。。
    本当にゴメンナサイ。

    > ベク○ーw ありがとうございます。最近ランキング落ちてきたし・・・w 宜しければAwardの投票も(ぉ
    任せてください!いっぱいID作っちゃいます!

    > あ、マイクロソフトのはほとんど「置換」のショートカットはCTRL + Hになってますよね。Excelとかも。
    そうだったんですかぁ?
    Word,Excel ではショートカット使ったこと無いのかな、私。
    Wordには貼り付けるだけので、「置換」したこと無いのかも知れません。
    ずっとCTRL+RがWindowsの標準と思っていました。

    > 秀丸で育った人達(私もですが)はCTRL + Rに慣れてると思いますし、CTRL + Hだと片手で押すのキッツイので
    > Meryは秀丸に準拠してます。ちなみに、メモ帳でCTRL + Gを押すと指定行にジャンプできるの知ってました?w
    使ったことないですが、「秀丸」という名前だけは知ってます。
    CTRL+Gは 知らなかったです。でも、もうメモ帳なんて使いませんよ。(^^ゞ

    これからも「初心者にも上級者にも親切なMery」の開発、頑張って続けてください。
    P.S
    私ね、お正月に頑張ってリファレンスを一生懸命読んで、僅か数行ですけど、マクロを作ったんですよ。
    記録しただけだと折り返した論理行の時に上手く動いてくれなくて。
    一つは「カーソルのある論理行をもう1行コピーして、その先頭にカーソルを移動」
    もう一つは「カーソルのある論理行の上(前)に空白行を入れてカーソルを移動」
    Kuroさん「それって xx を呼んでるだけだろ!」って言わないで。
    メモの追加書きに使ってますが、使い道がどうというより、私には「こんなことも出来た」という喜びが一杯です。
    これも、Mery に出会ったおかげです。ありがとうございます。

     |  Takara  |  返信
  19. こんばんは~。

    > 任せてください!いっぱいID作っちゃいます!

    それはダメです!w
    応援、ありがとうございます。こうして温かいメッセージを頂けると、作ってよかったって思えます。

    > 私ね、お正月に頑張ってリファレンスを一生懸命読んで、僅か数行ですけど、マクロを作ったんですよ。

    おお、、、リファレンスあんまり整備されてないのに、良く読んで頂けましたw
    私はもっぱらマクロの記録だけでがんばってます・・・。自分で書くの面倒くさくて(ぉ

    > Kuroさん「それって xx を呼んでるだけだろ!」って言わないで。

    あはは、大丈夫です、、、がしかし、マクロ使わずにできる簡単な方法を。
    (もう知ってたらゴメンなさい。)

    > 一つは「カーソルのある論理行をもう1行コピーして、その先頭にカーソルを移動」

    コピーしたい行にカーソル持ってきて、何も選択していない状態で CTRL + C → CTRL + V と
    続けて押せばできますよん。

    > メモの追加書きに使ってますが、使い道がどうというより、私には「こんなことも出来た」という喜びが一杯です。

    分かりますw マクロ作ってちゃんと動いた時って、すごい充実感ありますよね。
    面白いマクロができたら是非ともMery's Factoryに投稿してみてくださいね!

     |  Kuro  |  返信
  20. 何このオールスター総出演w

    > この場でなんですが、ツイッターフォローかえしてちょw
    ユーザー名がわからんです・・・risingdarkmoon?

     |  miso  |  返信

  21. > ようやくTakara さんの意図する動作の真相が見えました。。。
    > 単純にタブを「指定した数の空白」に置き換えるわけではなく、タブ幅にあわせて空白で埋める、ということ
    > だったんですね。確かにこの場合は置換ではできなさそうです。

    そっ、そうなんですよ!
    過去の発言から推測して、Kuroさんは多くのエディタを熟知しているお方なので
    まさか、これが伝わっていないとは思いませんでした。
     
    > Takara さんのおっしゃる動作が理にかなってると思いますので、見直したいと思います。
    > ちょいと難易度高そうなのでしばらくかかりそうですが・・・。

    やったーっ! 一度は見捨てられた私にも、お正月が来たー。
    いつまでも待ちますよー。

    余計なことかも知れませんが、上の操作をMeryでなんとかしたくて、どこかにマクロは落ちてないかな、と
    以前に調べた時に知ったことを書きます。
    私は、いらないのですが、上の反対の機能「空白をタブに変換」するときに、どこかのエディタにはオプションで
    「空白が一文字ならば変換しない」(なんかよくわからないですが、プログラムソースの時に必要だとか)と
    「コメント行は変換しない」っていうのがありました。
    私は、「タブ幅にあわせて空白で埋める」で十分ですが、製作の役に立つかもと思いました。

    いつものことながら、ピントがずれてたらごめんなさい。

     |  Takara  |  返信
  22. タブを空白に変換なんて機能あったのか・・・
    Tabを選択orコピー→置き換えダイアログ開いて置き換え、ってやってました。

     |  miso  |  返信
  23. >misoさん

    > タブを空白に変換なんて機能あったのか・・・
    > Tabを選択orコピー→置き換えダイアログ開いて置き換え、ってやってました。

    正規表現ってやつを使うと、置き換えで済むのですか?
    私は、単純な置き換えしか出来ないので
    ¥t (これはなんとか学びました)を半角スペース4つに変換します。そのあとで
    例えば ABC<タブ>XYZ はスペースを3つ削除しないといけません。
    こんな私に秘技を伝授願います。

     |  Takara  |  返信
  24. スペースの数を1つではなく4つにすればいいのでは?

    無理に正規表現使わなくてもいけるような気がしないでもないですが・・・
    なんかすみません。

     |  miso  |  返信