Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

The core idea is that a number of documents1 need to be created which are basically the same but have some different paragraphs based on user choices and are "customised"2 with the name.

For example a letter for a tenant would be "customised" with their name and may include a paragraph if the tenant includes a pet. If they didn't have a pet that paragraph could be omitted. Alternatively the paragraph may be different depending on the type of pet.

Is there any software3 you can recommend to generate these documents?

1. The document format is not a major concern provided it is in a commonly used format, for example Word (.doc or .docx), Text (.txt), PDF (.pdf) etc...

2. It is in quotes, since it is not really customisation more replacing a tag (data slug) with a value.

3. As pointed out in some answers below, there are plenty of scripting language options however I am looking for a no code, or a low code option for this and so a tool (free or commercial) would be preferred.

share|improve this question

closed as off topic by Ƭᴇcʜιᴇ007, Hennes, ChrisF, BBlake, 8088 Nov 21 '12 at 16:17

Questions on Super User are expected to relate to computer software or computer hardware within the scope defined by the community. Consider editing the question or leaving comments for improvement if you believe the question can be reworded to fit within the scope. Read more about reopening questions here.If this question can be reworded to fit the rules in the help center, please edit the question.

Do you have access to Microsoft Word? If you do, you can create this using Visual Basic for Applications (VBA, related to macros).

You could create a VBA form that accepts user input for the tenant details, then produces the document using that input & boilerplate text.

Other than that, I think that I would create a script in a text-friendly language such as Perl, that read the contents of a .csv (or similar) file, and produced the documents based on the parameters passed to the script for whatever variables you choose to differentiate - ie no-pet/pet, if pet->what type, etc.

share|improve this answer
Nice idea, but I specifically am aiming at a no (or very little) code solution which is why I hoping for a tool that already exists. – Robert MacLean Feb 3 '10 at 8:54

You might find that writing VBA macros or other programming languages is not your scene.

I am the developer of a document assembly system called XpressDox, and with this you can mark up a Word template with the fixed text that you want, and then indicate where the variable text will go. You can use conditions as your question states - i.e. include or exclude paragraphs or phrases depending on the choices made by the user.

One of the nice things is that XpressDox creates a data capture "interview" automatically, so all you really need to do is define the assembly logic in the template. Then when a user "runs" the template, they get a form into which to fill the variable information. And then that information is merged into the relevant places in the template.

share|improve this answer

i have no first hand experience with it but from your (updated) question this seems like a good fit:

share|improve this answer

well, thats a classical task for some kind of 'template engine'. depending on the format of the final documents you could use 'xls-fo' and hold the 'content' in xml files and transform then transform then.

though i prefer my .fo stuff with 'vim' (like a real man :)), maybe something like 'FO Designer' or 'XSLfast' or 'Serna XML Editor' might be of interest for you.

the main idea is to have your content in one xml-file and some kind of rules of how the content should look in another file (stylesheet, .xsl). you can then transform your content with the help of the stylesheet into your final document.

share|improve this answer
I am happy with almost any common format - PDF, word, text even. Once in a common format I can convert if needed. Will take your advice and put that in the question though, thanks. – Robert MacLean Feb 3 '10 at 8:56

The mail merge function in most word processors would do filling in the names and such of the recipiant. I'm not too sure, but i believe conditional mail merge (that's for OOo - but ms office should be able to do the same) for your word processor SHOULD do the second bit .

The exact process will depend on your office suite, but you should be able to do the necessary with a word processor and a spreadsheet, and nearly no scripting

share|improve this answer

Not the answer you're looking for? Browse other questions tagged .