Class: Roebe::ToBuy

Inherits:
Base show all
Defined in:
lib/roebe/classes/to_buy.rb

Overview

Roebe::ToBuy

Constant Summary collapse

BASE_DIR =
#

BASE_DIR

#
HOME_OF_THE_USER_CALLED_X+'data/personal/todo/'
TO_BUY_FILE =
#

TO_BUY_FILE

bl /home/x/DATA/TODO/TO_BUY.md

#
"#{BASE_DIR}to_buy.md"
HEADER =
#

HEADER

Which header-separator to use.

#
' - '
ALSO_APPEND_DATE =
#

ALSO_APPEND_DATE

#
true

Constants inherited from Base

Base::COLOURS, Base::HOME_DIRECTORY_OF_USER_X, Base::N, Base::NAMESPACE

Instance Method Summary collapse

Methods inherited from Base

#actions, #append_this_onto_that_file, #append_what_into, #be_silent, #be_verbose?, #beautiful_url, #burlywood, #call_next, #chdir, #cheerful_guy, #cliner, #complex_esystem, #convert_global_env, #copy_directory, #copy_file, #cornflowerblue, #create_directory, #crimson, #current_month?, #current_time?, #current_year?, #cyan, #darkcyan, #darkgreen, #darkkhaki, #darkslateblue, #deeppink, #delete_symlink, #do_not_use_the_base_colours, #do_use_the_base_colours, #e, #editor_to_use?, #efancy, #eimp, #emphasis, #ensure_main_encoding, #ensure_utf_encoding, #eparse, #erev, #esteelblue, #etomato, #ewarn, #firebrick, #get_current_day, #get_current_month, #get_files_and_directories, #get_files_from, #get_german_name_for_this_weekday, #gold, #green, #grey, #hh_mm_ss, #hh_mm_ss_day_month_year, #home_dir?, #home_directory_of_user_x?, #infer_the_namespace, #internal_hash?, #is_a_directory?, #is_a_file?, #is_a_jpg_file?, #is_an_image_file?, #is_archive?, #is_audio_file?, #is_in_studium_dir?, #is_multimedia_file?, #is_on_roebe?, #is_on_windows?, #is_studium_available?, #is_symlink?, #is_this_a_ruby_file?, #is_video_file?, #iso_encoding?, #le, #left_colour, #lightblue, #lightgreen, #lightseagreen, #lightsteelblue, #lime, #limegreen, #localhost_to_data, #log_directory?, #main_encoding?, #mediumorchid, #mediumpurple, #mediumseagreen, #mediumslateblue, #mediumspringgreen, #mediumturquoise, #mkdir_p, #mv, #n_days_in_this_month, #n_pages_in_this_pdf_file?, #namespace?, #no_file_exists_at, #olivedrab, #open_in_browser, #opne, #opnesystem, #opnn, #orange, #orchid, #palegoldenrod, #palevioletred, #pink, #powderblue, #programs_dir?, #project_base_dir?, #random_html_colour, #rds, #read_file_in_iso_encoding, #read_file_via_the_default_encoding, #read_lines_via_iso_encoding, #readlines_with_main_encoding, #red, #register_sigint, #remove, #remove_directory, #remove_file, #rename_kde_konsole_tab, #replace_localhost_with_data, #report_pwd, #require_rescue, #reset_the_internal_hash, #return_all_directories_from_this_directory, #return_all_files_from_this_directory, #return_current_directory, #return_dd_mm_yyyy, #return_file_or_directory_of, #return_files_from_pwd, #return_last_part_of_the_current_directory, #return_utc, #rev, #right_arrow?, #right_colour, #roebe_log_directory?, #rosybrown, #royalblue, #ruby_base_directory?, #run_in_background, #run_rcfiles_then_run_ata_via_qdbus, #sandybrown, #sdir, #seagreen, #set_be_verbose, #set_xorg_buffer, #sfancy, #sfile, #silent_redirection?, #simp, #simple_esystem, #skyblue, #slateblue, #slategray, #springgreen, #steelblue, #swarn, #symlink, #teal, #temp_dir?, #to_camelcase, #to_counted_hash, #tomato, #touch, #try_to_require_the_beautiful_url_gem, #try_to_require_the_html_template, #try_to_require_the_open_gem, #try_to_require_the_program_information_gem, #try_to_require_the_xorg_buffer, #use_colours?, #verbose_truth, #weekday?, #word_wrap, #write_what_into, #yellow

Methods included from Base::CommandlineArguments

#append_onto_the_commandline_arguments, #clear_commandline_arguments, #commandline_arguments?, #commandline_arguments_as_string?, #commandline_arguments_without_leading_hyphens?, #first_argument?, #first_argument_without_leading_hyphens?, #has_an_argument_been_passed?, #remove_hyphened_arguments_from_the_commandline_arguments, #return_commandline_arguments_with_leading_hyphens, #second_argument?, #set_commandline_arguments

Constructor Details

#initialize(i = nil, run_already = true) ⇒ ToBuy

#

initialize

#


53
54
55
56
57
58
59
60
# File 'lib/roebe/classes/to_buy.rb', line 53

