気に入った本はオーディオブックと紙の両方で

通勤や家事、コーヒー豆の焙煎、庭作業なんかをしているときには、常にオーディオブックを聞いています。
頭を使わないでいい作業中にぴったりなのがオーディオブック。
で、紙やKindleですでに持っているをオーディオブックでも買う、ってことはこれまでよくありました。もうすでに読んでいて、内容はざっくり知っている。けど、本だと頻繁に読み返すことはなかなかできない。ので、オーディオブックを購入し、耳で聞いて読み返しています。
文字を目で追って読んでいたときには気づかなかった、あまり気に留めてなかった内容が、オーディオブックで聞いているときにはスルッと頭に入ってきたり、違う方法で本を読むことかできて、すごくいい。

最近は、オーディオブックで買った本を、紙の本で買い直すこともしています。
耳で聞いているのは、たいていは何かしらの作業をしながら。となると、メモをとれないことが多いわけです。
普段、紙やKindleで本を読んでいるときは、抜き書きをしながら読書メモをとりつつ、読み進めています。オーディオブックでは、それができない。
なので、コストはかさむものの、紙の本を買い直して、改めて読み返す、ということをしています。
一度耳で聞いているので、読むスピードをかなり速くしても、内容を把握していくことができます。メモすることに集中して読み返すことができ、一冊からよりたくさんのことを学ぶことができて、とてもいい感じです。

自分の好きな本は、紙でもオーディオブックでも持っておく。何度も違う味わい方で半に接することができるのでおすすめです。

では、お読みいただきありがとうございました。

「ブログを限られた時間内に更新するための、基本的戦略」がうまくいかなったので、次なる戦略を考える

ブログを限られた時間内に更新するための、基本的戦略」を考えたけれども、全然ここで書いた通りにはできてない。

  • 1日の早い段階で、翌日のお題を決める
  • 内容を思いついた瞬間に箇条書きで書き足していく

ってのがその戦略で、確かにこれができれば、次の日の朝には書き始めるところからスタートできて、更新に必要な時間はかなり短縮される。で、限られた時間内に更新できる、というものやけど、全然これ通りにはできてない。
そもそも、

  • 1日の早い段階で、翌日のお題を決める

からして、多少無理がある。
ブログに書くネタは、そんなポンポン出てこない。ぼくの場合。
毎日更新する!と決意した日から数日は、書こうかなーと思っている内容がいくつかあって、困ってはいなかった。けど、今はその書こうと思ってたことには書き尽くしてしまってて、日々、何について書こうか?からスタートする。
で、時間は待ってはくれないので、ほっといたら翌日のお題が決まらないままその日1日を終えている。
当然、箇条書きで書き足すこともできていないので、書くことまっさらなまま次の日の朝を迎え、書くのに予定よりも時間がかかり、、、ってのを繰り返す日々。

さて、どうするか。

メモをとることは、かなり有効。そこから、書く内容が出てくることが多いので。
Scrapboxを見返すことも有効。これまでの蓄積があり、ブログのネタがけっこう転がっている。
本を読んだり聴いたりすることも有効。思考が刺激されて、あれこれ考えることができる。それを、メモにつなげることができればいい。

総じて、いかにメモをしていくか?ってのが一つのキーになりそう。

  • メモをとる。メモが発生するように仕向ける。
  • 翌日のお題が決めれたら決める。
  • そのお題に対して、内容を思いついた瞬間に箇条書きで書き足していく。
  • お題を思いついてなければ、とりあえずメモを増やしておく。
  • とにかくメモを書く。

という方針を、しばらく試していきたい。

では、お読みいただきありがとうございました。

ブログを限られた時間内に更新するための、基本的戦略

ブログ、気づけば毎日更新を1ヶ月続けることができた。
これまでは基本的に夜に更新していたけど、朝にシフトしようとしているところ。
ただ、これがなかなか難しい。

夜であれば、書くのに時間がかかっても、寝る時間を後ろにずらせば更新できる。
朝に更新する場合、後ろにずらす、ということができない。ずらすと、いつも朝にやっていることたちがすべて後ろにずれていき、仕事に出発する時間が遅くなってしまう。
30分使えるのであれば、その30分間で更新しきらないといけない。

朝型の生活リズムに変えると、ブログに確保できる時間は30分が限度。その時間内に、更新まで持っていかなければ。
で、昨日はあえなく撃沈。朝の30分間では更新までもっていけず、晩に続きを書くことに。
気づいたのは、起きてから「何について書こうか?」と考えているようでは、更新までもっていくことなんてまず確実にできひんな、ということ。
早く起きて、30分をブログに使えるようにしたのであれば、その30分のスタートと同時に文章を書き始めないと。
30分がスタートしてから書くお題をどれにしようか、なんて考えていては、時間はオーバーしちゃう。それまでにお題は考えておき、「あとは書いていくのみ」って状態までもっていっておく必要がある。
すぐさま、本文を書き始められる状態に。

そこで、今日は試しに、

  • 1日の早い段階で、翌日のお題を決める
  • 内容を思いついた瞬間に箇条書きで書き足していく

