For example, an object with a type of java has this super type hierarchy:
To define the values for the edit, view, compare, and merge tools for java, edit the ccm.properties file. The following examples show how to define the values for the GUI and CLI.
windows.tool.compare.java = %ccm_compare
windows.tool.merge.java = %ccm_merge
windows.tool.edit.java = "%ccm_home\\bin\\util\\ccm_exec" "%file1"
windows.tool.view.java = "%ccm_home\\bin\\util\\ccm_exec" "%file1"
unix.tool.compare.java = %ccm_compare
unix.tool.merge.java = %ccm_merge
unix.tool.edit.java = xterm -geometry 80x40 -e vi %file1
unix.tool.view.java = xterm -geometry 80x40 -e vi %file1
ccm.cli.tools.compare.java.windows="%ccm_home\\\\bin\\\\util\\\\cc_dff.bat" "%ccm_home" %{encoding[null='CP1252']} %outfile %file1 %file2
ccm.cli.tools.compare.java.windows.checkstatus=false
ccm.cli.tools.merge.java.windows="%ccm_home\\\\bin\\\\util\\\\cc_merge.bat" "%ccm_home" %{encoding[null='CP1252']} %outfile %file1 %ancestor %file2
ccm.cli.tools.merge.java.windows.checkstatus=true
ccm.cli.tools.merge.java.windows.conflict.status=
ccm.cli.tools.edit.java.windows=notepad %file
ccm.cli.tools.edit.java.windows.checkstatus=true
ccm.cli.tools.view.java.windows=notepad %file
ccm.cli.tools.view.java.windows.checkstatus=true
ccm.cli.tools.compare.java.unix=%ccm_home/bin/util/cc_dff %ccm_home %{encoding[null='CP1252']} %outfile %file1 %file2
ccm.cli.tools.compare.java.unix.checkstatus=false
ccm.cli.tools.merge.java.unix=%ccm_home/bin/util/cc_merge %ccm_home %{encoding[null='CP1252']} %outfile %file1 %ancestor %file2
ccm.cli.tools.merge.java.unix.checkstatus=true
ccm.cli.tools.merge.java.unix.conflict.status=
ccm.cli.tools.edit.java.unix=vi %file
ccm.cli.tools.edit.java.unix.checkstatus=true
ccm.cli.tools.view.java.unix=view %file
ccm.cli.tools.view.java.unix.checkstatus=true
ccm.cli.tools.merge.java.conflict.content=^[^<<<<<<<]*<<<<<<<[^=======]*=======[^>>>>>>>]*>>>>>>>.*$
ccm.cli.tools.merge.java.conflict.message.format=Merge Source warning. (overlaps during merge).\
\n\tMerge conflicts have been noted in '%displayname'.\
\n\tSearch for '<<<<<<<' to find conflicts.
After the edit, view, compare, and merge values are set in ccm.properties, the tools work for objects with a type of ascii, project, dir, and symlink, and subtypes of all of these types. For other types, the operations fail with the message Tool not configured for the type type and a recommendation about which preference key to configure.