module RaspbergFilenamer
RaspbergFilenamer — Mass Filename Converter 2000 rename preview (no filesystem).
Constants
- MAX_EXT
- MAX_PREFIX
Public Instance Methods
Source
# File lib/raspberg_filenamer.rb, line 10 def parse(args_text) text = args_text.to_s.strip return { error: "Usage: !raspberg filenamer <prefix> <start> <ext> -- <file> [file...]" } if text.empty? head, sources_text = text.split(/\s+--\s+/, 2) parts = head.to_s.split(/\s+/) return { error: "Usage: !raspberg filenamer <prefix> <start> <ext> -- <file> [file...]" } if parts.length < 3 prefix = parts[0] start = parts[1].to_i ext = parts[2] sources = sources_text.to_s.split(/\s+/).reject(&:empty?) return { error: "prefix cannot exceed #{MAX_PREFIX} characters." } if prefix.length > MAX_PREFIX return { error: "extension cannot exceed #{MAX_EXT} characters." } if ext.length > MAX_EXT { prefix: prefix, start: start, ext: ext, sources: sources } end
Source
# File lib/raspberg_filenamer.rb, line 29 def preview(prefix:, start:, ext:, sources:) return { error: "Please select a nonzero starting value." } if start.to_i.zero? return { error: "Please select the files you wish to have converted." } if sources.nil? || sources.empty? filenumber = start.to_i - 1 names = sources.map do |_source| filenumber += 1 "#{prefix}#{filenumber}.#{ext}" end { names: names, prefix: prefix, start: start, ext: ext, sources: sources } end