You can add your own client scripts by adding an entry into the config. Patch the following:
<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/">
<sitecore>
<clientscripts>
<htmleditor>
<script src="/sitecore modules/shell/Controls/Rich Text Editor/Custom RichText Commands.js" language="JavaScript"/>
</htmleditor>
</clientscripts>
</sitecore>
</configuration>
Here is a detailed blog post about it.
There is no setting that I know of so that all profiles display the button. You have to add it to the profiles you wish the button to show on. Either:
- add it to the default profile
- make a copy of an existing profile, rename it to
Rich Text Default
and add/remove whatever you want - Change
<setting name="HtmlEditor.DefaultProfile" value="/sitecore/system/Settings/Html Editor Profiles/Rich Text Default"/>
in web.config to your custom profile
If you set the DataSource of a rich text field to a different one then obviously the default settings will not take effect.