カスタムリーダー解説 - Getaji/NarouCustomize GitHub Wiki

「小説家になろう」の小説のページをカスタマイズするUserScriptとCSSです。

機能は大別して

  • ヘッダーの拡張
  • 固定フッターの追加
  • ツールボックスの追加
  • その他の機能の追加

に分類されます。

ヘッダー

ヘッダーを大きくカスタマイズし、タイトル表示用ヘッダーとその他の情報を表示するヘッダーの二段重ねにします。

タイトル表示用ヘッダーは、その名の通りタイトルのみが表示されます。下にスクロールすると非表示、上にスクロールすると表示されます。

その他の情報を表示するヘッダーには、サブタイトル、ページ番号、前後話へのリンク、ブックマークと栞を表示します。これは固定表示です。

固定フッター

ヘッダーと同様に、スクロールしても下部に固定表示されるフッターを追加します。

フッターにはタイトル、サブタイトル、章名、作者名、行数、文字数、スクロール位置が表示されます。タイトルとサブタイトルの長さによってはみ出すことがあったので、それぞれの最大幅を大体30%に制限しています。

行数と文字数は置換前の数値です。置換操作を検出してリアルタイムに値を反映する仕様にする予定はないこともないですが、あまり重要な事でもないので優先度はかなり低いです。ソースコード結構弄らないといけないし。

スクロール位置はピクセル単位で、ドキュメントの高さと現在のY座標を表示します。クリックするとプロンプトが開き、数値を入力するとそのY座標に移動します。

ツールボックス

ツールボックスは、ヘッダーやフッターと同様に、スクロールしても左下に固定表示されます。カスタムリーダー開発の労力の大半はここに注がれていると言っても過言ではないです。まあ、機能数が多いので必然ですが。

表示

表示関係のツールです。チェックボックスでサブタイトル、本文、ルビ関係のON/OFFを行います。

サブタイトルはネタバレ対策です。設定に書き込まれるので再読込しても維持されます。CSS側でデフォルト非表示(visibility:hidden)にしてあるので、ONにしていても初期処理中しばらくは非表示になっています。タイトルバーにはON/OFF関わらず表示されます。

ルビ関係のON/OFFは以下の機能があります。設定の維持はされません。

  • ルビ括弧表示 - ルビの前後に括弧を表示する。主にコピー用。
  • ルビ表示 - ルビの表示/非表示。
  • ルビ付き文字表示 - ルビの付いた文字の表示/非表示。

あと暗色テーマのON/OFF機能がありますが、Stylishが挿入した要素のIDをハードコーディングしているので、多分他の環境で導入してもそのままでは動きません。一応その場合は無視するようにしています。

コピー

テキストコピー関係のツールです。ボタンでワンクリックコピーです。

選択範囲、ルビを含む選択範囲、タイトル、サブタイトル、章名、URL、RSS URLをコピーできます。

ルビを含む選択範囲をコピーする機能は、まずルビのついた文字を一部でいいので選択し、コピーボタンを押すことで該当範囲がハイライトされ、ルビ付き文字と共にルビ部分が括弧で囲われてコピーされます。

置換

本文の文字列を置換するツールです。

** 書きかけ **