[blog]WorkFlowyでブログの下書きを書く(その2) – その後の発展など

WorkFlowy blog

workflowy_logo_large workflowy_slogan

島根の司法書士、坂根(@sakane0958)です。

[blog]WorkFlowyでブログの下書きを書く – 秀丸の置換で見出しタグを一括設定
以前書いた記事です。

上記の記事を書いた後、皆様からご意見をいただいたり、自分で試してみたことなどがありました。
それを紹介してみます。

秀丸マクロの最終行の処理

前回の記事では、「ファイルの末尾を検索できないので、最終行だけは手動で編集する必要がある」と書きました。
すると、shigotanoさんから下記の改善案をいただきました。

そこで、秀丸の記録モードから「Ctrl+End」「Enter」を記録させて、そのコードを元のマクロの最初に追加してみました。

gofileend; 
insertreturn;

これがバッチリはまったようで、最終行問題は解決しました。

shigotanoさん、ありがとうございました。

段落を行頭の「;」で表現せずNoteを使う方針の検討

前回の記事では、見出し部分でない本文を指定するのに、行頭に「;」を置くことにしました。
行頭の「;」の有無によって、見出しと本文を区別する、という仕組みです。
ただ、WorkFlowyにはNoteという機能があるので、本文を指定するのにNote機能を使うことを検討してみました。

結論から言うと、このNoteを使う方針は自分にはしっくりこなかったので、元々の方針のまま行くことにしました。
参考までに問題となった点を説明しておきましょう。

問題1:PlainTextでのエクスポートでNote部分が""で表現される

短い記事をNote機能を本文にする前提で書いてみて、エクスポートしてみました。
すると、NoteはPlain Textでのエクスポートでは、""で括る形で表現されるようです。

HTMLコードの中には"がしょっちゅう出てくるので、きっちり正規表現の検索条件を考えてやらないと、予期しない動作に繋がりそうです。
そういうことを考えると、面倒臭そうな雰囲気が漂ってきます。

問題2:AndroidアプリからのNoteの追加が不自由

操作がわかっていないだけ、という可能性もあるのですが、AndroidアプリにてNoteボタンをクリックした後、ATOKのキーボードが隠れてしまい、Noteの入力ができないという問題にぶち当たっています。
どこかをクリックするとATOKキーボードは表示されるのですが、Note欄が引っ込むといういたちごっこ。

Androidアプリは起動までのLoad時間が結構かかるため、Androidからの入力の頻度はそれほど高くありません。
Androidからの編集に執着する必要はないのかもしれませんが、やはりできた方が良いです。

結局、現状の行頭に「;」の方針で大して困っていないので、敢えてNote運用に変更することもないな、という結論に到りました。

置換マクロのWORD版を作ってみました。

前回の記事では秀丸マクロを作りましたが、秀丸はユーザ層が限定的です。
裾野の広いWORDのマクロを作ってみました。

マクロの自動記録機能をベースに作っており、見る人が見ると素人丸出しだと感じると思いますが、ご勘弁ください。