という方針で、明日に書く内容を、日中ちまちまとつくっていっとこうと思う。
これで明日も朝の時間に更新できるのか!?

では、お読みいただきありがとうございました。

一手間をかけて、ブログとScrapboxをつなげる

このブログ、「iPhoneと本と数学となんやかんやと – あなたになんやかんやな、なんやかんやを」の記事内には、たいていはいくつかのリンクが貼られています。
単語がリンクになっているもののほぼ全ては、Scrapboxと紐づいているからです(試しにScrapboxのリンクを踏んでみてください)。ぼくのScrapboxでの公開ページ、「book scrapbook」に。

book scrapbook」には、

  • 読んだ本の短い感想
  • 着想メモを読める形にしたもの

たちが書き残されており、それらとブログ中の言葉とを紐づけるという一手間を入れてから、更新ボタンをポチッと押しているからです。
一手間と言っても、ポチポチとiPhoneまたはiPadの画面をタップしていくことで簡単に紐づいていくので、そこまでの手間ではありません。

流れとしては、

  • Bearにてブログの文章を書く
  • Scrapboxの自分の非公開ページに転記する
    • ここで、きになる言葉たちをブラケット「[]」で囲んで、リンク化
  • 内容をまるまる「book scrapbook」にコピーする
  • マークダウンに変換して、プレビュー
    • Textwellを利用
  • HTML記法に変換して、更新
    • ショートカットを利用

工程として書き出すと面倒くさそうに感じますが、マークダウンやHTMLへの変換や、他にコピーする作業は、iOSの「ショートカット」アプリやTextwellのアクションの機能を用いているので、まったく面倒ではありません。文章が完成していれば、20秒もあれば更新までもっていけます。

この手間をかけることで、ブログとメモの集まりであるScrapboxをつなげています。
Scrapbox何のメモを見返す中でできたエントリがあったり、関連書籍が見つかったりするので、ブログからScrapboxに飛んでみるのは、ちょっとした探索になるんじゃないかなぁと思ってのことです。
ブログも「book scrapbook」も、どっちもどんどん充実していけば、よりおもしろくなってくるとおもうので、ぼちぼちと書き進めていこうと思います。

では、お読みいただきありがとうございました。

1つの記事を、じっくり書くか、その都度完成させていくか

毎日更新、となると、時間をかけて記事を書かない分、時間をかけてこそ書ける類のエントリがなかなか書けなくなっちゃう。そのせいで、うーむとならないわけじゃない。
でもやっぱり今は、どんどん更新していきたい。

過去記事を見返すと、十分に時間をかけて、なんども推敲をして、伝えたいことが読んでくれている人たちに伝わりそうか吟味した上で更新しているものが、中にはある。
例えば、数学についての連載。

例えば、読んだ本について書いた記事。

例えば、タスク管理についての連載。

毎日更新を目指すと、おのずと何日もかけて書く記事がなくなってしまい、じっくり書いて読んで書き直して、っていうのをできなくなってしまう。
でも、やっぱり、自分の記事でじっくり書いたものを読み返すと、あぁ、こういうのんをまた書けたらなぁ、と感じてしまう。

一方で、毎日更新することをやめて、日々少しずつブログ書く時間をとって書き進めてってやっていると、いつまでたっても更新できない問題が出てきてしまう。
毎日書くのと、毎日更新するのとでは、まったくちがってくる。
毎日書くだけなら、少しでも書き進めることができればそれでよし、となる。完成まで持っていく必要がないために、日々ちょろっとずつ書くことになってしまう。で、ちょろっとでも書き進めれたら、今日も「なんとか書けたし、よしよし」となり、どうしても自分に甘くなってしまう。ぼくは。
一方で、毎日更新するとなると、完成させなければいけない。ちょろっと書いて進んだしまぁいいか、とはできない。だって、完成してないんだもの。更新できてないんだもの。
なので、同じ時間を費やしたとしても、その中身はけっこう違ってくると思う。

で、今のぼくは、以前書いたように、毎日書きたい。毎日更新していきたい。毎日完成させてしまいたい。
それが、今のぼくには必要なんじゃないかな、と思うから。

おわりに

十分に時間をかけて書く。で、なかなか完成しない。
時間はかけきれてないけど、とにかく日々完成させていく。
どちらがいいとは言えない。おそらくは、バランスをとっていくのが一番いいと思う。
けれども、今までなっかなか更新できなかった自分には、とにかく日々完成させていく気持ちでどんどん書くことが、自分の中の何かを変えていくことに繋がるんではないか、と思っているところ。

では、お読みいただきありがとうございました。

一週間の活動報告を始めた理由

毎日更新をとりあえずは10月19日〜11月3日の今日まで続けることができている。
書きたいネタはまだまだある、ってなわけではなく、毎日ふと思ったこと、メモったことを元に文章を書き、なんとか更新している感じになってきている。今後の更新には、メモが要となってきそう。

で、試しに昨日、一週間の活動報告的なエントリを書いてみた。今は、数検の勉強と、ブログの更新について、一週間振り返って書いている。もちろんこういうエントリには書く目的がある。

