Index: js/Commands.js
===================================================================
--- js/Commands.js	(revision 7989)
+++ js/Commands.js	(working copy)
@@ -90,6 +90,24 @@
 		});
 };
 
+config.commands.more.handler = function(event,src,title)
+{
+	var e = this.nextSibling;
+	e.style.display = "inline";
+	this.style.display = 'none';
+	return false;
+};
+
+config.commands.less.handler = function(event,src,title)
+{
+	var e = resolveTarget(event).parentNode;
+	var m = e.previousSibling;
+	e.style.display = "none";
+	m.style.display = "inline";
+	return false;
+};
+
+
 config.commands.syncing.handlePopup = function(popup,title)
 {
 	var tiddler = store.fetchTiddler(title);
Index: js/Config.js
===================================================================
--- js/Config.js	(revision 7989)
+++ js/Config.js	(working copy)
@@ -144,7 +144,9 @@
 	references: {type: "popup"},
 	jump: {type: "popup"},
 	syncing: {type: "popup"},
-	fields: {type: "popup"}
+	fields: {type: "popup"},
+	more: {},
+	less: {}
 };
 
 // Browser detection... In a very few places, there's nothing else for it but to know what browser we're using.
@@ -234,6 +236,6 @@
 	TabMoreShadowed: '<<list shadowed>>',
 	AdvancedOptions: '<<options>>',
 	PluginManager: '<<plugins>>',
-	ToolbarCommands: '|~ViewToolbar|closeTiddler closeOthers +editTiddler > fields syncing permalink references jump|\n|~EditToolbar|+saveTiddler -cancelTiddler deleteTiddler|'
+	ToolbarCommands: '|~ViewToolbar|closeTiddler closeOthers +editTiddler > fields syncing permalink references jump less|\n|~EditToolbar|+saveTiddler -cancelTiddler deleteTiddler|'
 };
 
Index: js/Lingo.js
===================================================================
--- js/Lingo.js	(revision 7989)
+++ js/Lingo.js	(working copy)
@@ -402,6 +402,14 @@
 	text: "jump",
 	tooltip: "Jump to another open tiddler"});
 
+merge(config.commands.more,{
+	text: "more",
+	tooltip: "Show additional commands"});
+
+merge(config.commands.less,{
+	text: "less",
+	tooltip: "Hide additional commands"});
+		
 merge(config.commands.syncing,{
 	text: "syncing",
 	tooltip: "Control synchronisation of this tiddler with a server or external file",
Index: js/Toolbar.js
===================================================================
--- js/Toolbar.js	(revision 7989)
+++ js/Toolbar.js	(working copy)
@@ -98,21 +98,13 @@
 	}
 };
 
-config.macros.toolbar.onClickMore = function(ev)
-{
-	var e = this.nextSibling;
-	e.style.display = "inline";
-	removeNode(this);
-	return false;
-};
-
 config.macros.toolbar.handler = function(place,macroName,params,wikifier,paramString,tiddler)
 {
 	for(var t=0; t<params.length; t++) {
 		var c = params[t];
 		switch(c) {
 		case '>':
-			var btn = createTiddlyButton(place,this.moreLabel,this.morePrompt,config.macros.toolbar.onClickMore);
+			var btn = createTiddlyButton(place,this.moreLabel,this.morePrompt,config.commands.more.handler);
 			addClass(btn,"moreCommand");
 			var e = createTiddlyElement(place,"span",null,"moreCommand");
 			e.style.display = "none";

