================================================================================
Command Substitudion - simple
================================================================================

echo (printf text)
echo (begin; print 1; end;;;)
echo (;;;)
echo ()

--------------------------------------------------------------------------------

(program
  (command
    name: (word)
    argument: (command_substitution
      (command_substitution_fish
        (command
          name: (word)
          argument: (word)))))
  (command
    name: (word)
    argument: (command_substitution
      (command_substitution_fish
        (begin_statement
          (command
            name: (word)
            argument: (integer))))))
  (command
    name: (word)
    argument: (command_substitution
      (command_substitution_fish)))
  (command
    name: (word)
    argument: (command_substitution
      (command_substitution_fish))))

================================================================================
Command Substitudion - multiline
================================================================================

echo (
    printf text
)
echo (
    printf text
    printf ' ing'
)

--------------------------------------------------------------------------------

(program
  (command
    name: (word)
    argument: (command_substitution
      (command_substitution_fish
        (command
          name: (word)
          argument: (word)))))
  (command
    name: (word)
    argument: (command_substitution
      (command_substitution_fish
        (command
          name: (word)
          argument: (word))
        (command
          name: (word)
          argument: (single_quote_string))))))

================================================================================
Command Substitudion - $ support since 3.4.0 fish version
================================================================================

echo $(print)
echo $$(varname)
echo "$(print)"
echo "$$(varname)"

--------------------------------------------------------------------------------

(program
  (command
    name: (word)
    argument: (command_substitution
      (command_substitution_dollar
        (command
          name: (word)))))
  (command
    name: (word)
    argument: (variable_expansion
      (command_substitution_dollar
        (command
          name: (word)))))
  (command
    name: (word)
    argument: (double_quote_string
      (command_substitution_dollar
        (command
          name: (word)))))
  (command
    name: (word)
    argument: (double_quote_string
      (variable_expansion
        (command_substitution_dollar
          (command
            name: (word)))))))
