Bigger Variable Input Text Box Size

Is there a way to increase the size of the "User Input" variable input box size?
I really need more lines on those text boxes...

1 Like

No, the Prompt For User Input action is limited to single lines.

You can use the Custom HTML Prompt action in 7.0, but that is a lot more work to set up. If you do, please post it as an example macro as there are not very many examples of the action yet.

1 Like

You could use AppleScript and do something like this:

set lf to linefeed
set defaultText to "Enter your info with fields separated by a blank line:" & lf & lf & ¬
  "AdClient in 1 or more lines" & lf & lf & "AdTitle in 1" & lf & ¬
  "or more lines" & lf & lf & "AdText in 1 or more lines." & lf & lf & ¬
  "AdLink in 1 or more lines."
tell application (path to frontmost application as text)
  set _text to text returned of (display dialog "You Need More Lines?" default answer defaultText & lf & lf & lf & lf & lf & lf & lf & lf & lf & lf & lf)
end tell

You have a multi-line freeform entry field.

Enter your text and separate the pieces with a blank line.

From there you can use Keyboard Maestro's regular expressions to parse the text.

There are other options, but they get complicated.

-Chris

Thank you. I’ll explore yours and Peter’s suggestion this weekend.

Javascript footnote : - ) ( something to look forward to in Yosemite )

function nreps(n, s) {
	return Array(n + 1).join(s);
}

nreps(11, '\n');

( Although if you are duplicating larger numbers of larger strings, there is, of course, an ancient method described in the Rhind Papyrus:

// faster (a kind of binary acceleration)

// Walking through the bit positions of n, from right to left,
// we "double" s for each new bit position 
// (appending the current value of s to itself).

// Whenever the value of the bit position is 1 rather than 0, 
// we append the current value of the reduplicating s 
// to the `out` string.

function nreps2(n, s) {
  var out = '';             // start with empty string

  return (n < 1) ? out :    // returning immediately if n < 1
    (function () {
      while (n > 1) {       // while bit positions remain in n,
        if (n & 1)          // if the current bit position holds 1,
          out += s;         // then append the current s value to out.
        s += s;             // 'Double' s for the next bit position
        n >>= 1;            // and move on to the next bit.
      }
    })() || out + s;        // Last non-zero bit. Append full-grown s.
}