活動を振り返り、自分の歩みの確認のために

これはどちらかというと、自分のためになる部分。
毎週、一週間を振り返る時間を作っている。けれども、全体をざっくり振り返る方式なので、やっていることを細かく見ていってはいない。
そこで、もっとも今力が入れているものについては、細かめに振り返りたいな、と思い、どうせならそれをブログにも書いてしまおう、だってブログで「頑張ります」って宣言したんだもの、という感じで書こうと決意した。

過去にブログで書いたことの、その後の歩みの報告のために

数検合格目指して勉強しますって書いた
今までブログを書いてきて、「こういうことします!」「こういうの、いいと思うのでやっていきます!」とブログで書くことはあっても、その後どうしていったかを書くことがあまりなかった。
何かを使い始めました!いい感じです!…で、使い続けてみてどうなのか、ってもは書いていなかった。
頑張っていきたいと思います!…で、続けれたのか、その結果どうなったのかまでは書いてなかった。
でも、実際は、やり始めだけが肝心なのではなく、やってる間のことも、やめたならなんでやめたのかも、同じくらい大事。じゃあ基本的に全部書いちゃおうよってことで、一週間ごとの活動を書いてみようと思い立った。

一週間のブログエントリのまとめのために

一週間前に何について書いたのか、もう思い出せない。
3日前の内容でさえ思い出せるかあやしい。
一週間ごとに自分が書いたことを確認して、それをまとめて読みに行ける形で置いとくのはいいかな、と思って。

おわりに

あと、もう一つ。
ブログに書くからには、数検がんばっていかないと格好つかないよってのもあったり。でもこれはなるべく考えず、淡々と毎日学んでいくことこそが大事なので、楽しみながらコツコツ淡々と進めていきたい。

では、お読みいただきありがとうございました。

追記

ぼくの手違いにより、 数学もブログも楽しめてるので、上々のスタート(数検1級合格まで(1)10/26-11/01)をこの記事よりもあとにupすることになってしまいました。なので、一週間の活動報告をしてないのに一週間の活動報告を始めた理由を書いてしまう、ということになってしまいました。すいません。。。

考えるときの「広げる」と「拡げる」、むしろ「拡がっていく」。

頭の中のものを紙面上に「広げる」。
「かばんの中身を机の上に広げる」とか、そういう意味。
とにかく書き出す。思いついたことを書く。書いたものの配置を変える。矢印でつなぐ。
書く、書く、書いてみる。
白紙からもう一度書きなおしてみる。頭からとり出して、紙面上に「広げる」。

アイデアを「拡げる」。
「拡張する」ってニュアンス。
調べて知識を得たり、本を読んで学んだり、人から意見を聞いたり。外部からの刺激によって拡げる。
連想したり、視点を変えたり、俯瞰したり、拡大したり、組み合わせたり、切り離したりして、拡げる。自分の中の化学反応を促す。
反応が起こって拡張していくことが多いので、「拡げる」という言い方よりも「拡がっていく」といったほうがしっくりくるかも。
拡げるというよりも、拡がっていく。拡がっていってほしいがために、マインドマップを描いたりする。マトリクスを書いてみたり、マンダラを埋めていったり。

広げて、発見して、拡がって、広げて、気づいて、拡がって、広げて、整理されて、まとまりがみえて、気づいて、拡がって、広げて、まとめてみて、まとまってきて、まとめて、落ち着く。

そんな感じのことが、起こっている気がする。
考えているときの頭のなかって、どんなもんでしょうか。

では、お読みいただきありがとうございました。

「タグでシンタックスハイライト」を実装して、執筆専用ブラウザを文章エディタに

WorkFlowyでシンタックスハイライトを実現させるために、いろいろと調べました。
もっとぼくにプログラミングの知識があれば、ほんまもんのシンタックスハイライトを実装できたのかもしれませんが、そこまではわからずで。
最終的に、「タグ」によってハイライトする方法で、文章の見出しやリストの文字色を変えることにしました。
例えば、見出しのh2にしたいところには、「#h2」というタグをつける。すると、そのトピックの文字色が変化する、というような感じです。
マークダウンであれば「##」をつけてh2の見出しにするところを、「#h2」というタグをつけることで見出しにするわけです。
特定のタグに対して、そのトピックのスタイルを自由に定めることができるって機能なので、ただ単に文字の色を変えるだけでもいいですし、スタイルをがらっと変えてしまったりもできます。

HandyFlowyとFireFoxでの実装

「特定のタグをつけたトピックの文字を装飾する」機能は、こちらの記事を参考にさせてもらいまくりました。
#HandyFlowy タグでトピックのスタイルを変える – #WorkFlowy 関連のメモ ( #sorashima )

HandyFlowyバージョン

まず、HandyFlowy用のスクリプトはこんな感じ。

// ==UserScript==
// @name                     WorkflowyStylableTags
// @description        Gives each tag it's own css style, so you can style them with Stylish. I use Blank Canvas to manage my userscripts in Chrome.
// @author                 Nigel Thorne and LukeMT
// @include                http*://*workflowy.com/*
// @version                1.1
// ==/UserScript==