Sub WorkFlowyのPlainTextフォーマット一括置換()
'
' Macro1 Macro
'
'
    Selection.Find.ClearFormatting
    Selection.Find.Replacement.ClearFormatting
    With Selection.Find
        .Text = "^13[ -]@;(*)^13"
        .Replacement.Text = "^p<p>\1</p>^p"
        .Forward = True
        .Wrap = wdFindContinue
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchByte = False
        .MatchAllWordForms = False
        .MatchSoundsLike = False
        .MatchFuzzy = False
        .MatchWildcards = True
    End With
    Selection.Find.Execute Replace:=wdReplaceAll
    Selection.Find.ClearFormatting
    Selection.Find.Replacement.ClearFormatting
    With Selection.Find
        .Text = "^13-(*)^13"
        .Replacement.Text = "^p<h2>\1</h2>^p"
        .Forward = True
        .Wrap = wdFindContinue
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchByte = False
        .MatchAllWordForms = False
        .MatchSoundsLike = False
        .MatchFuzzy = False
        .MatchWildcards = True
    End With
    Selection.Find.Execute Replace:=wdReplaceAll
    ActiveWindow.ActivePane.VerticalPercentScrolled = 0
    Selection.Find.ClearFormatting
    Selection.Find.Replacement.ClearFormatting
    With Selection.Find
        .Text = "^13  -(*)^13"
        .Replacement.Text = "^p<h3>\1</h3>^p"
        .Forward = True
        .Wrap = wdFindContinue
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchByte = False
        .MatchAllWordForms = False
        .MatchSoundsLike = False
        .MatchFuzzy = False
        .MatchWildcards = True
    End With
    Selection.Find.Execute Replace:=wdReplaceAll
    With Selection.Find
        .Text = "^13    -(*)^13"
        .Replacement.Text = "^p<h4>\1</h4>^p"
        .Forward = True
        .Wrap = wdFindContinue
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchByte = False
        .MatchAllWordForms = False
        .MatchSoundsLike = False
        .MatchFuzzy = False
        .MatchWildcards = True
    End With
    Selection.Find.Execute Replace:=wdReplaceAll
    With Selection.Find
        .Text = "^13      -(*)^13"
        .Replacement.Text = "^p<h5>\1</h5>^p"
        .Forward = True
        .Wrap = wdFindContinue
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchByte = False
        .MatchAllWordForms = False
        .MatchSoundsLike = False
        .MatchFuzzy = False
        .MatchWildcards = True
    End With
    Selection.Find.Execute Replace:=wdReplaceAll
End Sub

「使いたいけど、調べてみてもよくわからない」という方がいらっしゃいましたら、つまづきポイントをご連絡ください。
参考になる記事を紹介するくらいのフォローはできると思います。

置換の流れをスクリーンショットで紹介

言葉で説明するより、目で見た方がわかりやすい面もあろうかと思い、置換前後のスクリーンショットを撮ってみました。

WorkFlowyの下書き

ScreenClip

Wordに貼り付け

ScreenClip

マクロ実行後

ScreenClip

guruguさんからPandocというものを教えていただきました。

それから、前回記事の反応として、guruguさんからPandocというものを教えていただきました。

guruguさんもおっしゃっているとおり、私には敷居が高かったですが、このブログの読者の中には活用できる方もいらっしゃると思いますので、紹介しておきます。

編集後記

この記事もWorkFlowyで下書きを書きました。
階層構造が見易く、見出しをいちいちショートカット等で設定しなくてもザクザク書いていけるのは快適です。

もしこの記事を読んで「WorkFlowyでブログの下書き書いてみようかな」と思ったのであれば、下記WorkFlowyロゴのリンクより登録していただけると、大変喜びます。
私とあなたの編集可能行数が250行ずつ増えます。よろしくお願いします。

workflowy_logo_large

関連記事

[blog]WorkFlowyでブログの下書きを書く – 秀丸の置換で見出しタグを一括設定

今回の記事の前段階となる記事です。
この過去記事では、Wordでなく秀丸でマクロを組みました。
マクロの改善案をいただけたり、得るものの多い記事でした。

WorkFowyのProアカウントを利用してみました。

行数制限によりProアカウントを検討したことがある方、参考にしてみてください。

個人的には毎月4.99ドルは高いかな、と思います。
ただ、今回は単発だったので、お布施というか、応援というか、お礼というか、そういう意味では良い機会だったかな、と思っています。
良いサービスには、ぜひとも長く存続していただきたい。

[タスク管理]JC例会の3分間スピーチで「江津JCにタスク管理を浸透させる」という夢を語りました。

WorkFlowyを使って3分間スピーチの原稿を練りました。
練り練りしているうちに行数制限に不安を感じ始め、上のProアカウントの記事に到ります。

コメント

  1. […] [blog]WorkFlowyでブログの下書きを書く(その2) – その後の発展など […]

  2. […] [blog]WorkFlowyでブログの下書きを書く(その2) – その後の発展など […]

  3. […] [blog]WorkFlowyでブログの下書きを書く(その2) – その後の発展など | 流れるような一日を) […]

タイトルとURLをコピーしました