glzr-io / glazewm

GlazeWM is a tiling window manager for Windows inspired by i3wm.
GNU General Public License v3.0
6.31k stars 183 forks source link

[question] parse issue - which line? #522

Closed azinsharaf closed 9 months ago

azinsharaf commented 9 months ago

how can i know in which line there is paring issue? image

config:

general:
  # Whether to automatically focus windows underneath the cursor.
  focus_follows_cursor: false

  # Whether to jump the cursor between windows focused by the WM.
  cursor_follow_focus: false

  # Whether to switch back and forth between the previously focused workspace
  # when focusing the current workspace.
  toggle_workspace_on_refocus: true

  # Whether to show floating windows as always on top.
  show_floating_on_top: true

  # Amount to move floating windows by (eg. when using `alt+<hjkl>` on a floating window)
  floating_window_move_amount: "5%"

  # Whether to center new floating windows.
  center_new_floating_windows: true

  # Whether to globally enable/disable window transition animations (on minimize, close,
  # etc). Set to 'unchanged' to make no setting changes.
  window_animations: "false"

focus_borders:
  active:
    enabled: true
    color: "#ff0000"
  inactive:
    enabled: false
    color: "#0000ff"

gaps:
  # Gap between adjacent windows.
  inner_gap: "60px"

  # Gap between windows and the screen edge. See "Shorthand properties" for more info.
  outer_gap: "60px 60 60px 60"

bar:
  enabled: true
  height: "30px"
  position: "top"
  always_on_top: true

  opacity: 1.0
  background: "#20242cc4"
  foreground: "#ffffff"
  font_family: "Hack Nerd Font"
  font_size: "12px"
  font_weight: "400"
  # Horizontal and vertical borders in pixels. Borders are inside the dimensions of the bar and do
  # not affect bar height. See "Shorthand properties" for more info.
  border_width: "0"
  # Color of the border.
  border_color: "green"
  padding: "4px 6px"
  offset_x: "10"
  offset_y: "5"
  border_radius: "5"

  # Separator between components within the bar. `label` is used for each section
  # of the bar unless `label_{left,center,right}` is explictly set, in which case
  # they are preferred over default.
  component_separator:
    label: " | "

  components_left:
    - type: "workspaces"
      focused_workspace_background: "#ffffff33" # "#00ff3380" #  "#ffffff33"
      displayed_workspace_background: "#00000033"
      default_workspace_background: "transparent"

  components_center:
    - type: "music"
      label_not_playing: ""
      label_paused: "{song_title} - {artist_name}"
      label_playing: "{song_title} - {artist_name} ▶"
      max_title_length: 20
      max_artist_length: 20

  components_right:
    - type: "system tray"
      label_expand_text: "<"
      label_collapse_text: ">"

    - type: "tiling direction"
      label_horizontal: "⮁"
      label_vertical: "⮂"
      background: "#ffffff33"
      margin: "0 4px"
      padding: "0 8px"

    - type: "battery"
      label_draining: "{battery_level}% remaining"
      label_power_saver: "{battery_level}% (power saver)"
      label_charging: "{battery_level}% (charging)"

    - type: "cpu"
      # label: " : {percent_usage}%"
      label: "c: {percent_usage}%"
      #foreground: "brown"

      # How often this counter is refreshed.
      refresh_interval_ms: 1000

    - type: "gpu"
      label: "gpu {percent_usage}%"
      # How often this counter is refreshed.
      refresh_interval_ms: 1000

    - type: "memory"
      label: "ram: {percent_usage}%"
      # How often this counter is refreshed.
      refresh_interval_ms: 1000

    - type: "network"
      label_no_internet: "no int"
      label_ethernet: "eth"
      label_wifi_strength_0: "wifi: 0%"
      label_wifi_strength_25: "wifi: 25%"
      label_wifi_strength_50: "wifi: 50%"
      label_wifi_strength_75: "wifi: 75%"
      label_wifi_strength_100: "wifi: 100%"
      refresh_interval_ms: 1000

    - type: "volume"
      label_low: " {volume_level}%"
      label_medium: " {volume_level}%"
      label_high: "󰕾 {volume_level}%"
      label_mute: "󰸈 {volume_level}%"

    - type: "weather"
      # Oakland, CA
      latitude: 37.8043637
      longitude: -122.2711137
      label: "{temperature_fahrenheit}°F"
      label_sun: "☀️ {temperature_fahrenheit}°F"
      label_moon: "🌙 {temperature_fahrenheit}°F"
      label_cloud_moon: "🌙☁️ {temperature_fahrenheit}°F"
      label_cloud_sun: "⛅ {temperature_fahrenheit}°F"
      label_cloud_moon_rain: "🌙🌧️ {temperature_fahrenheit}°F"
      label_cloud_sun_rain: "🌦️ {temperature_fahrenheit}°F"
      label_cloud_rain: "🌧️ {temperature_fahrenheit}°F"
      label_snow_flake: "❄️ {temperature_fahrenheit}°F"
      label_thunderstorm: "⚡ {temperature_fahrenheit}°F"
      label_cloud: "☁️ {temperature_fahrenheit}°F"

    - type: "binding mode"
      background: "#ffffff33"
      margin: "0 4px 0 0"
      padding: "0 8px"

    - type: "clock"
      # Documentation on formatting date/time string:
      # https://learn.microsoft.com/en-us/dotnet/standard/base-types/custom-date-and-time-format-strings
      time_formatting: "hh:mm tt  ddd, MMM d"
      margin: "0 0 0 10px"

