display_swap 541 B

1234567891011121314151617
  1. #!/usr/bin/env bash
  2. DISPLAY_CONFIG=($(i3-msg -t get_outputs | jq -r '.[]|"\(.name):\(.current_workspace)"'))
  3. for ROW in "${DISPLAY_CONFIG[@]}"; do
  4. IFS=':'
  5. read -ra CONFIG <<< "${ROW}"
  6. if [ "${CONFIG[0]}" != "null" ] && [ "${CONFIG[1]}" != "null" ]; then
  7. echo "moving ${CONFIG[1]} right..."
  8. if [ "${CONFIG[2]}" != "" ]; then
  9. i3-msg -- workspace \
  10. --no-auto-back-and-forth "${CONFIG[1]}:${CONFIG[2]}"
  11. else
  12. i3-msg -- workspace --no-auto-back-and-forth "${CONFIG[1]}"
  13. fi
  14. i3-msg -- move workspace to output right
  15. fi
  16. done