http://codex.wordpress.org/Customizing_the_Read_More#More_about_.24more
(function(){
var inserted = false;
CKEDITOR.plugins.add( 'excerpt',
{
init: function( editor ) {
editor.addCommand( 'insertExcerpt',
{
exec : function( editor )
{
if(!inserted){
editor.insertHtml( '<!--excerpt-->' );
inserted = true;
}else{
var removed = editor.getData().replace('<!--excerpt-->','', 'gm');
editor.setData(removed);
inserted = false;
}
}
});
editor.ui.addButton( 'Excerpt',
{
label: 'Insert excerpt',
command: 'insertExcerpt',
icon: this.path + 'images/icn_excerpt.png'
});
},
});
function createFakeElement( editor, realElement )
{
return editor.createFakeParserElement( realElement, null, 'comment', true );
}
})();

Re: How to createFakeElement
I figured it out by looking form hiddenfield.
\ckeditor\_source\plugins\forms
Notice you need requires : [ 'image', 'fakeobjects' ] in plugins definition.