workspaces:
  - name: "1"
    display_name: "󰊻 󰇮" # teams/email
    keep_alive: true
    bind_to_monitor: 1

  #- name: "2"
  #  display_name: "2 - email"
  #  keep_alive: true
  #  bind_to_monitor: 1

  - name: "2"
    display_name: "" # todoist & morgen
    keep_alive: true
    bind_to_monitor: 1

  - name: "3"
    display_name: "" # terminal
    keep_alive: true
    bind_to_monitor: 1

  - name: "4"
    display_name: "" # gis
    keep_alive: true
    bind_to_monitor: 1

  - name: "5"
    display_name: "󰢹" # remote
    keep_alive: true
    bind_to_monitor: 1

  - name: "6"
    display_name: "" # obsidian
    keep_alive: true
    bind_to_monitor: 1

  - name: "7"
    display_name: "" # spotify
    keep_alive: true
    bind_to_monitor: 1

  - name: "8"
    display_name: "󰝦" # blank
    keep_alive: true
    bind_to_monitor: 1

  - name: "9"
    display_name: "󰝦" # blank
    keep_alive: true
    bind_to_monitor: 1

  - name: "10"
    display_name: "󰝦" # blank
    keep_alive: true
    bind_to_monitor: 1

window_rules:
  # Task Manager requires admin privileges to manage and should be ignored unless running
  # the WM as admin.
  - command: "ignore"
    match_process_name: "/Taskmgr|ScreenClippingHost/"

  # Launches system dialogs as floating by default (eg. File Explorer save/open dialog).
  # - command: "set floating"
  # match_class_name: "#32770"

  # Do not manage picture-in-picture windows for browsers. Note that the default is for
  # English; change `match_title` to the window's title if you use another language.
  - command: "ignore"
    match_title: "[Pp]icture.in.[Pp]icture"
    match_class_name: "Chrome_WidgetWin_1|MozillaDialogClass"

  # Some applications (eg. Steam) have borders that extend past the normal border size.
  - command: "resize borders 0px -7px -7px -7px"
    match_process_name: "steam"

  - command: "ignore"
    match_process_name: "Teams"
    match_title: "Microsoft Teams Notification"

  - command: "ignore"
    match_process_name: "PanGPA"
  - command: "ignore"
    match_process_name: "PanGPS"

  - command: "ignore"
    match_title: "Picture in picture"

  - command: "ignore"
    match_title: "GeoWizards"

  - command: "ignore"
    match_title: "GIS_Admin.kdbx - KeePass"

  - command: "ignore"
    match_title: "Snipping Tool"

  - command: "ignore"
    match_title: "Workspot"

  - command: "move to workspace 1"
    match_process_name: "Teams"

  - command: "move to workspace 1"
    match_title: "/.*Outlook.*/"

  - command: "move to workspace 1"
    match_process_name: "Spark Desktop"

  - command: "move to workspace 1"
    match_process_name: "Discord"

  - command: "move to workspace 2"
    match_process_name: "Todoist"

  - command: "move to workspace 2"
    match_process_name: "Morgen"

  - command: "move to workspace 3"
    match_process_name: "wezterm-gui"

  - command: "move to workspace 4"
    match_process_name: "ArcGISPro"

  - command: "move to workspace 4"
    match_process_name: "ArcMap"

  - command: "move to workspace 5"
    match_process_name: "RemoteDesktopManager"

  - command: "move to workspace 6"
    match_process_name: "Obsidian"

  - command: "move to workspace 7"
    match_process_name: "Spotify"

binding_modes:
  - name: "resize"
    keybindings:
      # Resize focused window by a percentage or pixel amount.
      - command: "resize width -2%"
        bindings: ["H", "Left"]
      - command: "resize width +2%"
        bindings: ["L", "Right"]
      - command: "resize height +2%"
        bindings: ["K", "Up"]
      - command: "resize height -2%"
        bindings: ["J", "Down"]
      # Press enter/escape to return to default keybindings.
      - command: "binding mode none"
        bindings: ["Escape", "Enter"]

