Method: NovelConverter#create_novel_text_by_template

Defined in:
lib/novelconverter.rb

#create_novel_text_by_template(sections) ⇒ Object



275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
# File 'lib/novelconverter.rb', line 275

def create_novel_text_by_template(sections)
  toc = @toc
  cover_chuki = @cover_chuki
  device = Narou.get_device
  setting = @setting
  processed_title = toc["title"]
  data = Database.instance.get_data("id", @novel_id)
  # タイトルに新着更新日を付加する
  if @setting.enable_add_date_to_title
    new_arrivals_date = data["new_arrivals_date"] || data["last_update"]
    date_str = new_arrivals_date.strftime(@setting.title_date_format)
    if @setting.title_date_align == "left"
      processed_title = date_str + processed_title
    else  # right
      processed_title += date_str
    end
  end
  # タイトルに完結したかどうかを付加する
  tags = data["tags"] || []
  if tags.include?("end")
    processed_title += " (完結)"
  end
  # タイトルがルビ化されてしまうのを抑制
  processed_title = processed_title.gsub("《", "※[#始め二重山括弧]")
                                   .gsub("》", "※[#終わり二重山括弧]")
  tempalte_name = (device && device.ibunko? ? NOVEL_TEXT_TEMPLATE_NAME_FOR_IBUNKO : NOVEL_TEXT_TEMPLATE_NAME)
  Template.get(tempalte_name, binding)
end