/*タグ装飾を可能にする*/
String.prototype.endsWith = function(suffix) {
suffix.length) !== -1;
};

var customClasses = function(index, old){
        var classes = old.split(" ");
        var custom = [];
        for( i = 0; i < classes.length; i++){
                if(classes[i].endsWith("-proj")){ custom.push(classes[i]);};
        };
        return custom.join(" ");
}

var StylableTagsCounter = 1;
setInterval(function(){
        StylableTagsCounter ++;
        if( StylableTagsCounter >= 3){
                $('.project').removeClass(customClasses);
                $('.pageContainer').removeClass(customClasses);
                StylableTagsCounter = 0;
        }
        $('span > .contentTagText').map( function(){
                var x = $(this).text();
                $(this).parent('.contentTag').parent().parent().parent().addClass(x+"-proj");}
        );
},1000);


/*装飾可能にするタグを指定し、どんな装飾をほどこすのかを定める。着脱式になってます。*/
\";position: absolute;left: 0px;width: 40px;color:#31B404;height: 0;line-height: 1.0;padding-top:1.5px;font-size:16px;}.contentTag[title=\"Filter #l\"]{font-size:10px;font-weight:100;background-color:white;color:white;}.contentTag[title=\"Filter @l\"]{font-size:10px;font-weight:100;background-color:white;color:white;}.project.o-proj>.name>.content {color: #AEB404;}.project.o-proj>.name>.content :before{content: \"1. \";position: absolute;left: 0px;width: 40px;color:#AEB404;height: 0;line-height: 1.0;padding-top:3px;font-size:16px;}.contentTag[title=\"Filter #o\"]{font-size:10px;font-weight:100;background-color:white;color:white;}.contentTag[title=\"Filter @o\"]{font-size:10px;font-weight:100;background-color:white;color:white;}.project.b-proj>.name>.content {color: #A4A4A4;}.project.b-proj>.name>.content :before{content: \"> \";position: absolute;left: 0px;width: 40px;color:#A4A4A4;height: 0;line-height: 1.0;padding-top:1.5px;font-size:16px;}.contentTag[title=\"Filter #b\"]{font-size:10px;font-weight:100;background-color:white;color:white;}.contentTag[title=\"Filter @b\"]{font-size:10px;font-weight:100;background-color:white;color:white;}";document.body.appendChild(e);}"

このスクリプトは、大きく分けて二段階になっています。
前半部分が、「タグ装飾を可能にする」ためのもの。後半部分が、「装飾可能にするタグを指定し、どんな装飾をほどこすのかを定める」ためのもの。
後半部分をいじってもらえれば、自分の好きなスタイルを作ることが可能です。
例えば、「#h2」タグをつけたトピックの装飾を決めているのが、コード内の以下の部分。
.project.h2-proj>.name>.content {color: blue;font-weight: bold;font-size: 20px;padding-left:0px;}
これは、
.project.タグ名-proj>.name>.content {どんな装飾をほどこすか}
という形式になっています。
つまり、「「#h2」タグがついているトピックの文字の色を青にし(color: blue;)、文字を太くし(font-weight: bold;)、文字の大きさを20pxにし(font-size: 20px;)、左の余白を0にする(padding-left:0px;)」という指示になります。
ってな感じで、「見出し」「リスト」「番号付きリスト」「引用」のためのタグを設定しています。
以下のような指示のコードを書いています。

  • 各種見出し
    • 「#h2」「#h3」「#h4」をつければ青色に装飾&文頭に「##」をつける&タグの色を白にして見えないように
  • リスト
    • 「#l」をつければ緑色に装飾&文頭に「- 」をつける&タグの色を白にして見えないように
  • 番号付き見出し
    • 「#o」をつければ緑色に装飾&文頭に「1. 」をつける&タグの色を白にして見えないように
  • 引用
    • 「#b」をつければ灰色に装飾&文頭に「> 」をつける&タグの色を白にして見えないように

その結果、こんな見かけになります。

推敲するときはブログの表示に似せたスタイルを適用します。上記拡張スクリプトとは別途、作成しました。スタイルを切り替えて適用するだけで、見かけはこんな風に変わります。

スタイル切り替えるだけでいける、ってところがうれしい。

FireFoxバージョン

PCでは、少し手間がかかります。
FireFoxのアドオンとして、「Stylish」に加えて「Tampermonkey • Firefox」というのをインストールする必要があるからです。
どちらも、拡張機能から入手可能です。
TemperMonkeyが「タグ装飾を可能に」してくれて、Stylishによって「装飾可能にするタグを指定し、どんな装飾をほどこすのかを定める」わけなのです。

TemperMonkeyをインストールしてもらって、「新規スクリプトを追加」を選び、以下のコードをコピペしていただければオッケーです。ただ、あくまでも自己責任でお願いします。

// ==UserScript==
// @name                     WorkflowyStylableTags2
// @description        Gives each tag it's own css style, so you can style them with Stylish. I use Blank Canvas to manage my userscripts in Chrome.
// @author                 Nigel Thorne and LukeMT
// @include                http*://*workflowy.com/*
// @version                1.1
// ==/UserScript==



