# We have an end token here for all the commands which just call some
# function without using an explicit 'end' token.
end ->
+ error ->
'#' -> IGNORE_LINE
'set' -> IGNORE_LINE
bindtype = 'bindsym', 'bindcode', 'bind' -> BINDING
'for_window' -> FOR_WINDOW
'assign' -> ASSIGN
'focus_follows_mouse' -> FOCUS_FOLLOWS_MOUSE
+ 'mouse_warping' -> MOUSE_WARPING
'force_focus_wrapping' -> FORCE_FOCUS_WRAPPING
'force_xinerama', 'force-xinerama' -> FORCE_XINERAMA
'workspace_auto_back_and_forth' -> WORKSPACE_BACK_AND_FORTH
exectype = 'exec_always', 'exec' -> EXEC
colorclass = 'client.background'
-> COLOR_SINGLE
- colorclass = 'client.focused_inactive', 'client.focused', 'client.unfocused', 'client.urgent'
+ colorclass = 'client.focused_inactive', 'client.focused', 'client.unfocused', 'client.urgent', 'client.placeholder'
-> COLOR_BORDER
# We ignore comments and 'set' lines (variables).
state IGNORE_LINE:
- end, string
+ line
-> INITIAL
# floating_minimum_size <width> x <height>
# floating_modifier <modifier>
state FLOATING_MODIFIER:
- modifiers = 'Mod1', 'Mod2', 'Mod3', 'Mod4', 'Mod5', 'Shift', 'Control'
+ modifiers = 'Mod1', 'Mod2', 'Mod3', 'Mod4', 'Mod5', 'Shift', 'Control', 'Ctrl'
->
'+'
->
value = word
-> call cfg_focus_follows_mouse($value)
+# mouse_warping warping_t
+state MOUSE_WARPING:
+ value = 'none', 'output'
+ -> call cfg_mouse_warping($value)
+
# force_focus_wrapping
state FORCE_FOCUS_WRAPPING:
value = word
-> WORKSPACE_OUTPUT_STR
state WORKSPACE_OUTPUT_STR:
- output = string
+ output = word
-> call cfg_workspace($workspace, $output)
# ipc-socket <path>
# popup_during_fullscreen
state POPUP_DURING_FULLSCREEN:
- value = 'ignore', 'leave_fullscreen'
+ value = 'ignore', 'leave_fullscreen', 'smart'
-> call cfg_popup_during_fullscreen($value)
# client.background <hexcolor>
# bindsym/bindcode
state BINDING:
- modifiers = 'Mod1', 'Mod2', 'Mod3', 'Mod4', 'Mod5', 'Shift', 'Control', 'Mode_switch'
+ release = '--release'
+ ->
+ whole_window = '--whole-window'
+ ->
+ modifiers = 'Mod1', 'Mod2', 'Mod3', 'Mod4', 'Mod5', 'Shift', 'Control', 'Ctrl', 'Mode_switch', '$mod'
->
'+'
->
state BINDCOMMAND:
release = '--release'
->
+ whole_window = '--whole-window'
+ ->
command = string
- -> call cfg_binding($bindtype, $modifiers, $key, $release, $command)
+ -> call cfg_binding($bindtype, $modifiers, $key, $release, $whole_window, $command)
################################################################################
# Mode configuration
-> call cfg_enter_mode($modename); MODEBRACE
state MODEBRACE:
+ end
+ ->
'{'
-> MODE
state MODE:
end ->
+ error ->
'#' -> MODE_IGNORE_LINE
'set' -> MODE_IGNORE_LINE
- bindtype = 'bindsym', 'bindcode'
+ bindtype = 'bindsym', 'bindcode', 'bind'
-> MODE_BINDING
'}'
-> INITIAL
# We ignore comments and 'set' lines (variables).
state MODE_IGNORE_LINE:
- end, string
+ line
-> MODE
state MODE_BINDING:
- modifiers = 'Mod1', 'Mod2', 'Mod3', 'Mod4', 'Mod5', 'Shift', 'Control', 'Mode_switch'
+ release = '--release'
+ ->
+ modifiers = 'Mod1', 'Mod2', 'Mod3', 'Mod4', 'Mod5', 'Shift', 'Control', 'Ctrl', 'Mode_switch', '$mod'
->
'+'
->
state MODE_BINDCOMMAND:
release = '--release'
->
+ whole_window = '--whole-window'
+ ->
command = string
- -> call cfg_mode_binding($bindtype, $modifiers, $key, $release, $command); MODE
+ -> call cfg_mode_binding($bindtype, $modifiers, $key, $release, $whole_window, $command); MODE
################################################################################
# Bar configuration (i3bar)
################################################################################
state BARBRACE:
+ end
+ ->
'{'
-> BAR
state BAR:
end ->
+ error ->
'#' -> BAR_IGNORE_LINE
'set' -> BAR_IGNORE_LINE
- 'i3bar_command' -> BAR_BAR_COMMAND
- 'status_command' -> BAR_STATUS_COMMAND
- 'socket_path' -> BAR_SOCKET_PATH
- 'mode' -> BAR_MODE
- 'modifier' -> BAR_MODIFIER
- 'position' -> BAR_POSITION
- 'output' -> BAR_OUTPUT
- 'tray_output' -> BAR_TRAY_OUTPUT
- 'font' -> BAR_FONT
- 'workspace_buttons' -> BAR_WORKSPACE_BUTTONS
- 'verbose' -> BAR_VERBOSE
- 'colors' -> BAR_COLORS_BRACE
+ 'i3bar_command' -> BAR_BAR_COMMAND
+ 'status_command' -> BAR_STATUS_COMMAND
+ 'socket_path' -> BAR_SOCKET_PATH
+ 'mode' -> BAR_MODE
+ 'hidden_state' -> BAR_HIDDEN_STATE
+ 'id' -> BAR_ID
+ 'modifier' -> BAR_MODIFIER
+ 'wheel_up_cmd' -> BAR_WHEEL_UP_CMD
+ 'wheel_down_cmd' -> BAR_WHEEL_DOWN_CMD
+ 'position' -> BAR_POSITION
+ 'output' -> BAR_OUTPUT
+ 'tray_output' -> BAR_TRAY_OUTPUT
+ 'font' -> BAR_FONT
+ 'separator_symbol' -> BAR_SEPARATOR_SYMBOL
+ 'binding_mode_indicator' -> BAR_BINDING_MODE_INDICATOR
+ 'workspace_buttons' -> BAR_WORKSPACE_BUTTONS
+ 'strip_workspace_numbers' -> BAR_STRIP_WORKSPACE_NUMBERS
+ 'verbose' -> BAR_VERBOSE
+ 'colors' -> BAR_COLORS_BRACE
'}'
-> call cfg_bar_finish(); INITIAL
# We ignore comments and 'set' lines (variables).
state BAR_IGNORE_LINE:
- end, string
+ line
-> BAR
state BAR_BAR_COMMAND:
-> call cfg_bar_socket_path($path); BAR
state BAR_MODE:
- mode = 'dock', 'hide'
+ mode = 'dock', 'hide', 'invisible'
-> call cfg_bar_mode($mode); BAR
+state BAR_HIDDEN_STATE:
+ hidden_state = 'hide', 'show'
+ -> call cfg_bar_hidden_state($hidden_state); BAR
+
+state BAR_ID:
+ bar_id = word
+ -> call cfg_bar_id($bar_id); BAR
+
state BAR_MODIFIER:
- modifier = 'Mod1', 'Mod2', 'Mod3', 'Mod4', 'Mod5', 'Control', 'Shift'
+ modifier = 'Mod1', 'Mod2', 'Mod3', 'Mod4', 'Mod5', 'Control', 'Ctrl', 'Shift'
-> call cfg_bar_modifier($modifier); BAR
+state BAR_WHEEL_UP_CMD:
+ command = string
+ -> call cfg_bar_wheel_up_cmd($command); BAR
+
+state BAR_WHEEL_DOWN_CMD:
+ command = string
+ -> call cfg_bar_wheel_down_cmd($command); BAR
+
state BAR_POSITION:
position = 'top', 'bottom'
-> call cfg_bar_position($position); BAR
-> call cfg_bar_output($output); BAR
state BAR_TRAY_OUTPUT:
- output = string
+ output = word
-> call cfg_bar_tray_output($output); BAR
state BAR_FONT:
font = string
-> call cfg_bar_font($font); BAR
+state BAR_SEPARATOR_SYMBOL:
+ separator = string
+ -> call cfg_bar_separator_symbol($separator); BAR
+
+state BAR_BINDING_MODE_INDICATOR:
+ value = word
+ -> call cfg_bar_binding_mode_indicator($value); BAR
+
state BAR_WORKSPACE_BUTTONS:
value = word
-> call cfg_bar_workspace_buttons($value); BAR
+state BAR_STRIP_WORKSPACE_NUMBERS:
+ value = word
+ -> call cfg_bar_strip_workspace_numbers($value); BAR
+
state BAR_VERBOSE:
value = word
-> call cfg_bar_verbose($value); BAR
state BAR_COLORS_BRACE:
+ end
+ ->
'{'
-> BAR_COLORS
end ->
'#' -> BAR_COLORS_IGNORE_LINE
'set' -> BAR_COLORS_IGNORE_LINE
- colorclass = 'background', 'statusline'
+ colorclass = 'background', 'statusline', 'separator'
-> BAR_COLORS_SINGLE
colorclass = 'focused_workspace', 'active_workspace', 'inactive_workspace', 'urgent_workspace'
-> BAR_COLORS_BORDER
# We ignore comments and 'set' lines (variables).
state BAR_COLORS_IGNORE_LINE:
- end, string
+ line
-> BAR_COLORS
state BAR_COLORS_SINGLE: