The Relabel Button plug-in for Sketch.app prompts for a button's new label then applies the text, resizes the button background and repositions any other interior elements while maintaining the existing padding.
- Select any group or symbol that contains a text layer and one or more other layers (dividers, icons, drop-arrows, etc)
- Press Cmd+J and enter the new text for the button (or Cmd+Ctrl+J for right aligned resize)
That's it! The text and other objects will be updated maintaining the button's original padding and relative layout.
- nested groups not supported
- for symbols, elements SHOULD NOT be placed within a group
- for symbols, child elements should have Resizing set to Pin To Corner so they do not get shrunk/stretched
- see the Relabel Button Guidelines Sketch file for example buttons
- Choose "Reveal Plugins Folder..." from Sketch's Plugins menu.
- Open the file "Relabel Button.sketchplugin" in a text editor.
- Edit the shortcut specifications in
manifest.json
:
"shortcut" : "command j",
Many thanks to Alexander Kudymov, who wrote the Dynamic Button plugin which I modified.
Also thanks to @fuggfuggfugg, who graciously shared useful code for manipulating symbols.