String.prototype.endsWith = function(suffix) {
suffix.length) !== -1;
};

var customClasses = function(index, old){
        var classes = old.split(" ");
        var custom = [];
        for( i = 0; i < classes.length; i++){
                if(classes[i].endsWith("-proj")){ custom.push(classes[i]);}
        }
        return custom.join(" ");
};

var StylableTagsCounter = 1;
setInterval(function(){
        StylableTagsCounter ++;
        if( StylableTagsCounter >= 3){
                $('.project').removeClass(customClasses);
                $('.pageContainer').removeClass(customClasses);
                StylableTagsCounter = 0;
        }
        $('span > .contentTagText').map( function(){
                var x = $(this).text();
                $(this).parent('.contentTag').parent().parent().parent().addClass(x+"-proj");}
        );
},1000);

で、Stylishにて、タグを指定してそのトピックのスタイルを書き換えます。書き換えのコードは、HandyFlowyのときに説明したようにすると、自分の好きなように装飾することができます。
少し長くなりますが、全容を載せます。

/*h1の見出しのスタイルを調整*/
.project.h1-proj>.name>.content {
        color: black;
        font-weight: bold;
        font-size: 23px;
        /*padding-left:20px;*/
}

/*h1タグのスタイル*/
.contentTag[title="Filter #h1"]{
        font-size:10px;
        font-weight:100;
        background-color:#BDBDBD;
        color:white;
}
.contentTag[title="Filter @h1"]{
        font-size:10px;
        font-weight:100;
        background-color:#BDBDBD;
        color:white;
}


/*h2の見出しのスタイルを調整*/
.project.h2-proj>.name>.content {
        color: blue;
        //font-weight: bold;
        //font-size: 20px;
        padding-left:0px;
}
.project.h2-proj>.name>.content :before{
        content: "##";
        position: absolute;
        left: 0px;
        width: 40px;
        height: 0;
        font-size: 16px;
        //font-weight:bold;
        line-height: 1.0;
        color: blue;
        padding-top:2px;

}

/*h2タグのスタイル*/
.contentTag[title="Filter #h2"]{
        font-size:10px;
        font-weight:100;
        //background-color:#BDBDBD;
        background-color:white;
        color:white;
}
.contentTag[title="Filter @h2"]{
        font-size:10px;
        font-weight:100;
        //background-color:#BDBDBD;
        background-color:white;
        color:white;
}

/*h3の見出しのスタイルを調整*/
.project.h3-proj>.name>.content {
        color: royalblue;
        //font-weight: bold;
        font-size: 16px;
        //padding-left:10px;
}
.project.h3-proj>.name>.content :before{
        content: "###";
        position: absolute;
        left: 0px;
        width: 40px;
        height: 0;
        font-size: 16px;
        line-height: 1.0;
        color: royalblue;
        padding-top:2px;
        //font-weight:bold;
}
/*h3のタグのスタイルを調整*/
.contentTag[title="Filter #h3"]{
        font-size:16px;
        font-weight:100;
        //background-color:#BDBDBD;
        background-color:white;
        color:white;
}
.contentTag[title="Filter @h3"]{
        font-size:10px;
        font-weight:100;
        //background-color:#BDBDBD;
        background-color:white;
        color:white;
}
/*h4の見出しのスタイルを調整*/
.project.h4-proj>.name>.content {
        //font-weight: bold;
        color: cornflowerblue;
        //padding-left:38px;
}
.project.h4-proj>.name>.content :before{
        content: "####";
        position: absolute;
        left: 0px;
        width: 40px;
        color:cornflowerblue;
        height: 0;
        line-height: 1.0;
        padding-top:2px;
        font-size:16px;
        //font-weight:bold;
        padding-top:2px;
}
/*h4のタグのスタイルを調整*/
.contentTag[title="Filter #h4"]{
        font-size:20px;
        font-weight:100;
        //background-color:#BDBDBD;
        background-color:white;
        color:white;
}
.contentTag[title="Filter @h4"]{
        font-size:10px;
        font-weight:100;
        //background-color:#BDBDBD;
        background-color:white;
        color:white;
}

/*リストの見出しのスタイルを調整*/
.project.l-proj>.name>.content {
        color: #31B404;
        //padding-left:13px;
}
.project.l-proj>.name>.content :before{
";
        position: absolute;
        left: 0px;
        width: 40px;
        color:#31B404;
        height: 0;
        line-height: 1.0;
        padding-top:1.5px;
        font-size:16px;
}
.contentTag[title="Filter #l"]{
        font-size:10px;
        font-weight:100;
        //background-color:#BDBDBD;
        background-color:white;
        color:white;
}
.contentTag[title="Filter @l"]{
        font-size:10px;
        font-weight:100;
        //background-color:#BDBDBD;
        background-color:white;
        color:white;
}