def initialize(
    i           = nil,
    run_already = true
  )
  reset
  set_commandline(i)
  run if run_already
end

Instance Method Details

#append_to_the_to_buy_file(i = @commandline) ⇒ Object

#

append_to_the_to_buy_file

#


109
110
111
112
113
114
115
116
# File 'lib/roebe/classes/to_buy.rb', line 109

def append_to_the_to_buy_file(i = @commandline)
  i = i.dup if i.frozen?
  if ALSO_APPEND_DATE
    i << ' '+return_current_time+'.'
  end
  i.prepend(HEADER) unless i.start_with? HEADER # HEADER is usually this: ' - '
  append_what_into_file(N+i+N, @to_buy_file)
end

#assume_that_the_user_wants_to_display_the_to_buy_file(to_buy_file = @to_buy_file) ⇒ Object Also known as: display_main_file, show_tobuy_file

#

assume_that_the_user_wants_to_display_the_to_buy_file

#


191
192
193
194
195
196
197
198
# File 'lib/roebe/classes/to_buy.rb', line 191

def assume_that_the_user_wants_to_display_the_to_buy_file(
    to_buy_file = @to_buy_file
  )
  opne "Now displaying the content of `#{sfile(to_buy_file)}`.#{N}#{N}"
  cliner {
    e File.read(to_buy_file)
  }; e
end

#check_commandlineObject

#

check_commandline

#


144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
# File 'lib/roebe/classes/to_buy.rb', line 144

def check_commandline
  case @commandline # case tag
  # ======================================================================= #
  # === HELP
  # ======================================================================= #
  when '?',/-?-?help$/i
    show_help
  # ======================================================================= #
  # === OPEN_ALL
  # ======================================================================= #
  when /OPEN_?ALL/,'EDIT_ALL'
    open_yaml_file
    open_this_file_in_editor
  # ======================================================================= #
  # === OPEN_YAML_FILE
  # ======================================================================= #
  when 'OPEN_YAML_FILE','OPENYAMLFILE','OYAML'
    open_yaml_file
  # ======================================================================= #
  # === SHOW
  # ======================================================================= #
  when 'SHOW',
       'DISPLAY'
    show_tobuy_file
  # ======================================================================= #
  # === OPEN
  # ======================================================================= #
  when 'OPEN',
       'EDIT'
    open_this_file_in_editor
  else # Else, the default action.
    report_where_we_will_append_to
    append_to_the_to_buy_file(@commandline)
    display_main_file
  end
end

#ecomment(i) ⇒ Object

#

ecomment

#


128
129
130
# File 'lib/roebe/classes/to_buy.rb', line 128

def ecomment(i)
  Colours.ecomment(i)
end

#open_this_file_in_editorObject

#

open_this_file_in_editor

#


135
136
137
138
139
# File 'lib/roebe/classes/to_buy.rb', line 135

def open_this_file_in_editor
  editor = @editor
  _ = "#{editor} #{__FILE__}"
  esystem _
end

#open_yaml_fileObject

#

open_yaml_file

#


65
66
67
# File 'lib/roebe/classes/to_buy.rb', line 65

def open_yaml_file
  esystem "#{@editor} #{TO_BUY_FILE}"
end

#report_where_we_will_append_toObject

#

report_where_we_will_append_to

#


184
185
186
# File 'lib/roebe/classes/to_buy.rb', line 184

def report_where_we_will_append_to
  opne 'Now appending to the file `'+sfile(@to_buy_file)+'`.'
end

#resetObject

#

reset (reset tag)

#


72
73
74
75
76
77
78
79
80
81
82
83
# File 'lib/roebe/classes/to_buy.rb', line 72

def reset
  super()
  infer_the_namespace
  # ======================================================================= #
  # === @to_buy_file
  # ======================================================================= #
  @to_buy_file = TO_BUY_FILE
  # ======================================================================= #
  # === @editor
  # ======================================================================= #
  @editor = ENV['EDITOR'].to_s 
end

#return_current_timeObject

#

return_current_time

#


121
122
123
# File 'lib/roebe/classes/to_buy.rb', line 121

def return_current_time
  '(Added on: '+::Time.now.strftime('%d.%m.%Y')+')'
end

#runObject

#

run (run tag)

#


204
205
206
207
208
209
210
# File 'lib/roebe/classes/to_buy.rb', line 204

def run
  if @commandline
    check_commandline
  else
    assume_that_the_user_wants_to_display_the_to_buy_file
  end
end

#set_commandline(i = '') ⇒ Object

#

set_commandline

#


100
101
102
103
104
# File 'lib/roebe/classes/to_buy.rb', line 100

def set_commandline(i = '')
  i = i.join(' ') if i.is_a? Array
  i = i.to_s.dup if i
  @commandline = i
end

#show_helpObject

#

show_help (help tag)

#


88
89
90
91
92
93
94
95
# File 'lib/roebe/classes/to_buy.rb', line 88

def show_help
  e 'These options are available right now:'
  e
  ecomment '  OPEN     # open the source file in your editor'
  ecomment '  OPEN_ALL # open the source .rb file in your editor and also the TO_BUY file'
  ecomment '  SHOW     # show the to_buy file'
  e
end