I want to keep most of the defaults from (for example) new MenuCommandGroup('block')
… On setup this works to remove one item… is there a more canonical way?
export function trimDefaultMenus (pm) {
delete pm.commands.selectParentNode.spec.menu
}
I want to keep most of the defaults from (for example) new MenuCommandGroup('block')
… On setup this works to remove one item… is there a more canonical way?
export function trimDefaultMenus (pm) {
delete pm.commands.selectParentNode.spec.menu
}
I don’t know if this is best, but the following code helps remove and move commands:
const updateCmd = Object.create(null)
updateCmd["horizontal_rule:insert"] = {menu: {group: "content", rank: 71, display: {type: "label", label: "Horizontal Rule"}}}
updateCmd["selectParentNode"] = null
updateCmd["code:toggle"] = {menu: {group: "textblock", rank: 99, display: {type: "label", label: "Code"}}}
let pm = window.pm = new ProseMirror({
place: document.querySelector("#editor"),
menuBar: {
float: true,
content: [inlineGroup, [blockGroup,textblockMenu],widgetInsertMenu,historyGroup]
},
schema: widgetSchema,
commands: CommandSet.default.update(updateCmd),
autoInput: true,
doc: document.querySelector("#content"),
docFormat: "dom"
})
The canonical way is to use the commands
option, something like this:
commands: CommandSet.default.update({
selectParentNode: {menu: null}
})