/*リスト(番号)のスタイルを調整*/
.project.o-proj>.name>.content {
        color: #AEB404;
        //padding-left:13px;
}
.project.o-proj>.name>.content :before{
        content: "1. ";
        position: absolute;
        left: 0px;
        width: 40px;
        color:#AEB404;
        height: 0;
        line-height: 1.0;
        padding-top:3px;
        font-size:16px;
}
.contentTag[title="Filter #o"]{
        font-size:10px;
        font-weight:100;
        //background-color:#BDBDBD;
        background-color:white;
        color:white;
}
.contentTag[title="Filter @o"]{
        font-size:10px;
        font-weight:100;
        //background-color:#BDBDBD;
        background-color:white;
        color:white;
}

/*引用のスタイルを調整*/
.project.b-proj>.name>.content {
        color: #A4A4A4;
        //padding-left:13px;
}
.project.b-proj>.name>.content :before{
        content: "> ";
        position: absolute;
        left: 0px;
        width: 40px;
        color:#A4A4A4;
        height: 0;
        line-height: 1.0;
        padding-top:1.5px;
        font-size:16px;
}
.contentTag[title="Filter #b"]{
        font-size:10px;
        font-weight:100;
        //background-color:#BDBDBD;
        background-color:white;
        color:white;
}
.contentTag[title="Filter @b"]{
        font-size:10px;
        font-weight:100;
        //background-color:#BDBDBD;
        background-color:white;
        color:white;
}
.bullet{background-image:none;}

.bullet{background-image:none;}
    .project.open>.name>.bullet{border:1px silver solid;border-radius:3px;}
    .bullet,#bulletBucket .bulletBucketBullet{background:silver;border-radius:3px;}

これで、書くとき用のシンプルなシンタックスハイライトが実装されます。

タグのルールは上記HandyFlowyと一緒です。
で、自分用には推敲用のブログの見かけと同一になる装飾のスタイルも作成しちゃいました。

FireFoxでも、両方を切り替えながら書くことができ、とても、とてもいい感じです。
重ね重ね言いますが、どうか自己責任でお願いします。

このルールで色を変えることができるのは、「タグをつけたトピックを装飾する」という性質上、「見出し」と「リスト」と「番号付きリスト」と「引用」のみ。文章中の一部を「太字」や「イタリック」に装飾し、そこだけ色を変える、なんてことはできません。
また、タグを書く位置は、文頭に。じゃないと表示がうまくいかないようになってます。
文中ならどこでもいいっちゃいいのですが、あとあとのエクスポートのときを考えているのと、マークダウンは基本文頭に記号を書くこと。また、WorkFlowyでは、カーソルを移動させてる時にトピックをまたぐと、カーソルはかならず文頭に行く、ってことから、文頭に書くというルールにしました。

おわりに

公開しているのはシンプルなシンタックスハイライトのほうだけですが、自分用にはPCとHandyFlowyの両方に、執筆用と推敲用の二つのスタイルを作りました。これで、PCでもiPhoneでも書けるし、推敲できるようになったわけです。
一応どっちも用意してるだけで、基本的な流れは、PCにて「執筆用」で書き始め、書き進め、マークダウンタグで見出しとか定め、仕上げに近いところまでもっていきます。
そしてPCかiPhoneのどっちかの「推敲用」で、ブログと同じ見かけに表示させて、読み返し、細かい修正を加える、という感じ。
ブログにアップするためには、WorkFlowyでつけた「#h2」とかのタグを、「##」やら「<h2>」やらに書き換えなければいけないのですが、そのへんをスムーズにいくようにするのが、今後の課題です。

おそらく、技術的な部分では説明不足なエントリとなってしまったかもしれませんが、自分自身コードを書く技術に乏しいので、勘弁してやってください。

では、お読みいただきありがとうございました。

「執筆専用ブラウザ」をパワーアップ〜タグでシンタックスハイライト〜

以前、「執筆専用ブラウザ、という考え方」ということで、FireFoxをWorkFlowyで文章を書くためだけに使う、というエントリを書きました。
そこでは、書き出して、うんじゃかんじゃするまではWorkFlowy、つまりアウトライナーでこなし、仕上げはほかのエディタを使う、みたいに、書く段階を分けている、ってことを紹介しました。

・はじめのだぁーっと書き出すのはまっさらなエディタにて。
・そのあとは、アウトライナーへ投げて、うんじゃかんじゃする。
・最終的に記事に仕上げる際には、マークダウンをプレビューしてくれるエディタへ。
執筆専用ブラウザ、という考え方 – iPhoneと本と数学となんやかんやと

3つの段階のうち、はじめ二つをWorkFlowyに担ってもらい、最終の段階は別のエディタで書いていきます。
なぜ別のエディタを使うのか?
マークダウン記法で書いていく際に、「シンタックスハイライト」なる機能があったほうが、文章の見出しや引用、リストとなる部分が色で表現され、視覚的に見やすく、書きやすいから。
シンタックスハイライトとは、こんなんです。

マークダウン記法を用いて書いた見出しやらリストやらを色分けしてくれる機能です。
また、マークダウン記法で書いた文章を、最終的にはHTMLに変換しなくちゃいけなくて、その作業も簡単であるから。
加えて、いくつかのデバイス間でテキストを共有し、書く環境も統一したい、という願いもあったから。

