anti scroll

ブラウザと小説の新しい関係を模索する

2015-01-01から1年間の記事一覧

Unicode Hyphen覚え書き

例えばHTMLで「F-15」のような「-」(ハイフン)を含むboxを90度回転して表示させようとすると、ハイフンの後で改行されてしまいます。 なぜこんなことが起きてしまうのでしょうか。 理由 フォントサイズが16と仮定して「F-15」という横書きのwordを囲むサイ…

Nehan Reader version2.1リリース。自動で変換するサイトを指定できるようになりました。

Nehan Reader(version 2.1)をリリースしました。 chrome.google.com オプションページにて、 自動的にNehan Readerを起動するURL(パターン) URL(パターン)毎の変換対象に指定する部分 などが設定できるようになりました。 ちなみに「小説家になろう」と…

CSSとDOMの境界、あるいはリスト組版がテーブル組版の親戚である件について

http://tb.antiscroll.com/static/nehan-demo#list このデモですけど、ブラウザの大きさを変えると、リフローすることに気付いた人はいるでしょうか。 こういうデモで、テーブル組版や回り込み処理を見せると「おお」となる人が多いんですけど、リスト組版を…

nehan.js version5.4.0のリリース

nehan.js 5.4.0をリリースしました。 github.com このバージョンから新しく追加された機能や、5.3.x系から消えた機能などがいくつかあるので、ご注意下さい。 変更点 Nehan.Documentが新たに定義されました。 onPageコールバックがサポートされました。 Neha…

nehan.jsでSemantic UIのようなヘッダースタイルを設定する

人気のCSSフレームワーク「Semantic-UI」ですが、ヘッダーの設定はこんな感じになっています。 .ui.header{ margin: calc(2rem - 0.14285em) 0em 1rem; } 各ヘッダー内での文字サイズ(em)と、bodyの文字サイズ(rem)を使って計算しています。 同じことをnehan…

「殿堂入り作品」を新設しました

本日より、ポイントが1000を超えた作品は、殿堂入り作品として表彰されるようになりました。 つまり殿堂入り作品は、月のポイント数にかかわらず、常に露出される形になります。 その代わり、月別ランキングからは除外されるようになりました。 ちなみに1000…

カルマ値に関する仕様を追加しました。

縦書き文庫では、作品を読めば読むほど「カルマ」という値が上昇するようになっていますが、このカルマに関する仕様を少し更新しました。 縦書き文庫ヘルプ - カルマについて 既存のルール(そのまま) カルマ100オーバーでプロフィールページから広告が消え…

段落のリアルタイムプレビュー機能を追加しました

編集中の段落をリアルタイムでプレビューする機能を追加しました。 カーソルのある位置の段落だけがプレビューされるので、そこそこ高速です。 「字下げ」の誤変換は、キャプチャをとった後に気づきました。 しかし「それでも重い!」という方は、エディタの…

Firefoxでもversion41以降で縦書き字形が表示されるようになりました

昨日リリースされたFirefoxのversion41から縦書きの字形が出力できるようになりましたので、縦書き文庫とnehan.jsもこれに対応しました。 これまでFirefoxのときだけ、一部の文字を画像で代替表示する処理をしていたのですが、これからはそれらがちゃんとし…

トップページなどから直接しおりを開くことができるようになりました

PCページだけですが、トップページなどのヘッダーバーから、直接しおりを開くことができるようになりました。 スマホで無効化されているのは、単に画面のサイズに収まりにくかったからです… なにか良いレイアウトを思いついたら、スマホからも使えるようにし…

ビューアーにページ送りのシークバーが付きました

ビューアーにシークバーが付きました。 つまんで動かしてページ移動できます。 縦書きの時は右から左に、横書きの時は左から右に動かします。 ただしIEだと、縦書きの時に変な数字がポップアップします。 どういうことかというと、html5のrangeは左がminで右…

ビューアーを更新し、スマホからもPCと同じ機能が使えるようになりました

先日の管理画面に続き、ビューアーも全ての環境で統一し、スマホからもPCと同じ機能が使えるようになりました。 これでスマホからも、しおりを挟んだり、お気に入りに登録したり、コメントを投稿したりすることができます。 その他の新しい機能 まずコメント…

エディターに字下げ、引用、改ページ、セリフ、補足ボタンを追加

エディターに字下げ、引用、台詞、補足、改ページボタンなどを追加しました。 改ページについては説明不要かと思いますので、それ以外について少し補足します。 字下げ、引用の違い 字下げ、引用は選択範囲を選んでから押してみてください。 「字下げ」と「…

いつの間にかFileAPIのreadAsBinaryStringがオワコンになっていた。今後はreadAsArrayBufferで。

タイトルで全てを言い尽くしてしまいましたが、経緯をば。 不具合報告で「IEで画像のアップロードができない」ってのがあったので調査してみたら、readAsBinaryStringでコケてました。 調べてみると、どうもIE系列ではreadAsBinaryStringそのものが存在しな…

RxJSとvirtual-domで、拡張可能なreactiveアプリケーションを作るリアクティブ・アダプター - inga

inga(因果)は、軽量で拡張可能なリアクティブ・アダプターです。RxJSとvirtual-domを使っています。 github.com よくあるTodo-MVCは100行ぐらいです。 inga/todo-mvc.js 特徴 軽量なこと。全ソース合わせても100行ちょっとしかないです。 プラグインで拡張…

