Using "Delete" and "Return" in Finder to Go Back and Forward

For a while, I have been trying to use the "Delete" button to go 1 folder back in Finder and "Return" button to open the folder/file. This has been a feature of Windows File Explorer forever and wanted to replicate this behavior in MacOS.

Whenever I tried implementing this, it always resulted in breaking something or the other like when trying to rename a file or when using spotlight.

Finally I figured out and wanted to post this so others may find it useful.

  1. Create a Conditional Activation Group

  1. Give it whatever name you like. I named it "Finder" for easy reference

  2. Add the following rules:

    • Change to "ALL" of the following are true
    • App Name contains "Finder"
    • Focused Element Role is "AXOutline"
    • Save

  1. Add the following 2 Triggers:


Test it out. With this method, the triggers won't work on desktop or when renaming or anywhere else. Only when you are in a Finder window and navigating.

good job! thanks. I had encountered the same issues so this awesome. Implementation seems to be working great with no problems when renaming or using spotlight/Alfred etc

thanks

actually i did run into some issues-IIRC when renaming files the delete would not delete but instead moved back/up in the folder structure. This was one of the couple issues that I had encountered before. Was able to fix it and get iit working by adding a couple new triggers for the delete key and adding some advanced conditions to them using the condition element_focused contains (and the one not containing) AXtextfield. Added the 2 desired actions, the default delete and then cmd up or cmd [ depending yourr preference of back or folder up

1 Like
[
  {
    "BTTLastUpdatedAt" : 1686803905.166939,
    "BTTTriggerConditionsReadOnly" : "NOT (focused_element_details CONTAINS \"AXTextField\")",
    "BTTTriggerConditions" : "YnBsaXN0MDDUAQIDBAUGBwpYJHZlcnNpb25ZJGFyY2hpdmVyVCR0b3BYJG9iamVjdHMSAAGGoF8QD05TS2V5ZWRBcmNoaXZlctEICVRyb290gAGvEBgLDBMYHCAoMjM2PUFGR0pOUlZXWmBkaGpVJG51bGzTDQ4PEBESXxAXTlNDb21wb3VuZFByZWRpY2F0ZVR5cGVfEA9OU1N1YnByZWRpY2F0ZXNWJGNsYXNzEACAAoAX0hQPFRdaTlMub2JqZWN0c6EWgAOAFtMNDg8ZGhIQAoAEgBfSFA8dF6EegAWAFtQPISIjJCUmJ18QEU5TUmlnaHRFeHByZXNzaW9uXxAQTlNMZWZ0RXhwcmVzc2lvbl8QE05TUHJlZGljYXRlT3BlcmF0b3KAFYAQgAaAE9UpKissDy0uLzAxWU5TT3BlcmFuZF5OU1NlbGVjdG9yTmFtZV8QEE5TRXhwcmVzc2lvblR5cGVbTlNBcmd1bWVudHOACIAHEAOACoAPXHZhbHVlRm9yS2V5OtIrDzQ1EAGACdI3ODk6WiRjbGFzc25hbWVYJGNsYXNzZXNfEBBOU1NlbGZFeHByZXNzaW9uozk7PFxOU0V4cHJlc3Npb25YTlNPYmplY3TSFA8+QKE_gAuADtMPK0JDREVZTlNLZXlQYXRogA0QCoAMXxAXZm9jdXNlZF9lbGVtZW50X2RldGFpbHPSNzhISV8QHE5TS2V5UGF0aFNwZWNpZmllckV4cHJlc3Npb26jSDs80jc4S0xeTlNNdXRhYmxlQXJyYXmjS008V05TQXJyYXnSNzhPUF8QE05TS2V5UGF0aEV4cHJlc3Npb26kT1E7PF8QFE5TRnVuY3Rpb25FeHByZXNzaW9u01MrD1QQVV8QD05TQ29uc3RhbnRWYWx1ZYARgBJbQVhUZXh0RmllbGTSNzhYWV8QGU5TQ29uc3RhbnRWYWx1ZUV4cHJlc3Npb26jWDs81A9bXF1eEBBfWk5TTW9kaWZpZXJXTlNGbGFnc15OU09wZXJhdG9yVHlwZYAUEGPSNzhhYl8QFU5TSW5QcmVkaWNhdGVPcGVyYXRvcqNhYzxfEBNOU1ByZWRpY2F0ZU9wZXJhdG9y0jc4ZWZfEBVOU0NvbXBhcmlzb25QcmVkaWNhdGWjZWc8W05TUHJlZGljYXRl0jc4TWmiTTzSNzhrbF8QE05TQ29tcG91bmRQcmVkaWNhdGWja2c8AAgAEQAaACQAKQAyADcASQBMAFEAUwBuAHQAewCVAKcArgCwALIAtAC5AMQAxgDIAMoA0QDTANUA1wDcAN4A4ADiAOsA_wESASgBKgEsAS4BMAE7AUUBVAFnAXMBdQF3AXkBewF9AYoBjwGRAZMBmAGjAawBvwHDAdAB2QHeAeAB4gHkAesB9QH3AfkB+wIVAhoCOQI9AkICUQJVAl0CYgJ4An0ClAKbAq0CrwKxAr0CwgLeAuIC6wL2Av4DDQMPAxEDFgMuAzIDSANNA2UDaQN1A3oDfQOCA5gAAAAAAAACAQAAAAAAAABtAAAAAAAAAAAAAAAAAAADnA==",
    "BTTTriggerType" : 0,
    "BTTTriggerClass" : "BTTTriggerTypeKeyboardShortcut",
    "BTTLayoutIndependentActionChar" : "UP",
    "BTTAutoAdaptActionToKeyboardLayout" : true,
    "BTTShortcutToSend" : "55,126",
    "BTTAdditionalConfiguration" : "0",
    "BTTKeyboardShortcutKeyboardType" : 0,
    "BTTUUID" : "01357C95-205F-4992-8FF2-CFF3FC4BCF10",
    "BTTTriggerOnDown" : 1,
    "BTTLayoutIndependentChar" : "DELETE",
    "BTTEnabled" : 1,
    "BTTEnabled2" : 1,
    "BTTShortcutKeyCode" : 51,
    "BTTShortcutModifierKeys" : 0,
    "BTTOrder" : 1,
    "BTTAutoAdaptToKeyboardLayout" : 0
  },
  {
    "BTTLastUpdatedAt" : 1686803905.146318,
    "BTTTriggerConditionsReadOnly" : "focused_element_details CONTAINS \"AXTextField\"",
    "BTTTriggerConditions" : "YnBsaXN0MDDUAQIDBAUGBwpYJHZlcnNpb25ZJGFyY2hpdmVyVCR0b3BYJG9iamVjdHMSAAGGoF8QD05TS2V5ZWRBcmNoaXZlctEICVRyb290gAGvEBYLDBMYICorLTQ4PT5BRUlOT1JYXGBiVSRudWxs0w0ODxAREl8QF05TQ29tcG91bmRQcmVkaWNhdGVUeXBlXxAPTlNTdWJwcmVkaWNhdGVzViRjbGFzcxABgAKAFdIUDxUXWk5TLm9iamVjdHOhFoADgBTUDxkaGxwdHh9fEBFOU1JpZ2h0RXhwcmVzc2lvbl8QEE5TTGVmdEV4cHJlc3Npb25fEBNOU1ByZWRpY2F0ZU9wZXJhdG9ygBOADoAEgBHVISIjJA8lJicoKVlOU09wZXJhbmReTlNTZWxlY3Rvck5hbWVfEBBOU0V4cHJlc3Npb25UeXBlW05TQXJndW1lbnRzgAaABRADgAiADVx2YWx1ZUZvcktleTrSIw8QLIAH0i4vMDFaJGNsYXNzbmFtZVgkY2xhc3Nlc18QEE5TU2VsZkV4cHJlc3Npb26jMDIzXE5TRXhwcmVzc2lvblhOU09iamVjdNIUDzU3oTaACYAM0w8jOTo7PFlOU0tleVBhdGiACxAKgApfEBdmb2N1c2VkX2VsZW1lbnRfZGV0YWlsc9IuLz9AXxAcTlNLZXlQYXRoU3BlY2lmaWVyRXhwcmVzc2lvbqM_MjPSLi9CQ15OU011dGFibGVBcnJheaNCRDNXTlNBcnJhedIuL0ZHXxATTlNLZXlQYXRoRXhwcmVzc2lvbqRGSDIzXxAUTlNGdW5jdGlvbkV4cHJlc3Npb27TSiMPS0xNXxAPTlNDb25zdGFudFZhbHVlgA8QAIAQW0FYVGV4dEZpZWxk0i4vUFFfEBlOU0NvbnN0YW50VmFsdWVFeHByZXNzaW9uo1AyM9QPU1RVVkxMV1pOU01vZGlmaWVyV05TRmxhZ3NeTlNPcGVyYXRvclR5cGWAEhBj0i4vWVpfEBVOU0luUHJlZGljYXRlT3BlcmF0b3KjWVszXxATTlNQcmVkaWNhdGVPcGVyYXRvctIuL11eXxAVTlNDb21wYXJpc29uUHJlZGljYXRlo11fM1tOU1ByZWRpY2F0ZdIuL0RhokQz0i4vY2RfEBNOU0NvbXBvdW5kUHJlZGljYXRlo2NfMwAIABEAGgAkACkAMgA3AEkATABRAFMAbAByAHkAkwClAKwArgCwALIAtwDCAMQAxgDIANEA5QD4AQ4BEAESARQBFgEhASsBOgFNAVkBWwFdAV8BYQFjAXABdQF3AXwBhwGQAaMBpwG0Ab0BwgHEAcYByAHPAdkB2wHdAd8B+QH+Ah0CIQImAjUCOQJBAkYCXAJhAngCfwKRApMClQKXAqMCqALEAsgC0QLcAuQC8wL1AvcC_AMUAxgDLgMzA0sDTwNbA2ADYwNoA34AAAAAAAACAQAAAAAAAABlAAAAAAAAAAAAAAAAAAADgg==",
    "BTTTriggerType" : 0,
    "BTTTriggerClass" : "BTTTriggerTypeKeyboardShortcut",
    "BTTLayoutIndependentActionChar" : "DELETE",
    "BTTAutoAdaptActionToKeyboardLayout" : true,
    "BTTShortcutToSend" : "51",
    "BTTAdditionalConfiguration" : "0",
    "BTTKeyboardShortcutScope" : 0,
    "BTTKeyboardShortcutKeyboardType" : 0,
    "BTTUUID" : "9F525CA0-6835-4F4B-BD16-84245F6C4B16",
    "BTTTriggerOnDown" : 1,
    "BTTLayoutIndependentChar" : "DELETE",
    "BTTEnabled" : 1,
    "BTTEnabled2" : 1,
    "BTTShortcutKeyCode" : 51,
    "BTTShortcutModifierKeys" : 0,
    "BTTOrder" : 2,
    "BTTAutoAdaptToKeyboardLayout" : 0,
    "BTTTriggerConfig" : {
      "BTTKeyboardPreventRecursiveTriggers" : 1
    }
  }
]

That's strange. I haven't run in to any issues yet but I will keep this in mind if I do. Thanks!

Can you provide / update this as an exported preset? I am unable to "paste" it back into BTT, and apparently using presets is the proper way of doing this -- more info here: Presets · GitBook

Great Job! Works like a charm for me!

Thanks! I didn't know about conditional activation groups
I mapped these to key sequences (double tapping Enter anf Shift respectively), and it works great!

This preset isn't importable. Can you check it please and share it again?

@Andreas_Hegenberg Just bought a BTT license for Black Friday, thank you!

Is it possible to achieve this without a conditional group and just using the Advanced Conditions on the keyboard shortcut? Could you provide an example if you're available?

If I understand correctly, yes. Setup the shortcuts app specific (Finder) and select the name of the field in the Advanced Conditions.

This is what I've been doing but it never seems to work somehow.

It breaks the deletion of text in filenames.

yah i encountered same issue thus the changes i made in order to remedy problem when in textfield ie renaming a file etc it would not delete letters/function properly until i made my changes.

tried but it interfere with spotlight and raycast

yah i recall coming across that issue as well....let me see. what i updated to fix...i might have used karbiner elements in addition to BTT to solve

if you get it working, share you setup

THANK YOU! 1step closer to a usable macOS . . .