3つのデバイスでテキストのやり取りしたい

メインのPCは、家のiMacです。持ち運び用として、eeeBook。スマホはiPhoneを使ってます。

ぼくの要望は、以下のようなもの。

  • 3つのデバイス間で、テキストのやりとりをスムーズに行いたい。
    • どのデバイスでも、何かしら「書く」ことをするので。
  • iMacに対し、eeebookはWindowsPCです。その両者で、異なるOS間で、書く環境を統一したい。つまり、エディタを同じやつ使いたい。
    • 環境が違えば、そのぶんいろんなことを覚えないといけなくなっちゃうのは嫌ですもんね。
  • エディタは、マークダウン記法を使うので、見出しや箇条書きなどをシンタックスハイライトしてほしい。
    • 色分けされてるほうが、最後の仕上げやりやすい。

これらを満たすようなツール、サービスをしばらくの間さがし歩いてみました。
MacとWinという違う環境下でも、同じようテキストを扱うために、両方で使えるエディタをいくつか試し、「SublimeText」を使っていました。
そして、テキストは「Simplenote」というサービスを利用して、3つのデバイス間でやりとりをしていました。

もちろん、ある程度の不便さを抱えることになります。
普段ぼくはEvernoteとWorkFlowyを使っていて、そこにテキストをやりとりするために、新たにSimplenoteを使うようになりました。
EvernoteかWorkFlowyで完結できれば、わざわざSimplenoteを使わず、これまでどおり2つだけでやりくりできるのに。
また、WorkFlowyからエディタへと書きかけの文章をコピペし、書き進め、仕上げなくちゃいけないわけですが、コピペにちょっと手間がかかります。
改行とかがうまく反映されず、わざわざもう一度改行しなおさなくちゃいけないんです。
エディタからWorkFlowyへとテキストを移すときにも同じで、少々手間がかかります。

WorkFlowyの文章を出し入れするのは、めんどうくさいんです。
であるがゆえに、別のエディタでSimplenoteを利用して文章を管理していたわけです。
環境を統一したい、という願望から、MacでもWinでも使えるSublimeTextを使っていた。
けれどもね、ここではたと考えます。
WorkFlowyは、どのデバイスからも扱えるじゃん、と。Macでも、Winでも、iPhoneでも。その気になれば、どこででも同じ環境で「書く」作業ができる。
そうすればWorkFlowyから文章を出し入れすることもなくなる。
明らかに、WorkFlowy上ですべてを完結させるのが一番いい。

残す課題は、一つ。

もしWorkFlowyにシンタックスハイライトがついたら、、、

そうですそうです、シンタックスハイライトの機能です。
それがあればすべてをWorkFlowyで完結することができる。ほんとにきれいにすべてがつながる。
Workflowyだと、そこにある文章の「見かけ」を、Stylishで変えることができます。
書き出すときは「・」を消し、エディタっぽく。
「・」が消えたとはいえ、アウトライナーであることには変わりないので、インデント・アウトデントをして、文章を組み立てることができる。
トピックを入れ替えたり階層化したりしながら、形にしていくことができる。
他の人が読んで理解できるように、読みやすいように仕上げるときには、マークダウン記法を利用して。シンタックスハイライトにて、構成を見えやすくしながら。
書きあがった後はiPhoneのHandyFlowyで、スタイルをブログっぽくして完成した文章を読み返し、修正する(文章の推敲にiPhoneを用いて、自分の中の「推敲モード」のスイッチを入れる)。
同じWorkFlowy上で作業が完結するので、どのデバイスにもStylishをインストールして同じスタイルを適用できるようにしておけば、まったく同じ環境が出来上がる。
どこから手を加えても、すべてもれなく変更が同期される。勝手に。ほとんど同期を意識することなく。
一連の流れのすべてが、WorkFlowyという場でつながる。
こんな快適さは、ほかにはない、と思います。

となるとやることは一つ。WorkFlowyでシンタックスハイライトを実現すること。
で、がんばりました。そして、なんとかそれっぽいものを実装できました。
本来のシンタックスハイライトは実装できませんでしたが、「タグ」をつけることで文章を色分けすることができるようになりました。
見出しとリストと引用の部分にタグをつけると、タグのついたトピックの文字の色や大きさを変える、ちょっとした装飾をほどこすことができるようになりました。
ただ、リンク、太字、下線はハイライトされません。当然で、タグをつかっている関係上、トピックの中の一部分だけを装飾、ってことができないためです。
普段太字や下線は使っていないので、まぁえぇか、ということになりました。

できたのが、こんなかんじ。

次回は、この実装について書きたいと思います。

おわりに

おそらくは、本などを書こうとおもうとWorkFlowyのみで完結することは難しいとは思うのですが、そんなに長くない文章であれば、なんの問題もなく、どこからでも、快適に「書く」ことができるようになったな、と思います。
最近文章を書くのが楽しくなってるのですが、この執筆用にカスタマイズしたWorkFlowyのおかげであるかもしれません。

