universal_pipe_handler 0.0.10
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/README.md +461 -0
- data/doc/README.gen +417 -0
- data/doc/todo/todo_for_the_universal_pipe_handler_project.md +300 -0
- data/img/UNIVERSAL_PIPE_HANDLER_LOGO.jpg +0 -0
- data/img/pipe_paradise.png +0 -0
- data/lib/universal_pipe_handler/base/base.rb +147 -0
- data/lib/universal_pipe_handler/cmdlet/cmdlet.rb +287 -0
- data/lib/universal_pipe_handler/cmdlets/add.rb +15 -0
- data/lib/universal_pipe_handler/cmdlets/add_audio.rb +22 -0
- data/lib/universal_pipe_handler/cmdlets/all.rb +37 -0
- data/lib/universal_pipe_handler/cmdlets/any.rb +25 -0
- data/lib/universal_pipe_handler/cmdlets/ascii_video.rb +30 -0
- data/lib/universal_pipe_handler/cmdlets/assign.rb +24 -0
- data/lib/universal_pipe_handler/cmdlets/capture_screen.rb +46 -0
- data/lib/universal_pipe_handler/cmdlets/colourize.rb +35 -0
- data/lib/universal_pipe_handler/cmdlets/convert_to.rb +21 -0
- data/lib/universal_pipe_handler/cmdlets/convert_to_images.rb +17 -0
- data/lib/universal_pipe_handler/cmdlets/convert_to_mp3.rb +28 -0
- data/lib/universal_pipe_handler/cmdlets/convert_to_wav.rb +17 -0
- data/lib/universal_pipe_handler/cmdlets/copy_directories.rb +23 -0
- data/lib/universal_pipe_handler/cmdlets/count_character.rb +31 -0
- data/lib/universal_pipe_handler/cmdlets/count_longest_row.rb +21 -0
- data/lib/universal_pipe_handler/cmdlets/crop.rb +26 -0
- data/lib/universal_pipe_handler/cmdlets/cut.rb +101 -0
- data/lib/universal_pipe_handler/cmdlets/days.rb +41 -0
- data/lib/universal_pipe_handler/cmdlets/decolourize.rb +25 -0
- data/lib/universal_pipe_handler/cmdlets/download.rb +30 -0
- data/lib/universal_pipe_handler/cmdlets/download_torrent.rb +17 -0
- data/lib/universal_pipe_handler/cmdlets/duration.rb +34 -0
- data/lib/universal_pipe_handler/cmdlets/extract.rb +27 -0
- data/lib/universal_pipe_handler/cmdlets/extract_all.rb +23 -0
- data/lib/universal_pipe_handler/cmdlets/extract_audio.rb +30 -0
- data/lib/universal_pipe_handler/cmdlets/extract_video.rb +18 -0
- data/lib/universal_pipe_handler/cmdlets/find_all.rb +40 -0
- data/lib/universal_pipe_handler/cmdlets/generate_random_video.rb +29 -0
- data/lib/universal_pipe_handler/cmdlets/generate_string.rb +27 -0
- data/lib/universal_pipe_handler/cmdlets/get_all_audio_files.rb +33 -0
- data/lib/universal_pipe_handler/cmdlets/get_all_files.rb +61 -0
- data/lib/universal_pipe_handler/cmdlets/get_all_images.rb +47 -0
- data/lib/universal_pipe_handler/cmdlets/get_all_images_including_subdirs.rb +26 -0
- data/lib/universal_pipe_handler/cmdlets/get_all_video_files.rb +34 -0
- data/lib/universal_pipe_handler/cmdlets/get_last_characters.rb +24 -0
- data/lib/universal_pipe_handler/cmdlets/help.rb +36 -0
- data/lib/universal_pipe_handler/cmdlets/identify.rb +29 -0
- data/lib/universal_pipe_handler/cmdlets/increase_audio.rb +26 -0
- data/lib/universal_pipe_handler/cmdlets/install.rb +32 -0
- data/lib/universal_pipe_handler/cmdlets/match_regex.rb +24 -0
- data/lib/universal_pipe_handler/cmdlets/n_directories.rb +25 -0
- data/lib/universal_pipe_handler/cmdlets/n_files.rb +20 -0
- data/lib/universal_pipe_handler/cmdlets/n_words.rb +25 -0
- data/lib/universal_pipe_handler/cmdlets/number_lines.rb +34 -0
- data/lib/universal_pipe_handler/cmdlets/open_in_browser.rb +40 -0
- data/lib/universal_pipe_handler/cmdlets/pad_left.rb +20 -0
- data/lib/universal_pipe_handler/cmdlets/pad_right.rb +20 -0
- data/lib/universal_pipe_handler/cmdlets/play.rb +18 -0
- data/lib/universal_pipe_handler/cmdlets/position.rb +21 -0
- data/lib/universal_pipe_handler/cmdlets/processes.rb +18 -0
- data/lib/universal_pipe_handler/cmdlets/random.rb +21 -0
- data/lib/universal_pipe_handler/cmdlets/random_video.rb +23 -0
- data/lib/universal_pipe_handler/cmdlets/read_file.rb +44 -0
- data/lib/universal_pipe_handler/cmdlets/read_line.rb +31 -0
- data/lib/universal_pipe_handler/cmdlets/read_n_lines.rb +38 -0
- data/lib/universal_pipe_handler/cmdlets/read_n_lines_inverted.rb +36 -0
- data/lib/universal_pipe_handler/cmdlets/remove_audio.rb +22 -0
- data/lib/universal_pipe_handler/cmdlets/remove_comments.rb +26 -0
- data/lib/universal_pipe_handler/cmdlets/remove_directories.rb +29 -0
- data/lib/universal_pipe_handler/cmdlets/remove_html.rb +25 -0
- data/lib/universal_pipe_handler/cmdlets/remove_newlines.rb +23 -0
- data/lib/universal_pipe_handler/cmdlets/remove_numbers.rb +25 -0
- data/lib/universal_pipe_handler/cmdlets/repackage_to.rb +27 -0
- data/lib/universal_pipe_handler/cmdlets/replace_underscores.rb +29 -0
- data/lib/universal_pipe_handler/cmdlets/resize.rb +39 -0
- data/lib/universal_pipe_handler/cmdlets/resize_image.rb +45 -0
- data/lib/universal_pipe_handler/cmdlets/reverse.rb +22 -0
- data/lib/universal_pipe_handler/cmdlets/screenshot.rb +41 -0
- data/lib/universal_pipe_handler/cmdlets/search_torrent.rb +24 -0
- data/lib/universal_pipe_handler/cmdlets/seconds.rb +23 -0
- data/lib/universal_pipe_handler/cmdlets/select.rb +23 -0
- data/lib/universal_pipe_handler/cmdlets/show_lines.rb +31 -0
- data/lib/universal_pipe_handler/cmdlets/shuffle.rb +16 -0
- data/lib/universal_pipe_handler/cmdlets/shuffle_csv.rb +55 -0
- data/lib/universal_pipe_handler/cmdlets/size.rb +21 -0
- data/lib/universal_pipe_handler/cmdlets/sort_alphabetical.rb +20 -0
- data/lib/universal_pipe_handler/cmdlets/sort_by_date.rb +23 -0
- data/lib/universal_pipe_handler/cmdlets/starts_with.rb +25 -0
- data/lib/universal_pipe_handler/cmdlets/stat_file.rb +61 -0
- data/lib/universal_pipe_handler/cmdlets/to_ascii.rb +38 -0
- data/lib/universal_pipe_handler/cmdlets/to_camel_case.rb +38 -0
- data/lib/universal_pipe_handler/cmdlets/to_dna.rb +31 -0
- data/lib/universal_pipe_handler/cmdlets/to_movie.rb +16 -0
- data/lib/universal_pipe_handler/cmdlets/to_pdf.rb +58 -0
- data/lib/universal_pipe_handler/cmdlets/translate.rb +36 -0
- data/lib/universal_pipe_handler/cmdlets/upload_to.rb +29 -0
- data/lib/universal_pipe_handler/cmdlets/word_count.rb +39 -0
- data/lib/universal_pipe_handler/cmdlets/word_wrap.rb +26 -0
- data/lib/universal_pipe_handler/cmdlets/write_to.rb +51 -0
- data/lib/universal_pipe_handler/cmdlets/years.rb +30 -0
- data/lib/universal_pipe_handler/cmdlets_handler/cmdlets_handler.rb +193 -0
- data/lib/universal_pipe_handler/colours/colourize.rb +112 -0
- data/lib/universal_pipe_handler/colours/colours.rb +54 -0
- data/lib/universal_pipe_handler/configuration/configuration.rb +18 -0
- data/lib/universal_pipe_handler/constants/constants.rb +201 -0
- data/lib/universal_pipe_handler/dataset/dataset.rb +14 -0
- data/lib/universal_pipe_handler/project/project.rb +36 -0
- data/lib/universal_pipe_handler/requires/do_require_the_individual_cmdlet_files.rb +21 -0
- data/lib/universal_pipe_handler/requires/require_the_universal_pipe_handler.rb +14 -0
- data/lib/universal_pipe_handler/shell/shell.rb +256 -0
- data/lib/universal_pipe_handler/toplevel_methods/all_actions.rb +48 -0
- data/lib/universal_pipe_handler/toplevel_methods/cmdlet_directory.rb +22 -0
- data/lib/universal_pipe_handler/toplevel_methods/e.rb +16 -0
- data/lib/universal_pipe_handler/toplevel_methods/misc.rb +54 -0
- data/lib/universal_pipe_handler/toplevel_methods/rds.rb +18 -0
- data/lib/universal_pipe_handler/toplevel_methods/token.rb +18 -0
- data/lib/universal_pipe_handler/version/version.rb +19 -0
- data/lib/universal_pipe_handler/yaml/aliases_to_cmdlets.yml +250 -0
- data/lib/universal_pipe_handler/yaml/allowed_cmdlets.yml +118 -0
- data/lib/universal_pipe_handler/yaml/predefined_methods.yml +15 -0
- data/lib/universal_pipe_handler.rb +5 -0
- data/test/testing_the_universal_pipe_handler.rb +65 -0
- data/test/this_file +46 -0
- data/universal_pipe_handler.gemspec +80 -0
- metadata +299 -0
@@ -0,0 +1,36 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# require 'universal_pipe_handler/cmdlets/read_n_lines_inverted.rb'
|
6
|
+
# =========================================================================== #
|
7
|
+
module UniversalPipeHandler
|
8
|
+
|
9
|
+
# ========================================================================= #
|
10
|
+
# === UniversalPipeHandler.cmdlet_read_n_lines_inverted
|
11
|
+
# ========================================================================= #
|
12
|
+
def self.cmdlet_read_n_lines_inverted(
|
13
|
+
n_lines_to_read = 50,
|
14
|
+
optional_file = nil
|
15
|
+
)
|
16
|
+
if n_lines_to_read.is_a? Array
|
17
|
+
if n_lines_to_read.size > 1
|
18
|
+
optional_file = n_lines_to_read.pop unless n_lines_to_read.nil?
|
19
|
+
end
|
20
|
+
n_lines_to_read = n_lines_to_read.first
|
21
|
+
end
|
22
|
+
n_lines_to_read = n_lines_to_read.to_i.abs
|
23
|
+
if optional_file
|
24
|
+
_ = File.readlines(optional_file)
|
25
|
+
else
|
26
|
+
_ = result?
|
27
|
+
end
|
28
|
+
if _
|
29
|
+
set_result(_.reverse[0 .. (n_lines_to_read-1)].reverse)
|
30
|
+
else
|
31
|
+
e 'The input in the method `'+__method__.to_s+'` is '+
|
32
|
+
'nil. Can not continue.'
|
33
|
+
end
|
34
|
+
end; self.instance_eval { alias read_n_lines_inverted cmdlet_read_n_lines_inverted } # === UniversalPipeHandler.read_n_lines_inverted
|
35
|
+
|
36
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# require 'universal_pipe_handler/cmdlets/remove_audio.rb'
|
6
|
+
# =========================================================================== #
|
7
|
+
module UniversalPipeHandler
|
8
|
+
|
9
|
+
# ========================================================================= #
|
10
|
+
# === UniversalPipeHandler.cmdlet_remove_audio
|
11
|
+
#
|
12
|
+
# This action will remove the audio from a clip, by calling the
|
13
|
+
# class RemoveAudio.
|
14
|
+
# ========================================================================= #
|
15
|
+
def self.cmdlet_remove_audio(
|
16
|
+
i = result?
|
17
|
+
)
|
18
|
+
set_result(RemoveAudio[i])
|
19
|
+
return result?
|
20
|
+
end; self.instance_eval { alias remove_audio cmdlet_remove_audio } # === UniversalPipeHandler.remove_audio
|
21
|
+
|
22
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# require 'universal_pipe_handler/cmdlets/remove_comments.rb'
|
6
|
+
# =========================================================================== #
|
7
|
+
module UniversalPipeHandler
|
8
|
+
|
9
|
+
# ========================================================================= #
|
10
|
+
# === UniversalPipeHandler.cmdlet_remove_comments
|
11
|
+
#
|
12
|
+
# Remove comments via the class StripComments.
|
13
|
+
# ========================================================================= #
|
14
|
+
def self.cmdlet_remove_comments(
|
15
|
+
i = result?,
|
16
|
+
use_this_split_character = '#'
|
17
|
+
)
|
18
|
+
_ = RemoveComments::RemoveComments.new(i, :be_silent) # bl $RSRC/remove_comments/lib/remove_comments/remove_comments/remove_comments.rb
|
19
|
+
_.split_character = use_this_split_character
|
20
|
+
_.retain_newlines
|
21
|
+
_.run
|
22
|
+
set_result(_.result)
|
23
|
+
return result?
|
24
|
+
end; self.instance_eval { alias remove_comments cmdlet_remove_comments } # === UniversalPipeHandler.remove_comments
|
25
|
+
|
26
|
+
end
|
@@ -0,0 +1,29 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# require 'universal_pipe_handler/cmdlets/remove_directories.rb'
|
6
|
+
# =========================================================================== #
|
7
|
+
module UniversalPipeHandler
|
8
|
+
|
9
|
+
# ========================================================================= #
|
10
|
+
# === UniversalPipeHandler.cmdlet_remove_directories
|
11
|
+
#
|
12
|
+
# We use this action to remove directories.
|
13
|
+
# ========================================================================= #
|
14
|
+
def self.cmdlet_remove_directories
|
15
|
+
result = []
|
16
|
+
_ = result?.compact # Get rid of nil values.
|
17
|
+
if _.empty? # Then get all directory from the current dir.
|
18
|
+
_ = get_all_directories
|
19
|
+
end
|
20
|
+
_.map {|entry|
|
21
|
+
result << entry if File.directory?(entry)
|
22
|
+
}
|
23
|
+
e 'Removing these directories next:'
|
24
|
+
result.each { |entry| remove(entry) }
|
25
|
+
set_result(result)
|
26
|
+
return result?
|
27
|
+
end; self.instance_eval { alias remove_directories cmdlet_remove_directories } # === UniversalPipeHandler.remove_directories
|
28
|
+
|
29
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# require 'universal_pipe_handler/cmdlets/remove_numbers.rb'
|
6
|
+
# =========================================================================== #
|
7
|
+
module UniversalPipeHandler
|
8
|
+
|
9
|
+
# ========================================================================= #
|
10
|
+
# === UniversalPipeHandler.cmdlet_remove_html
|
11
|
+
#
|
12
|
+
# Remove the HTML part from a string.
|
13
|
+
# ========================================================================= #
|
14
|
+
def self.cmdlet_remove_html(partial_remove = false)
|
15
|
+
_ = result? # Work on a copy of result here.
|
16
|
+
_ = _.join if _.is_a? Array
|
17
|
+
if partial_remove
|
18
|
+
set_result _.gsub(/\</, '').gsub(/\>/,'')
|
19
|
+
else
|
20
|
+
set_result Cyberweb.remove_html(_)
|
21
|
+
end
|
22
|
+
return result? # This is ok again.
|
23
|
+
end; self.instance_eval { alias remove_html cmdlet_remove_html } # === UniversalPipeHandler.remove_html
|
24
|
+
|
25
|
+
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# require 'universal_pipe_handler/cmdlets/remove_newlines.rb'
|
6
|
+
# =========================================================================== #
|
7
|
+
module UniversalPipeHandler
|
8
|
+
|
9
|
+
# ========================================================================= #
|
10
|
+
# === UniversalPipeHandler.cmdlet_remove_newlines
|
11
|
+
#
|
12
|
+
# Remove comments via a gsub.
|
13
|
+
#
|
14
|
+
# This is similar to using tr by the way, like: tr "\n" " "
|
15
|
+
# ========================================================================= #
|
16
|
+
def self.cmdlet_remove_newlines(i = result?)
|
17
|
+
i = i.join if i.is_a? Array
|
18
|
+
_ = i.gsub(/\n/, ' ') # Here we will get rid of the "\"n.
|
19
|
+
set_result(_)
|
20
|
+
return result?
|
21
|
+
end; self.instance_eval { alias remove_newlines cmdlet_remove_newlines } # === UniversalPipeHandler.remove_newlines
|
22
|
+
|
23
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# require 'universal_pipe_handler/cmdlets/remove_numbers.rb'
|
6
|
+
# =========================================================================== #
|
7
|
+
module UniversalPipeHandler
|
8
|
+
|
9
|
+
# ========================================================================= #
|
10
|
+
# === UniversalPipeHandler.cmdlet_remove_numbers
|
11
|
+
#
|
12
|
+
# This method will remove numbers. We will apply the modification on
|
13
|
+
# @result.
|
14
|
+
#
|
15
|
+
# The method remove_numbers is defined in shared/shared.rb
|
16
|
+
# ========================================================================= #
|
17
|
+
def self.cmdlet_remove_numbers
|
18
|
+
if result?.is_a? Array
|
19
|
+
@result.map! {|entry| remove_numbers(entry) }
|
20
|
+
else
|
21
|
+
set_results(remove_numbers(result?))
|
22
|
+
end
|
23
|
+
end; self.instance_eval { alias remove_numbers cmdlet_remove_numbers } # === UniversalPipeHandler.remove_numbers
|
24
|
+
|
25
|
+
end
|
@@ -0,0 +1,27 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# require 'universal_pipe_handler/cmdlets/repackage_to.rb'
|
6
|
+
# =========================================================================== #
|
7
|
+
module UniversalPipeHandler
|
8
|
+
|
9
|
+
# ========================================================================= #
|
10
|
+
# === UniversalPipeHandler.cmdlet_repackage_to
|
11
|
+
# ========================================================================= #
|
12
|
+
def self.cmdlet_repackage_to(
|
13
|
+
this = :zip
|
14
|
+
)
|
15
|
+
case this.to_s
|
16
|
+
# ======================================================================= #
|
17
|
+
# === zip
|
18
|
+
# ======================================================================= #
|
19
|
+
when 'zip'
|
20
|
+
_ = 'zip a_zip_archive_'+
|
21
|
+
action_generate_string(5, false).gsub(/ /,'')+
|
22
|
+
'_'+get_date+'_'+get_time+'.zip '+result?.join(' ')
|
23
|
+
run_sys_cmd _
|
24
|
+
end
|
25
|
+
end; self.instance_eval { alias repackage_to cmdlet_repackage_to } # === UniversalPipeHandler.repackage_to
|
26
|
+
|
27
|
+
end
|
@@ -0,0 +1,29 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# require 'universal_pipe_handler/cmdlets/replace_underscores.rb'
|
6
|
+
# =========================================================================== #
|
7
|
+
module UniversalPipeHandler
|
8
|
+
|
9
|
+
require 'roebe/classes/replace_space_with_underscore/replace_space_with_underscore.rb'
|
10
|
+
|
11
|
+
# ========================================================================= #
|
12
|
+
# === UniversalPipeHandler.cmdlet_replace_underscores
|
13
|
+
#
|
14
|
+
# We replace all ' ' with '_'. In other words, blanks are replaced
|
15
|
+
# with underscores, in the filenames. This is done through the class
|
16
|
+
# ReplaceSpaceWithUnderscore.
|
17
|
+
#
|
18
|
+
# To test this, try:
|
19
|
+
#
|
20
|
+
# ls | replace underscores
|
21
|
+
#
|
22
|
+
# ========================================================================= #
|
23
|
+
def self.cmdlet_replace_underscores
|
24
|
+
result = Roebe::ReplaceSpaceWithUnderscore.new
|
25
|
+
set_result(result.modified_these_files)
|
26
|
+
return result?
|
27
|
+
end; self.instance_eval { alias replace_underscores cmdlet_replace_underscores } # === UniversalPipeHandler.replace_underscores
|
28
|
+
|
29
|
+
end
|
@@ -0,0 +1,39 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# require 'universal_pipe_handler/cmdlets/reverse.rb'
|
6
|
+
# =========================================================================== #
|
7
|
+
module UniversalPipeHandler
|
8
|
+
|
9
|
+
# ========================================================================= #
|
10
|
+
# === UniversalPipeHandler.cmdlet_resize
|
11
|
+
#
|
12
|
+
# This method can be used to resize video, audio or image data.
|
13
|
+
# ========================================================================= #
|
14
|
+
def self.cmdlet_resize(
|
15
|
+
which_files = nil,
|
16
|
+
resize_how = nil
|
17
|
+
)
|
18
|
+
if which_files.is_a? Array
|
19
|
+
which_files.each {|entry| action_resize(resize_how, entry) }
|
20
|
+
else
|
21
|
+
if resize_how.include? '%'
|
22
|
+
resize_how = (resize_how.to_i / 100.0)
|
23
|
+
output_file = rds(Dir.pwd+'/output_'+File.basename(which_file))
|
24
|
+
# ===================================================================== #
|
25
|
+
# Next, resize the video here:
|
26
|
+
# ===================================================================== #
|
27
|
+
if is_video_file?
|
28
|
+
_ = 'ffmpeg -i '+_+' -vf scale=iw*'+resize_how.to_s+':-1 '+output_file
|
29
|
+
else # Assume image here.
|
30
|
+
_ = 'convert '+which_file
|
31
|
+
end
|
32
|
+
set_result(output_file)
|
33
|
+
esystem _
|
34
|
+
return result?
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end; self.instance_eval { alias resize cmdlet_resize } # === UniversalPipeHandler.resize
|
38
|
+
|
39
|
+
end
|
@@ -0,0 +1,45 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# require 'universal_pipe_handler/cmdlets/resize_image.rb'
|
6
|
+
# =========================================================================== #
|
7
|
+
module UniversalPipeHandler
|
8
|
+
|
9
|
+
require 'universal_pipe_handler/toplevel_methods/rds.rb'
|
10
|
+
|
11
|
+
# ========================================================================= #
|
12
|
+
# === UniversalPipeHandler.cmdlet_resize_image
|
13
|
+
#
|
14
|
+
# This will resize an image, by making use of the program called
|
15
|
+
# "convert" from the ImageMagick suite.
|
16
|
+
# ========================================================================= #
|
17
|
+
def self.cmdlet_resize_image(
|
18
|
+
second_argument,
|
19
|
+
third_argument = nil
|
20
|
+
)
|
21
|
+
if second_argument.is_a? Array and second_argument.size > 1
|
22
|
+
third_argument = second_argument.pop # Eliminate last Array member.
|
23
|
+
end
|
24
|
+
if third_argument
|
25
|
+
second_argument = second_argument.to_a unless second_argument.is_a? Array
|
26
|
+
@result = second_argument
|
27
|
+
second_argument = third_argument
|
28
|
+
end
|
29
|
+
array = []
|
30
|
+
result?.each { |img|
|
31
|
+
store_here = ''
|
32
|
+
if img.include? '/'
|
33
|
+
store_here << rds(File.dirname(img))
|
34
|
+
else
|
35
|
+
store_here << rds(Dir.pwd)
|
36
|
+
end
|
37
|
+
array << (converted_name = store_here+'resized_image_'+File.basename(img) )
|
38
|
+
_ = 'convert '+img+' -resize '+second_argument+' '+converted_name
|
39
|
+
run_sys_cmd _
|
40
|
+
}
|
41
|
+
set_result(array)
|
42
|
+
do_not_display
|
43
|
+
end
|
44
|
+
|
45
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# require 'universal_pipe_handler/cmdlets/reverse.rb'
|
6
|
+
# =========================================================================== #
|
7
|
+
module UniversalPipeHandler
|
8
|
+
|
9
|
+
# ========================================================================= #
|
10
|
+
# === UniversalPipeHandler.cmdlet_reverse
|
11
|
+
#
|
12
|
+
# To test this method, try:
|
13
|
+
#
|
14
|
+
# cat :main_file | reverse
|
15
|
+
#
|
16
|
+
# ========================================================================= #
|
17
|
+
def self.cmdlet_reverse
|
18
|
+
set_result result?.reverse
|
19
|
+
return result?
|
20
|
+
end; self.instance_eval { alias reverse cmdlet_reverse } # === UniversalPipeHandler.reverse
|
21
|
+
|
22
|
+
end
|
@@ -0,0 +1,41 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# require 'universal_pipe_handler/cmdlets/screenshot.rb'
|
6
|
+
# =========================================================================== #
|
7
|
+
module UniversalPipeHandler
|
8
|
+
|
9
|
+
require 'roebe/classes/take_screenshot.rb'
|
10
|
+
|
11
|
+
# ========================================================================= #
|
12
|
+
# === UniversalPipeHandler.cmdlet_screenshot (screenshot tag)
|
13
|
+
#
|
14
|
+
# Make a screenshot through this method here.
|
15
|
+
#
|
16
|
+
# To test this, do:
|
17
|
+
#
|
18
|
+
# snapshot
|
19
|
+
#
|
20
|
+
# ========================================================================= #
|
21
|
+
def self.cmdlet_screenshot
|
22
|
+
set_img_file = Dir.pwd+'/Screenshot_'+get_date+'_'+get_time+'.png'
|
23
|
+
@result = @img_file
|
24
|
+
if Object.const_defined?(:Roebe) and
|
25
|
+
Roebe.const_defined?(:TakeScreenshot)
|
26
|
+
_ = Roebe::TakeScreenshot.new :dont_run_yet
|
27
|
+
_.store_into_this_file @img_file if @img_file # Otherwise use the default.
|
28
|
+
_.delay = 0
|
29
|
+
_.do_not_open_in_gimp # Don't want it gimp now.
|
30
|
+
_.be_quiet
|
31
|
+
_.set_output_file(set_img_file)
|
32
|
+
_.run
|
33
|
+
set_result _.output_file?
|
34
|
+
return result?
|
35
|
+
else
|
36
|
+
_ = 'scrot '+@img_file
|
37
|
+
esystem _
|
38
|
+
end
|
39
|
+
end; self.instance_eval { alias screenshot cmdlet_screenshot } # === UniversalPipeHandler.screenshot
|
40
|
+
|
41
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# require 'universal_pipe_handler/cmdlets/search_torrent.rb'
|
6
|
+
# =========================================================================== #
|
7
|
+
module UniversalPipeHandler
|
8
|
+
|
9
|
+
begin
|
10
|
+
require 'search_torrent'
|
11
|
+
rescue LoadError; end
|
12
|
+
|
13
|
+
# ========================================================================= #
|
14
|
+
# === UniversalPipeHandler.cmdlet_search_torrent
|
15
|
+
#
|
16
|
+
# Simply delegate towards MultimediaConversions.
|
17
|
+
# ========================================================================= #
|
18
|
+
def self.cmdlet_search_torrent(i = result?)
|
19
|
+
search_torrent = SearchTorrent.new(remove_quotes(i), false) # false for dont be verbose
|
20
|
+
search_torrent.fetch_remote_url
|
21
|
+
set_result search_torrent.url
|
22
|
+
end; self.instance_eval { alias search_torrent cmdlet_search_torrent } # === UniversalPipeHandler.search_torrent
|
23
|
+
|
24
|
+
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# require 'universal_pipe_handler/cmdlets/seconds.rb'
|
6
|
+
# =========================================================================== #
|
7
|
+
module UniversalPipeHandler
|
8
|
+
|
9
|
+
# ========================================================================= #
|
10
|
+
# === UniversalPipeHandler.cmdlet_seconds?
|
11
|
+
#
|
12
|
+
# This method is a fake-method: it will simply return the result in
|
13
|
+
# form of an Integer.
|
14
|
+
# ========================================================================= #
|
15
|
+
def self.cmdlet_seconds?(i = result?)
|
16
|
+
i = i.first if i.is_a? Array
|
17
|
+
i = i.to_i
|
18
|
+
set_result(i)
|
19
|
+
return i
|
20
|
+
end; self.instance_eval { alias seconds? cmdlet_seconds? } # === UniversalPipeHandler.seconds?
|
21
|
+
self.instance_eval { alias n_seconds? cmdlet_seconds? } # === UniversalPipeHandler.n_seconds?
|
22
|
+
|
23
|
+
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# require 'universal_pipe_handler/cmdlets/select.rb'
|
6
|
+
# =========================================================================== #
|
7
|
+
module UniversalPipeHandler
|
8
|
+
|
9
|
+
# ========================================================================= #
|
10
|
+
# === UniversalPipeHandler.cmdlet_select
|
11
|
+
#
|
12
|
+
# We use this method to select n entries, where n is the argument to
|
13
|
+
# that method.
|
14
|
+
# ========================================================================= #
|
15
|
+
def self.cmdlet_select(i = 0)
|
16
|
+
i = i.to_i
|
17
|
+
if result?
|
18
|
+
set_result(result?[0, i])
|
19
|
+
end
|
20
|
+
return result?
|
21
|
+
end; self.instance_eval { alias select cmdlet_select } # === UniversalPipeHandler.select
|
22
|
+
|
23
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# This pipe-action will show the lines.
|
6
|
+
# =========================================================================== #
|
7
|
+
# require 'universal_pipe_handler/cmdlets/show_lines.rb'
|
8
|
+
# =========================================================================== #
|
9
|
+
module UniversalPipeHandler
|
10
|
+
|
11
|
+
# ========================================================================= #
|
12
|
+
# === UniversalPipeHandler.cmdlet_show_lines
|
13
|
+
# ========================================================================= #
|
14
|
+
def self.cmdlet_show_lines(range)
|
15
|
+
range = range.to_s
|
16
|
+
if range.include? '-'
|
17
|
+
splitted = range.split '-'
|
18
|
+
first = splitted.first.to_i - 1
|
19
|
+
last = splitted.last.to_i - 1
|
20
|
+
range = Range.new(first, last)
|
21
|
+
range = range.to_a
|
22
|
+
end
|
23
|
+
new_result = []
|
24
|
+
result?.each_with_index { |_, index|
|
25
|
+
new_result << _ if range.include?(index.to_i)
|
26
|
+
}
|
27
|
+
set_result(new_result)
|
28
|
+
return result?
|
29
|
+
end; self.instance_eval { alias show_lines cmdlet_show_lines } # === UniversalPipeHandler.show_lines
|
30
|
+
|
31
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# require 'universal_pipe_handler/cmdlets/shuffle.rb'
|
6
|
+
# =========================================================================== #
|
7
|
+
module UniversalPipeHandler
|
8
|
+
|
9
|
+
# ========================================================================= #
|
10
|
+
# === UniversalPipeHandler.cmdlet_shuffle
|
11
|
+
# ========================================================================= #
|
12
|
+
def self.cmdlet_shuffle(i = result?)
|
13
|
+
set_result(result?.shuffle)
|
14
|
+
end; self.instance_eval { alias shuffle cmdlet_shuffle } # === UniversalPipeHandler.shuffle
|
15
|
+
|
16
|
+
end
|
@@ -0,0 +1,55 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# require 'universal_pipe_handler/cmdlets/shuffle.rb'
|
6
|
+
# =========================================================================== #
|
7
|
+
module UniversalPipeHandler
|
8
|
+
|
9
|
+
require 'csv'
|
10
|
+
|
11
|
+
# ========================================================================= #
|
12
|
+
# === UniversalPipeHandler.cmdlet_shuffle_csv
|
13
|
+
#
|
14
|
+
# Currently the assumption is that we will pass a .csv file to
|
15
|
+
# this method, which will then be reshuffled into different
|
16
|
+
# tab-entries.
|
17
|
+
# ========================================================================= #
|
18
|
+
def self.cmdlet_shuffle_csv(
|
19
|
+
arguments = result?
|
20
|
+
)
|
21
|
+
new_array = []
|
22
|
+
possible_csv_file = result?.first
|
23
|
+
# ======================================================================= #
|
24
|
+
# We can not use CSV.read because this will chop off '"' quotes.
|
25
|
+
# ======================================================================= #
|
26
|
+
if File.exist? possible_csv_file
|
27
|
+
possible_csv_file = CSV.read(possible_csv_file)
|
28
|
+
# ===================================================================== #
|
29
|
+
# When we have an ',' entry in a member then we know that this
|
30
|
+
# derived from a '"' quoted word.
|
31
|
+
# ===================================================================== #
|
32
|
+
possible_csv_file.map! {|line|
|
33
|
+
line.map! {|entry|
|
34
|
+
entry = '"'+entry+'"' if entry.include? ','
|
35
|
+
entry
|
36
|
+
}
|
37
|
+
line
|
38
|
+
}
|
39
|
+
end
|
40
|
+
splitted = arguments.split(',')
|
41
|
+
possible_csv_file.each {|line|
|
42
|
+
index_array = [*splitted].map(&:to_i)
|
43
|
+
# ===================================================================== #
|
44
|
+
# Deduct one from the index-array next.
|
45
|
+
# ===================================================================== #
|
46
|
+
index_array.map! {|entry|
|
47
|
+
entry -= 1
|
48
|
+
}
|
49
|
+
new_array << index_array.map {|index| line.at(index) }
|
50
|
+
}
|
51
|
+
set_result(new_array)
|
52
|
+
return result?
|
53
|
+
end; self.instance_eval { alias shuffle_csv cmdlet_shuffle_csv } # === UniversalPipeHandler.shuffle_csv
|
54
|
+
|
55
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# require 'universal_pipe_handler/cmdlets/size.rb'
|
6
|
+
# =========================================================================== #
|
7
|
+
module UniversalPipeHandler
|
8
|
+
|
9
|
+
# ========================================================================= #
|
10
|
+
# === UniversalPipeHandler.cmdlet_size
|
11
|
+
# ========================================================================= #
|
12
|
+
def self.cmdlet_size(i = result?)
|
13
|
+
size = 0
|
14
|
+
i.each {|entry|
|
15
|
+
size += File.size(entry)
|
16
|
+
}
|
17
|
+
set_result(size)
|
18
|
+
return result?
|
19
|
+
end; self.instance_eval { alias size cmdlet_size } # === UniversalPipeHandler.size
|
20
|
+
|
21
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# require 'universal_pipe_handler/cmdlets/cmdlet_convert_to_mp3.rb'
|
6
|
+
# =========================================================================== #
|
7
|
+
module UniversalPipeHandler
|
8
|
+
|
9
|
+
# ========================================================================= #
|
10
|
+
# === UniversalPipeHandler.cmdlet_sort_alphabetical
|
11
|
+
# ========================================================================= #
|
12
|
+
def self.cmdlet_sort_alphabetical(i = result?)
|
13
|
+
new_data = i.sort_by {|entry|
|
14
|
+
File.basename(entry).downcase # We sort only on the last part here.
|
15
|
+
}
|
16
|
+
set_result(new_data)
|
17
|
+
end; self.instance_eval { alias sort_alphabetical cmdlet_sort_alphabetical } # === UniversalPipeHandler.sort_alphabetical
|
18
|
+
self.instance_eval { alias action_sort_alphabetical cmdlet_sort_alphabetical } # === UniversalPipeHandler.action_sort_alphabetical
|
19
|
+
|
20
|
+
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# require 'universal_pipe_handler/cmdlets/sort_by_date.rb'
|
6
|
+
# =========================================================================== #
|
7
|
+
module UniversalPipeHandler
|
8
|
+
|
9
|
+
# ========================================================================= #
|
10
|
+
# === UniversalPipeHandler.cmdlet_sort_by_date
|
11
|
+
#
|
12
|
+
# The convention used here is:
|
13
|
+
#
|
14
|
+
# new files will appear on top
|
15
|
+
#
|
16
|
+
# ========================================================================= #
|
17
|
+
def self.cmdlet_sort_by_date(i = result?)
|
18
|
+
sorted = i.sort_by {|entry| File.atime(entry) }.reverse
|
19
|
+
set_result sorted
|
20
|
+
return result?
|
21
|
+
end; self.instance_eval { alias sort_by_date cmdlet_sort_by_date } # === UniversalPipeHandler.sort_by_date
|
22
|
+
|
23
|
+
end
|