Really, the values in
instance_settings are not set in stone; they will contain keys for settings specific to that particular field type.
They're arbitrary variables whose values will be used as the default for the field settings form. Exactly the same goes for
When you visit a page to edit settings for a field (e.g.
admin/structure/types/manage/page/fields/body) you'll see 2 fieldsets. One (the top one) is the
instance settings and the other is the
The default values for the instance settings are garnered from
instance_settings on that field type's
hook_field_info() implementation, and the same goes for the field settings.
The only way to find out what each one of the pre-defined field settings names is, is to read through all field-providing modules. I can't imagine that information having been summarised anywhere as it wouldn't really make sense to do so.
For the specific example you gave, the authors of the text field module decided that there was a setting required for that field called
text_processing. So they defined that setting in
hook_field_info(), and it perpetuates its way across the system.
I don't think
default_formatter need any more explanation, the docs cover those completely (nothing more to be said about them really, they both accept a string and what that string should be is obvious if you read the argument descriptions).