今後の課題は、WorkFlowy上では、タグを使いながらマークダウン記法で書いていくので、それをエクスポートする際に、まだブログ用のHTMLで文章を取り出すことができない、ってところです。いちいち成形しなくちゃいけない。
独自のハサミスクリプト的なものが必要だなぁ、という感じです。次はそれを作れないかあがいてみようかな。

では、お読みいただきありがとうございました。

WorkFlowyで文章を書くときの感覚的な話

WorkFlowyを使って文章を書くのは、「ブログの書き始め」がほとんどです。
どんなことを書こうかなぁとぼんやりと考え、何か思いついたことについてだぁーと書き出す。いわゆるフリーライティングをおこなうとき。
また、書き出した文章はそのままでは他の人が読んでも、というか、時間がたってから自分が読んでもおそらくなんのこっちゃわからないので、ちゃんと他の人が読んでもわかるように整理し、組み立てていくとき。
FireFoxをWorkFlowyのための「執筆専用ブラウザ」として使って、書き始めから整理し、組み立てるまでをおこなっています。
で、そこから先は他のエディタに書いたものを移し、あるいはそれまでの書いたものを見ながら他のエディタで文章を仕上げていく、というのがいつものぼくのパターンです。

プレーンテキストに階層化が加わったもの

途中まではWorkFlowyを使って文章を書いていくわけですが、ブログほどの文章であればとくに階層化せず、文章たちの順番を移動させたり、改行を多く入れることで文章の塊を見えやすくしたりするくらいで仕上げまで持っていけることが少なくありません。
ブログを書くときには、階層化する必然性はそんなにない、ということです。せいぜい2階層くらいまで扱うことができればいいんではないか、と思っていました。
とはいえ、必要であればいつでも階層化できるという安心感は、かなり重要であるとも思うので、文章を書き始め、整理し、組み立てていくときにはWorkFlowyが安心なわけです。

WorkFlowyで文章を書く、となれば、階層化も利用しつつ文章を組み立てていきます。
階層によって組み立てたあとは、文章をブログのエントリとして仕上げる際には、階層を「見出し」という形に変換し、整えていきます
でも、ぼくはその方法が、見出しを文章を階層化することによって表現するのがしっくりきませんでした。
WorkFlowyを使い始める以前からずっとマークダウン記法によってブログ記事を仕上げてきたから、なのでしょう。見出しは、マークダウン記法のように、「ここを見出しにしますよ」ってしるしを入れることで表現したいってどうしても思ってしまうんです。
マークダウン記法に慣れているので、多くの文章が連なっている中で、ある文章を見出しにしたければ、その文章に「##」をつければいい。やめたければ「##」を消せばいい。
なので、文章をWorkFlowyで書くときには、プレーンテキストに階層化が加わったもの、くらいに考えておくのがしっくりきているようだと気付きました。

見出しをつけたり消したりで、、、

見出しを階層化で表現するためには、見出しにしたい文章の後に続く文章たちをまるごとごっそり見出し文章の階層の下に入れなくちゃいけない。がために、なんだか一度見出しを定めてしまうと、ちょっと動かしにくさが出てしまう。気がする。
文章たちの流動性が下がってしまう、気がする。

  • 見出しにあたる文章
    • そこに続いていく文章
    • さらにそこに続いていく文章

よりも

## 見出しにあたる文章
そこに続いていく文章
さらにそこに続いていく文章

のほうが、各々の自由度が高い、気がする。
マークダウンによる表現のほうが、手軽に感じるんです。手軽に感じるので、文章の流動性を高いままに保つことができる、気がする。
文章を書くときには、文章たちをリストっぽくは扱いたくないのかもしれません。「・」がいらないな、と感じるのも、「・」があったらどうしてもリストっぽくみえてしまうから、なのかも。

すべてフィーリングの話なので、もしかしたらぼくに限った話なのかもしれませんが。

なので、大きな構造を必要としないブログの文章では、「見出しですよ」を意味する「##」をつけたり消したりしながら、整理し、組み立てていくことになります。
ある文章に「##」をつけてそれより下に連なる文章をグルーピングしたり、見出しを新たに書き加えたり。
書き進めるうちに「ん?」となり、「##」を取り除いて一度フラットに戻したり。
気付きました。ぼくは「##」をつけたり消したりして「シェイク」をおこなってるんやな、と。

おわりに

ってなことを考えていると、だんだん「最後までWorkFlowyで完結させたい」と思うようになってきました。
というのも、iMacとWindowsPCのeeebookとiPhoneと、というように、3つのデバイスでテキストを扱い、ブログを書いています。
WorkFlowyで完結できれば、書く作業も、文章を管理する場所にもなってくれることになります。こんな快適なことはない。
その際にほしいのが、マークダウン記法をシンタックスハイライトする機能。これがないために、仕上げの段階をほかのエディタにまかせている、と言えそうなので。
というわけで、そこからハイライトをなんとか実装できないものか、といろいろとあがくことになりました。
続きます。

では、お読みいただきありがとうございました。