nikitabobko / AeroSpace

AeroSpace is an i3-like tiling window manager for macOS
https://nikitabobko.github.io/AeroSpace/guide
MIT License
3.4k stars 51 forks source link

Feature Request: scratchpad #272

Open ericd23 opened 3 weeks ago

ericd23 commented 3 weeks ago

i3 and sway have the concept of scratchpad that you can put some windows there and show/hide the windows in it on any workspace. For example, I could put my note taking or todo apps there. Whenever some random thought comes in, I bring out the scratchpad, log down the thought and then hide it. Quick and simple!

nikitabobko commented 3 weeks ago

I could never understand this feature in i3. It's just a special type of workspace. Why not use a dedicated workspace then? You can have several of them

This feature feels like an unnecessary complication of mental model

agenttank commented 3 weeks ago

i like to use scratchpad to make my obsidian note taking app appear on whatever screen I am at the moment and then make it disappear again real quick as i've taken my notes.

hahuang65 commented 2 weeks ago

For what it's worth, yabai had only recently implemented this. I hacked around this for quite some time with just float, resize, and minimize.

hahuang65 commented 2 weeks ago

i like to use scratchpad to make my obsidian note taking app appear on whatever screen I am at the moment and then make it disappear again real quick as i've taken my notes.

I've a pretty simple script that works well enough for me:

#!/usr/bin/env bash

APP_ID="md.obsidian"

focus_notepad() {
  open -a Obsidian
}

notepad_focused() {
  if [ "$(aerospace list-windows --focused --format "%{app-bundle-id}")" == "$APP_ID" ]; then
    true
  else
    false
  fi
}

unfocus_notepad() {
  aerospace close
}

if notepad_focused; then
  unfocus_notepad
else
  focus_notepad
fi