Default registration of SWI-Prolog, which is invoked as part of the
initialisation process on Windows systems. As the source also includes
the above predicates, it is given as an example:
shell_register_prolog(Ext) :-
current_prolog_flag(argv, [Me|_]),
atomic_list_concat(['"', Me, '" "%1"'], OpenCommand),
shell_register_file_type(
Ext, 'prolog.type', 'Prolog Source', OpenCommand),
shell_register_dde(
'prolog.type', consult,
prolog, control, 'consult(''%1'')', Me),
shell_register_dde(
'prolog.type', edit,
prolog, control, 'edit(''%1'')', Me).