Software Venture Consulting

FileMaker Pro downloads & Resources
FileMaker Custom Functions
FileMaker Web Viewer Examples
FileMaker Pro & Lasso Consulting
FileMaker Books
FileMaker Articles
FileMaker Error Reference

Free Web Tools
Free FileMaker Tools

Personal Pages

Shopping Cart
Shopping Cart


Free Newsletter


Privacy Policy

FileMaker is a registered trademark of FileMaker, Inc. in the U.S. and other countries.


 FileMaker Pro Custom Functions

List  |  Show Random  |  Upload  |  Add This to Your Site

LineWrap ( text ; margin )

Rate this function:  

  Average rating: 4.0  (52 votes)
  Discuss this Custom Function

Martin D. Brunner, Zurich Financial Services

Adds or repositions line breaks in supplied text so it wraps to specified margins.

Sample Input:
LineWrap ( "Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat." ; 25 )
Sample Output:
Lorem ipsum dolor sit
amet, consectetuer
adipiscing elit, sed
diam nonummy nibh
euismod tincidunt ut
laoreet dolore magna
aliquam erat volutpat.

 Then copy & paste into FileMaker Advanced's Edit Custom Function window.


This function uses a recursive routine to re-format a supplied block of text so that it falls within a specified margin width.

It ensures that there is a line break (¶) before the specified number of characters is reached on each line but it keeps words together.

If the input text contains no carriage returns, they will be inserted at the appropriate positions so that the text wraps within the defined text block size.

Any number of line breaks (¶) in the original text are preserved for the output.

The results may vary depending on the font used: proportional-spaced fonts (without fixed character width) may exhibit a more variable result than mono-spaced fonts.

I use this function to break text into a specified length of lines in order to afterwards create a tree column layout with the CF "ColumWrap" that can also be found on

The idea and the basic setup comes from the CF "Abscind" by Ray Cologon, NightWing Enterprises.
I made it easier and modifyed it, so it calculates correctly and also supports multiple line breaks.

Martin D. Brunner -

Note: these functions are not guaranteed or supported by Please contact the individual developer with any questions or problems.

This is my Custom Function and I want to edit it


Unfortunatlety, if there is a word without spaces longer than "margin", the function does not wraps (breaks) this word (OK, it could preserve longer words), but it even doesn't wrap anything AFTER this word ...

LineWrap ("1234 1234 1234 1234 12345678901234567890 1234 1234 1234 1234"; 15)

1234 1234 1234
12345678901234567890 1234 1234 1234 1234

Patrick Horn, Saarbrücken, Germany
May 08, 2012 11:44am

Brilliant function. Solved a problem I had with getting a Preview layout to show a block of text and a price column.

It just needs some hyphenation rules to solve the problem in the previous post and it would be perfect. Better still, it could be built in to FileMaker scripting with this feature.

Anatole Beams, London, UK
October 14, 2014 2:21am

Make a comment about this Custom Function (please try to keep it brief & to the point). Anyone can post:

Your Name:
characters left. If you paste in more than 1500 characters, it will be truncated. Discuss the function - advertisements and other useless posts will be deleted.
Answer 5 + 6 =
Search for Custom Functions:

Custom Functions Widget
Download the Custom Function Dashboard Widget for OS X
Keep all the latest Custom Functions right at your fingertips!

Newest Custom Functions:

1. HexUUIDToNum_cf (_uuid)
  (Sat, Jun 16, 1:55pm)
2. httpResponseCode ( responseHeaders )
  (Tue, Jun 12, 10:40pm)
3. FindDuplicateCharacters ( string )
  (Fri, Jun 08, 5:01pm)
4. FieldRepetitionLast ( field ; maxRepetition )
  (Wed, Jun 06, 6:05pm)
5. CountModifiedRecords ( NameTimestampField ; StartTimestamp ; EndTimestamp )
  (Mon, May 28, 8:23am)
6. JSONArrayLength ( JSONArrayStr )
  (Fri, May 25, 7:46am)
7. interpolation (y1; y2; y3; x1; x2; x3; x1y1; x2y1; x1y2; x2y2; rnd)
  (Sat, May 19, 3:55am)
8. @JSONFormatElements ( json )
  (Tue, May 15, 3:31am)

RSS Feed of Custom Functions