keybindings:
  # Shift focus in a given direction.
  - command: "focus left"
    bindings: ["Alt+H", "Alt+Left"]
  - command: "focus right"
    bindings: ["Alt+L", "Alt+Right"]
  - command: "focus up"
    bindings: ["Alt+K", "Alt+Up"]
  - command: "focus down"
    bindings: ["Alt+J", "Alt+Down"]

  # Move focused window in a given direction.
  - command: "move left"
    bindings: ["Alt+Shift+H", "Alt+Shift+Left"]
  - command: "move right"
    bindings: ["Alt+Shift+L", "Alt+Shift+Right"]
  - command: "move up"
    bindings: ["Alt+Shift+K", "Alt+Shift+Up"]
  - command: "move down"
    bindings: ["Alt+Shift+J", "Alt+Shift+Down"]

  # Resize focused window by a percentage or pixel amount.
  - command: "resize width -2%"
    binding: "Alt+U"
  - command: "resize width +2%"
    binding: "Alt+P"
  - command: "resize height +2%"
    binding: "Alt+O"
  - command: "resize height -2%"
    binding: "Alt+I"

  # As an alternative to the resize keybindings above, resize mode enables resizing via
  # HJKL or arrow keys. The binding mode is defined above with the name "resize".
  - command: "binding mode resize"
    binding: "Alt+R"

  # Change tiling direction. This determines where new tiling windows will be inserted.
  - command: "tiling direction toggle"
    binding: "Alt+V"

  # Change focus between floating / tiling windows.
  - command: "focus mode toggle"
    binding: ["Alt+Space", "Alt+T"]

  # Change the focused window to be floating / tiling.
  - command: "toggle floating"
    binding: "Alt+Shift+Space"

  # Change the focused window to be maximized / unmaximized.
  - command: "toggle maximized"
    binding: "Alt+X"

  # Minimize focused window.
  - command: "set minimized"
    binding: "Alt+M"

  # Close focused window.
  - command: "close"
    binding: "Alt+Shift+Q"

  # Kill GlazeWM process safely.
  - command: "exit wm"
    binding: "Alt+Shift+E"

  # Re-evaluate configuration file.
  - command: "reload config"
    binding: "Alt+Shift+R"

  # Launch CMD terminal (alternatively `exec wt` or `exec %ProgramFiles%/Git/git-bash.exe`
  # to start Windows Terminal and Git Bash respectively.
  # - command: "exec alacritty"
  #   binding: "Alt+Enter"

  - command: "exec 'C:\\Program Files\\WezTerm\\wezterm-gui.exe'"
    binding: "Alt+Enter"

  # Focus the workspace that last had focus.
  - command: "focus workspace recent"
    binding: "Alt+S"

  # Focus the next/previous workspace defined in `workspaces` config.
  - command: "focus workspace next"
    binding: "Alt+D"
  - command: "focus workspace prev"
    binding: "Alt+A"

  # Change focus to a workspace defined in `workspaces` config.
  - command: "focus workspace 1"
    binding: "Alt+1"
  - command: "focus workspace 2"
    binding: "Alt+2"
  - command: "focus workspace 3"
    binding: "Alt+3"
  - command: "focus workspace 4"
    binding: "Alt+4"
  - command: "focus workspace 5"
    binding: "Alt+5"
  - command: "focus workspace 6"
    binding: "Alt+6"
  - command: "focus workspace 7"
    binding: "Alt+7"
  - command: "focus workspace 8"
    binding: "Alt+8"
  - command: "focus workspace 9"
    binding: "Alt+9"
  - command: "focus workspace 10"
    binding: "Alt+0"

  # Move focused workspace to a monitor in a given direction.
  # - command: "move workspace left"
  # binding: "Alt+A"
  # - command: "move workspace right"
  # binding: "Alt+F"
  # - command: "move workspace up"
  # binding: "Alt+D"
  # - command: "move workspace down"
  # binding: "Alt+S"

  # Move focused window to a workspace defined in `workspaces` config.
  - commands: ["move to workspace 1", "focus workspace 1"]
    binding: "Alt+Shift+1"
  - commands: ["move to workspace 2", "focus workspace 2"]
    binding: "Alt+Shift+2"
  - commands: ["move to workspace 3", "focus workspace 3"]
    binding: "Alt+Shift+3"
  - commands: ["move to workspace 4", "focus workspace 4"]
    binding: "Alt+Shift+4"
  - commands: ["move to workspace 5", "focus workspace 5"]
    binding: "Alt+Shift+5"
  - commands: ["move to workspace 6", "focus workspace 6"]
    binding: "Alt+Shift+6"
  - commands: ["move to workspace 7", "focus workspace 7"]
    binding: "Alt+Shift+7"
  - commands: ["move to workspace 8", "focus workspace 8"]
    binding: "Alt+Shift+8"
  - commands: ["move to workspace 9", "focus workspace 9"]
    bindings: ["Alt+Shift+9"]
  - commands: ["move to workspace 10", "focus workspace 10"]
    bindings: ["Alt+Shift+0"]

  # create all the workspaces
  - commands:
      [
        "focus workspace 1",
        "focus workspace 2",
        "focus workspace 3",
        "focus workspace 4",
        "focus workspace 5",
        "focus workspace 6",
        "focus workspace 7",
        "focus workspace 8",
        "focus workspace 9",
        "focus workspace 10",
      ]
    binding: "Alt+B"
azinsharaf commented 9 months ago

never mind. it is working now, not sure what happened.