Sha256: 202c28182a78278e069eaef12c550b549e3d50438e1dc16017d6d2dd1d4ed499

Contents?: true

Size: 875 Bytes

Versions: 3

Compression:

Stored size: 875 Bytes

Contents

require_relative "../util/indent_helper"

module JpQuest
  module SNBT
    # SNBT形式のファイルからsubtitle: "some subtitle"を抽出するモジュール
    module SubtitleExtractor
      include IndentHelper

      # subtitle: "some subtitle"を抽出する
      #
      # @param [String] file_path ファイルのパス
      # @return [Array<Hash>] サブタイトルと行番号の配列
      def extract_subtitles(file_path)
        subtitles = []
        lines = File.readlines(file_path)
        lines.each_with_index do |line, index|
          next unless start_of?(line, key: :subtitle)

          subtitles << {
            type: :subtitle,
            text: extract_oneline(line),
            start_line: index,
            end_line: index,
            indent: count_indent(line)
          }
        end

        subtitles
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
jp_quest-0.3.2 lib/jp_quest/snbt/subtitle_extractor.rb
jp_quest-0.3.1 lib/jp_quest/snbt/subtitle_extractor.rb
jp_quest-0.3.0 lib/jp_quest/snbt/subtitle_extractor.rb