15
$\begingroup$

I read in the blender 2.6 wiki that there is no shortcut for sculpt mode. I would like to make Ctrl+Alt+Tab the shortcut to switch to sculpt mode, but based on the instructions for making new shortcuts I read here and here, it doesn't seem to work for me (because I'm doing it wrong).

How can I add this new shortcut?

$\endgroup$

3 Answers 3

14
$\begingroup$

There is a quite easy way to do it via the user preferences. You have to add the toggle in the input tab, 3d view, Object Non-modal section. Practically it's set up the same way the switches to weight paint and pose mode that are already there are.The settings in user prefs

$\endgroup$
1
  • $\begingroup$ +1 for using User Preferences... But who would have thought to head for "Object Non-Modal?!" Using this you can also set up a shortcut for (even more fundamentally!) Object Mode. This stuff is important to anti-clutter obsessives like me, people with small screens, people who just want that 1on1, elemental relationship with their marvellous creations. For these people the modal shortcut problem actually begins one step earlier because the header (which is easy enough to get rid of by dragging its boundary) is too awkward to get back (using that tiny "+" icon)... And its the header which give $\endgroup$
    – user2008
    Commented Dec 30, 2013 at 11:51
14
$\begingroup$

Starting with Blender 2.68 (earlier versions have a bug):

  • In the 3D view header click Object Mode to open the menu
  • Right click on Sculpt Mode and choose Add Shortcut.
$\endgroup$
0
4
$\begingroup$

There is probably a better or more efficient way of doing this but this is one way to go about it..

The command for entering sculpt mode is bpy.ops.sculpt.sculptmode_toggle() . You can put this into a small script and register the desired shortcut…

import bpy

class EnterSculptMode(bpy.types.Operator):
    bl_idname = "object.enter_sculpt_mode"
    bl_label = "Toggle Sculpt Mode"

    def execute(self, context):
        bpy.ops.sculpt.sculptmode_toggle()
        return {'FINISHED'}

def menu_func(self, context):
    self.layout.operator(EnterSculptMode.bl_idname)

addon_kmaps = []

def register():
    bpy.utils.register_class(EnterSculptMode)

    wm = bpy.context.window_manager
    km = wm.keyconfigs.addon.keymaps.new(name='Object Mode', space_type='EMPTY')
    # change the shortcut here..
    kmi = km.keymap_items.new(EnterSculptMode.bl_idname, 'TAB', 'PRESS', ctrl=True, shift=True)
    addon_kmaps.append(km)

def unregister():
    bpy.utils.unregister_class(EnterSculptMode)
    bpy.types.VIEW3D_MT_object.remove(menu_func)

    wm = bpy.context.window_manager
    for km in addon_kmaps:
        wm.keyconfigs.addon.kmaps.remove(km)
    del addon_kmaps[:]

if __name__ == "__main__":
    register()

After running this, you should get a new Space menu item with keyboard shortcuts attached..

enter image description here

…you should now be able to enter sculpt mode using CtrlShift+Tab. It is easy enough to modify the shortcuts (as I think this conflicts with another), see the commented line in the script.

$\endgroup$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .