Upload
sbr45
View
219
Download
1
Embed Size (px)
Citation preview
ngn – novel page generator小説ページ生成ツール
@subaru452015-02-28
n g n - n o v e l p a g e g e n e r a t o r
はじめに
• このスライドで述べること– ngnとは何か– ngnでできること– ngnの使い方
• このスライドで述べないこと– インストール方法– つっこんだ使い方– ngnfの使い方
n g n - n o v e l p a g e g e n e r a t o r
ngnについて• ngnとは……
– 小説用(HTML)ページを生成するツール– https://bitbucket.org/subaru45/ngn
• 何ができる?– テキストファイルからのテキスト抽出– テンプレートへの文字列埋め込み– ngnの独自記法から各出力形式(HTMLなど)への変換
(ルビ、強調(傍点)、章題などを表現可能)
n g n - n o v e l p a g e g e n e r a t o r
ngnについて
• なぜつくった?– @subaru45はアマチュアもの書き– 書いた文章をWebサイトとpixivに向けて整形する作業が
死ぬほどメンドクサイから
n g n - n o v e l p a g e g e n e r a t o r
ngnについて
• なにがうれしい?– テキスト抽出&テンプレート埋め込み
● HTML手打ち&コピペの手間いらず!– ngn記法からの各形式への変換
● HTMLのルビもpixivのルビも章題も自動生成!
• サイト更新作業がもんげー楽に。
n g n - n o v e l p a g e g e n e r a t o r
ngnの機能 - テキスト抽出&埋め込み
• テキストファイルの一部を抽出して
テンプレートに埋め込み
n g n - n o v e l p a g e g e n e r a t o r
ngnの機能 - ngn記法の変換
• ngnの独自記法でルビなどを書けば、同じファイルから各出力形式に変換できる
HTML
pixiv用テンプレート
pixiv形式
HTMLテンプレート
テキストファイル(ngn記法でルビ等記述)
n g n - n o v e l p a g e g e n e r a t o r
:title 文章のタイトル
メモ1メモ2
:body
本文1本文2本文3
:postscript
あとがき1あとがき2
機能詳細 - テキスト抽出(一行)
• テキストファイルの抽出箇所指定(タグ付け)– 「:名前[半角空白]文字列」と書く– 半角空白から行末までが抽出される
<html><head><title>#|title|#</title></head><body><h1>#|title|#</h1>
<p class=”body”>#|body|#</p>
<p class=”postscript”>#|postscript|#</p></body></html>
n g n - n o v e l p a g e g e n e r a t o r
:title 文章のタイトル
メモ1メモ2
:body
本文1本文2本文3
:postscript
あとがき1あとがき2
機能詳細 - テキスト抽出(複数行)
• テキストファイルの抽出箇所指定(タグ付け)– 「:名前」と書く– 次のタグまでの行が抽出される
<html><head><title>#|title|#</title></head><body><h1>#|title|#</h1>
<p class=”body”>#|body|#</p>
<p class=”postscript”>#|postscript|#</p></body></html>
n g n - n o v e l p a g e g e n e r a t o r
:title 文章のタイトル
メモ1メモ2
:body
本文1本文2本文3
:postscript
あとがき1あとがき2
機能詳細 - テンプレート埋め込み
• テンプレートの埋め込み箇所指定– 「#|名前|#」と書くだけ
<html><head><title>#|title|#</title></head><body><h1>#|title|#</h1>
<p class=”body”>#|body|#</p>
<p class=”postscript”>#|postscript|#</p></body></html>
n g n - n o v e l p a g e g e n e r a t o r
機能詳細 - テキスト抽出&埋め込み
• 注意点– タグの名前に使える文字は以下3種のみ1.アルファベット小文字2.数字3.ハイフン(-)
– 一行タグの半角空白は1つだけ以降の半角空白は文字列の一部となる
– 複数行タグは、前後の空行を無視する
(前スライドの薄青の範囲が抽出される)
n g n - n o v e l p a g e g e n e r a t o r
機能詳細 - ngn記法とは
• ルビ、傍点、章題などを出力形式に依存せずに書くための記法
表すもの 記法 注意点
ルビ #rb(文字列)(ルビ) 文字列内で括弧使用不可
強調(傍点) #em(文字列) 文字列内で括弧使用不可
太字 #bd(文字列) 文字列内で括弧使用不可
斜字 #it(文字列) 文字列内で括弧使用不可
太字・斜字 #bi(文字列) 文字列内で括弧使用不可
下線 #ul(文字列) 文字列内で括弧使用不可
章題 # 文字列 行頭から開始すること章題内で他の記法使用不可
引用 > 複数行の> 文字列
行頭から開始すること引用内で引用、章題以外の記法使用可
n g n - n o v e l p a g e g e n e r a t o r
機能詳細 - ngn記法の変換
• テンプレートに合わせて自動的に変換して出力してくれる
<ruby>師走暗黒煙草<rp>(</rp><rt>バーニング・ダーク・フレイム・オブ・ディッセンバ</rt><rp>)</rp></ruby>
pixiv用テンプレート
[[rb:師走暗黒煙草 > バーニング・ダーク・フレイム・オブ・ディッセンバー]]
HTMLテンプレート
:body
#rb(師走暗黒煙草)(バーニング・ダーク・フレイム・オブ・ディッセンバー)
n g n - n o v e l p a g e g e n e r a t o r
ngnコマンドの使い方
1.入力ファイルとテンプレートを用意する
2.コマンドラインを立ち上げる
3.次のコマンドを打ち込む
4.出力ファイルができあがる
$ ngn [テンプレートファイル名] [テキストファイル名] [出力ファイル名]
n g n - n o v e l p a g e g e n e r a t o r
以上。おしまい