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.


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.