Harry Nash <hjnash / adistantstar.com> writes:

> I am new to coding, I have tried to place a number of data strings into
> one variable 

This is not possible.  By definition a variable has only one value.
This is not quantic computing.

What you could do is to put the values in some object, and put that
object in the variable.  You may choose between a custom object, a
hash-table, an array, a list, etc.  For example:

filename = "/tmp/example.mp3"
mp3_title = "Example"
mp3_artist = "Musician" 

file_link = [ Dir.pwd, filename, mp3_title, mp3_artist ]
file_link[0]
file_link[1]

file_link = { :directory => Dir.pwd, 
              :file      => filename, 
              :title     => mp3_title,
              :artist    => mp3_artist }
file_link[:directory]
file_link[:file]

class Cons 
  attr_accessor :first,:rest

  def initialize(f,r)
     @first=f
     @rest=r
  end

  def Cons.list(*objects)
     result = nil
     objects . reverse . each { | object | result = Cons.new(object,result) }
     result
  end

  # ...

end

file_link = Cons.list( Dir.pwd, filename, mp3_title, mp3_artist )
file_link . first
file_link . rest . first


> but I am missing something in the format. See example
> below.

What format?  Are you speaking of the syntax of the language, or do
you want to format a string?  I ask because the expression you show us
is not even syntactically valid...


> Note each part of the line after = does have a real value, 
> I just can't format the string.
>
> file-link = Dir.pwd, "#{filename}", "#{mp3-title}", "#{mp3-artist}"

So, assuming you want to build a new string formated with these
elements, separated by commas, you can do that with sprintf:

file_link = sprintf("%s, %s, %s, %s", Dir.pwd, filename, mp3_title, mp3_artist )

If you have several lines to format, you may want to specify column widths:

file_link = sprintf("%-20s, %-20s, %-30s, %s", Dir.pwd, filename, mp3_title, mp3_artist )


Also, Ruby is rather more limited than Lisp, you cannot put a dash
inside an identifier.


-- 
__Pascal Bourguignon__