- ベストアンサー
秀丸で、1行目と2行目を入れ替える。
秀丸で、1行目と2行目、3行目と4行目(以下、同様に5行目と6行目・・・と続く)を入れ替える方法を教えて頂けませんか。以前、同様の質問があったと思いますが、検索をかけても出てきません。 [データ例] これはペンです。 This is a pen. これもペンです。 This is also a pen. これはペンですか。 Is this a pen? 但し、奇数行は日本語とは限りませんし、偶数行も英語とは限りません。 お願いします。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
ANo.#3 の Bo_Bo です。 ANo.#3 のマクロでは、エラーになる場合があります。 使用されるのであれば、差し替えをお願いします。 手順は ANo.#3 と同じです。 -- ▼マクロは次の行から▼ --------------- // 奇数行と偶数行を入れ替える disabledraw; gofiletop; while(code != eof) { if(lineno == linecount2) break; // この一行を追加 beginsel; movetolineno 1, lineno + 1; if(code == eof && lineno % 2 == 0) { escape; break; } cut; if(lineno == linecount2) { golineend2; insert "\n"; paste; break; } movetolineno 1, lineno + 1; paste; } gofiletop; enabledraw; endmacro; -- ▲上の行まで▲ -----------------------
その他の回答 (3)
- Bo_Bo
- ベストアンサー率65% (97/149)
下記のマクロで、奇数行と偶数行を入れ替えることが出来ますが、どうでしょうか。 【マクロ実行までの手順】 (1). 下記のマクロをコピーして新規秀丸に貼り付けます。 (2). メニューの「検索」→「置換」を選択し、 検索欄 => 全角空白1個 置換欄 => 半角空白4個 を入力して、「全置換」を実行します。 (全角空白があるとマクロがエラーとなります) (3). 拡張子を mac として任意の名前(例:reshuffle.mac)を付け、「マクロ ファイル用のフォルダ」に保存します。 ※「マクロファイル用のフォルダ」を設定してない場合は、秀丸をインス トールしたフォルダに、設定してある場合は、そのフォルダに保存してく ださい。 (4). 処理対象のファイルを開いて、メニューから「マクロ」→「マクロ実行」 を選択して、(3)で保存したマクロを指定して実行してください。 ※保存したはずのマクロが見つからない、マクロを実行したらエラーが出たと言う場合は、補足を付けてください。 ※編集後のファイルは念のため別名で保存して、データが飛んでいないか等、確認してください。 -- ▼マクロは次の行から▼ --------------- // 奇数行と偶数行を入れ替える disabledraw; gofiletop; while(code != eof) { beginsel; movetolineno 1, lineno + 1; if(code == eof && lineno % 2 == 0) { escape; break; } cut; if(lineno == linecount2) { golineend2; insert "\n"; paste; break; } movetolineno 1, lineno + 1; paste; } gofiletop; enabledraw; endmacro; -- ▲上の行まで▲ ----------------------- 【蛇足】 秀丸の話題なら秀丸のサポート・フォーラムが迅速且つ、親切丁寧に対応してくれます。 私などより数段上級のユーザーが居られますので、一度覗いて見ることをお勧めします。
- Reffy
- ベストアンサー率32% (1317/4014)
マクロ設定までするほどの量じゃなかったら、ただ文頭で左クリックして行全体を反転させてから、そのまま持っていきたいさきにカーソルを移動してぱっと放せばその位置に移動しますけど? チャットなどのログ整理で一つが一行では収まらなかったときに、私はこうやっています。
お礼
Reffyさんありがとうございました。 これもいいアイデアですね。今回は、データ量が多いので、マクロでやらないとしんどいです。一度、二度の処理ならこれ使わせてもらいます。ありがとうございました。
- asdfldfnjsvfs
- ベストアンサー率42% (75/178)
マクロを使用すれば簡単です。 ・1行目の先頭にカーソルを置き、SHIFT+F1を押す。 (ウィンドウ上の青い部分に、「記憶中!」と出る) ・1行目を選択(SHIFT+↓)。 ・切り取り(CTRL+x) ・2行目と3行目の間に貼り付け。 (1度↓を押し、CTRL+v) ・SHIFT+F1を押す。 (「記憶中!」が消える。) これでマクロの登録は終了です。 そのまま、SHIFT+F2を押しつづけると、以降もこの処理をおこなってくれますよ。
お礼
asdfldfnjsvfsさんありがとうございました。 いいアイデアですね。ただ、行頭から改行までが2行に渡る文で失敗しました。それと、データ量が多いので、一度の実行でやってくれないとしんどいです。ちょっとした処理ならこれ使わせてもらいます。ありがとうございました。
お礼
うまくいきました。(^^) 今後も使う機会がいつあるか分からないので、このマクロ、大切に保存しておきたいと思います。 Bo_Boさん、お忙しい中、本当にありがとうございました。