From 305e2486f4431fc7e0487423f90ed380852194b2 Mon Sep 17 00:00:00 2001 From: Ayush Poddar Date: Wed, 7 Jun 2023 18:00:34 +0530 Subject: [PATCH] refactor: split into two methods --- lib/colorls/core.rb | 34 +++++++++++++++++++++++----------- 1 file changed, 23 insertions(+), 11 deletions(-) diff --git a/lib/colorls/core.rb b/lib/colorls/core.rb index b558968..f5f7707 100644 --- a/lib/colorls/core.rb +++ b/lib/colorls/core.rb @@ -416,20 +416,32 @@ module ColorLS def options(content) if content.directory? - key = content.name.downcase.to_sym - key = @folder_aliases[key] unless @folders.key? key - key = :folder if key.nil? - color = content.hidden? ? @colors[:hidden_dir] : @colors[:dir] - group = :folders + options_directory(content).values_at(:key, :color, :group) else - key = File.extname(content.name).delete_prefix('.').downcase.to_sym - key = @file_aliases[key] unless @files.key? key - color = file_color(content, key) - group = @files.key?(key) ? :recognized_files : :unrecognized_files - key = :file if key.nil? + options_file(content).values_at(:key, :color, :group) end + end - [key, color, group] + def options_directory(content) + key = content.name.downcase.to_sym + key = @folder_aliases[key] unless @folders.key?(key) + key = :folder if key.nil? + + color = content.hidden? ? @colors[:hidden_dir] : @colors[:dir] + + {key: key, color: color, group: :folders} + end + + def options_file(content) + key = File.extname(content.name).delete_prefix('.').downcase.to_sym + key = @file_aliases[key] unless @files.key?(key) + + color = file_color(content, key) + group = @files.key?(key) ? :recognized_files : :unrecognized_files + + key = :file if key.nil? + + {key: key, color: color, group: group} end def tree_contents(path)