[Makes FileMaker Work]
Welcome to the new home of fmWorkMate documentation.
I hope the documentation will flourish here!
Please give feedback & ideas in discussions or on the issues tab!
fmWorkmate is a collection of free Tools from MrWatson for FileMaker database developers.
It's a toolbox full of goodies that you can use in your daily work as a FileMaker developer to make your daily job easier, more productive and more colorful.
- Setting up
- If you haven't got fmWorkMate installed and started yet, first see Getting started with fmWorkMate
- If you have multiple versions of FileMaker see Setting up the target FileMaker app
- fmWorkMate Interface
- Navigating in fmWorkMate
Here it is (as of 2021-10-29):
When fmWorkMate is opened you are presented with a list of tools
- Click a tool to launch it
- Grey keys to the right of buttons inidicate the shortcut key for that button
Note: This documentation uses the symbol to indicate the operating system specific command invocation key: Command key on Mac and Ctrl key on Windows
- The grey arrows indicate a tool will be opened in the target FileMaker (rather than the current FileMaker - because some tools need to interact with FileMaker directly.)
Other features on the page, from top to bottom:
- - Current Target FileMaker indicator → If you have set up multiple FileMaker targets, you can click here to target a different FileMaker instance.
- → shows latest news from MrWatson
- → Tool Help & Settings
- - Version number → About, Tool Versions and Credits pages
- → fmWorkMate Settings
Here is a quick overview of the tools (as of 2021-09-28)
The Developer Tools form the (original) core of the fmWorkMate toolbox:
- fmCheckMate is the central tool of the fmWorkMate toolbox.
- It converts the clipboard between FileMaker code and its XML representation.
- It thus enables the transfer of code to/from remote machines with copy & paste.
- You can edit your code in the inbuilt xml editor, for example to rename script variables.
- With the
fmCheckMate-XSLT Library
you can Analyse, Change and Transform your FileMaker code - in ways that will make your jaw drop!
fmCheckMate-XSLT Library
- The
fmCheckMate-XSLT Library
is a separate repository providing a set of functions (XSL Transformations and shell scripts to be precise) whichfmCheckMate
uses to Analyse, Change and Transform your FileMaker code. - This is the most powerful aspect of the toolbox, and not to be missed!
fmLogAnalyser
- fmLogAnalyser is a viewer for the FileMaker import.log (and other log) files.
- It turns pasted/imported broken code into a to-do list!
- With its Bug-Off! Alarm fmLogAnalyser helps you catch every single possible bug before they infiltrate your database code - by alerting you immediately!
fmDBAnalyser
- fmDBAnalyser is maybe the oldest tool in the toolbox.
- It reports information about the tables, fields, layouts, scripts, value lists in your database.
fmSyntaxColorizer
- fmSyntaxColorizer is the best way to make your script and calculation code colorful and meaningful.
- It is an external tool, so see the fmSyntaxColorizer homepage for more.
The Text Tools provide basic text manipulation functionality
fmTextConverter
- fmTextConverter is a tool to perform multiple substitutions
- It is indeed a (very souped-up!) wrapper for the Substitute function
- It makes it possible to convert code betweeen contexts (eg: SalesOrder → Invoice / SO → INV )
fmTextDiff
- fmTextDiff is a text diffing tool
- It is a wrapper around an online diffing service…
- …at least, until someone has time to implement a webviewer based diffing algorithm! ;-)
- …So be aware, if you use it, that your code is being passed to a third party!
- It is a wrapper around an online diffing service…
- With fmTextDiff (aided by
fmCheckMate
) you can extremely quickly discover what the differences are between two scripts, tables, texts, ... whatever!
fmTextMultiplier
- fmTextMultiplier is a neat way of 'multiplying up your code'
- It too is a (also souped-up!) wrapper for the Substitute function, but it generates a result for each substitution rather than applying each substitution sequentially.
- It is best illustrated by example:
- If you 'multiply' "A→B¶"
- by "B¶C¶D¶"
- you get "A→B¶A→C¶A→D¶"
- While this may not seem particularly useful at first sight, if you have some FileMaker code with a specific field, and a list of fields that should be treated the same, ... well, just imagine!
fmTextSeries
- fmTextSeries is a tool to produce a sequential list of values
- It is indeed just a wrapper for the SerialIncrement function
- It is best illustrated with an example:
- If you generate the series "Day 08 Text..10"
- you get ""Day 08 Text¶Day 09 Text¶Day 10 Text"
- Again this may not seem so useful at first, but in combination with fmTextMultiplier you can rapidly generate code which operate on a series of fields or with a series of data.
Together with fmCheckMate
and the fmCheckMate-XSLT Library
the Text Tools form a very powerful FileMaker code manipulation engine!
The Clip + Key Tools help you deal with your clipboard and keyboard.
fmPasteMate
- fmPasteMate is a utility to transfer multiple objects efficiently using copy+paste
- It queues and rotates its contents so you can quickly and easily paste multiple items sequentially into your FileMaker database
fmClipboardViewer
- fmClipboardViewer shows you the contents of the clipboard
- and the names of the clipboard flavours
fmKeyPress
- fmKeyPress shows you the key and code of the key you pressed
- Great help when writing OnKeypress trigger scripts!
fmModifierKeys
- fmModifierKeys shows which modifier keys are currently pressed
- Useful when keys get 'stuck' down on remote machines
Some really important utilities:
fmAutoMate
- fmAutoMate integrates functionality directly into your script workspace
- It can also be considered a core tool of the fmWorkMate toolbox.
- It is, however, developed in a [separate repository][fmAutoMate repo]
fmLaunchPad
- is a cheeky little rocket to help start the file you want when you want
myMateJSON
- myMateJSON helps you get your JSON straight!
- Explore JSON & write code automatically
- It is an external tool, see the myMateJSON repository for more
And some less important utilities:
fmSimpleCalculator
- is a really simple little calculator
- with some very useful
fmPluginMate
- fmPluginMate helps you manage your plugins
- Get a list of what is installed
- Install plugins on the fly with drag + drop
fmKillDefaultFields
- fmKillDefaultFields gets rid of those annoying standard default fields in a click
- Or locate the file if you wish to change it.
fmLatencyMeter
- fmLatencyMeter is a little clock to help show how good/bad the latency is to your remote machine
- Includes an example of how to use fmTextMultiplier to create objects at specific positions on a layout.
On the fmWorkMate setup page
- Autofocus FileMaker
- Plugins & MBS BYOL
- Simple Caclulator prefs
When you convert FileMaker code to and, moreover, back to FileMaker objects, fmWorkmate can focus the FileMaker app for you automatically.
You must
- select the option "AutoFocus FileMaker" in the fmWorkMate settings
- tell fmWorkMate which FileMaker app it should target
Note:
- You can choose multiple instances of FileMaker, and then swap between them from the 'current target Filemaker' indicator on the main page.
- The current target FileMaker app is also the app in which fmSyntaxColorizer, fmAutoMate and fmPluginMate will be opened.
Check out the fmWorkMate homepage
Watch stuff on the fmWorkMate YouTube channel
[More is coming]