And, to make caseS and default of a switch indent to the same column as the switch, I made a small modification to the file "~/Library/Application Support/Sublime Text 2/Packages/D/Indentation Rules.tmPreferences" and, again deleted the "Indentation Rules.tmPreferences.cache" file and restarted ST2. This is what my "Indentation Rules.tmPreferences" file contains now and it seems to work, but take it with a grain of salt, since I don't really know what I'm doing:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd";>
<plist version="1.0">
<dict>
        <key>name</key>
        <string>Indentation Rules</string>
        <key>scope</key>
        <string>source.d</string>
        <key>settings</key>
        <dict>
                <key>decreaseIndentPattern</key>
                
<string>^(.*\*/)?\s*\}([^}{"']*\{)?[;\s]*(//.*|/\*.*\*/\s*)?$|^\s*(public|private|protected):\s*$|^\s*(case\s+[^:]*|default\s*):.*$</string>
                <key>increaseIndentPattern</key>
                
<string>^.*\{[^}"']*$|^\s*(public|private|protected):\s*$|^\s*(case\s+[^:]*|default\s*):.*$</string>

                <key>bracketIndentNextLinePattern</key>
                <string>(?x)
                ^ \s* \b(if|while|else|foreach)\b [^;]* $
                | ^ \s* \b(for)\b .* $
                </string>

        </dict>
        <key>uuid</key>
        <string>7C8F9C84-7DCC-4DD7-B32E-A638F322199F</string>
</dict>
</plist>

Reply via email to