管理画面がスマホにも対応しました

管理画面リニューアルのお知らせです。 スマホとPCでUIを統一し、どちらからも同じUIで使用できるようになりました。 エントリーの一覧には、カードUIを使用しています。 PCユーザーからすると、元のテーブルレイアウトのほうが一覧性が高いかもしれませんが…

nehan.jsのセレクターマッチング処理を高速化

nehan.jsのセレクタのマッチング処理を高速化しました。 先日サポートした行末揃えは、有効にすると20%ほど遅くなりましたが、今回の修正によって15%ほど速くできたので、少し戻すことができました。 前々から、機会があったらやっておこうと思っていた処理…

text-align:justify に対応

nehan.jsが、text-align:justifyに対応しました。 縦書き文庫では既に、ビューアーのbodyに対してjustifyが設定されています。 これを設定すると、例えば行末に赤い部分のような微妙なスペースがあっても… 揃えた後はこんな風に、行末が揃います。 あらゆる…

nehan.jsが複数ページに渡る論理的な回りこみ処理(論理フロート)の解除に対応しました。

リポジトリ上のnehan.jsで、論理的な回りこみ処理(論理フロート)の解除を実装しました。 回り込みを解除するスタイル設定ですが、通常のcssでは、 .clear-left{ clear:left } .clear-right{ clear:right } .clear-both{ clear:both } などと書くところです…

縦書き横書きの自動リサイズに対応したページ送りのビューアー「responsivook」

縦書き横書きの自動リサイズに対応したページ送りのビューアーを公開しました。 github.com ブログやホームページに簡単に埋め込むことができます(たぶん)。 デモ デモページを用意しました。 Responsivook demo 上のページで、ウインドウをリサイズしてみ…

Chrome Extensionのmanifest.json内version値を更新するスクリプト

手作業でやるのが面倒になってきたので書きました。 事前にnpm install minimistが必要です。 // update-manifest-version.js var fs = require("fs"); var args = require("minimist")(process.argv.slice(2)); var update_version = function(version, tar…

textNodeの出力オプションを追加

2chからのアクセスに、珍しくリファラが付いてたので、元スレを覗いてみたのですが、縦書き文庫に投稿された作品へのリンクに「踏まないほうがいいよね?」ってレスが付いていて、地味に傷ついたのでした。 capturePageTextオプション それはさておき、表題…

段落の先頭に自動で空白を入れる

サッカーのページを見ていたら、サイドメニューあった「ストレスと友達になる方法」というリンクが「スアレスと友達になる方法」に見えてしまいました。 ストレスともスアレスとも友達になれそうにない自分ですが、せめて段落の先頭に自動で空白を入れるぐら…

スタイル編集機能で、プログラマブルな小説投稿

新たにスタイル編集ページを追加しました。 詳しくは縦書き文庫のヘルプから「スタイル編集」のページを確認して下さい。 注意事項 スタイルはcssではなく、JSON形式で宣言します。 { ".foo":{ margin:{ after:"1em" } }, "span.fuga":{ "font-size":"2em" /…

camel caseでもcssプロパティが設定できるようになりました

nehan.js 5.1.1(まだ開発版ですが)から、cssのプロパティをcamel caseでも指定できるようになりました。 どういうことかというと、ver5.1.0以前では、例えばfont-sizeを設定するとき、 Nehan.setStyle({"font-size":"1.6em"}); // chain-case のようにしか…

クラス名やID名が短く書けるようになりました

これまで縦書き文庫でマークアップするとき、特定の表示を利用する場合、クラス名にnehan-という接頭辞を付けなければならなかったのですが、これが不要になりました。 例えば行末寄せは、これまでは <p class="nehan-ta-end">行末に寄せる</p> だったのですが、今後は <p class="ta-end">行末に寄せる</p> とマ…

各ユーザーの作品を一覧できるアーカイブページを用意しました

ユーザーの作品を手早く一覧できるページを用意しました。 例えば、図書館アカウントのアーカイブページ スマホからでも閲覧できるので、自作の一覧を手っ取り早く紹介するページとして便利かもしれません。 アーカイブページのURLは、以下のとおりです。末…

マークダウン記法をサポートしました

テキストをマークダウン記法で記述できるようになりました。 「その他の項目」の「入力方法」から設定できます。 でも実は「あんまり使われないかもしれないなあ」と思っています。 というのも、マークダウンで改行するには、空行をひとつ開ける必要があるか…

ゼノブレイドをクリア

松方弘樹さんが6時間半の格闘の末に361キロのマグロを釣り上げた今日、自分はゼノブレイドを100時間程度の格闘の末にレベル87でクリアしたのでした。 Newニンテンドー3DS専用 ゼノブレイド 【購入特典】Xenoblade Special Sound Track 付出版社/メーカー: 任…

Rx(Reactive Extensions)とVirtual DOMで作るリアクティブなUI、およびMVARアーキテクチャについて

元ネタはReactive MVC and the Virtual DOMなのですが、MVIという言葉がしっくりこなかったので、自分なりに消化した結果、こういう枠組みになりました、という話しです。 MVARアーキテクチャ概要 まず頭文字の意味についてですが、 M = Model V = View A = …