]> git.sur5r.net Git - i3/i3/commitdiff
Added command directive 'title_format'.
authorIngo Bürk <ingo.buerk@tngtech.com>
Wed, 10 Jun 2015 16:59:45 +0000 (18:59 +0200)
committerIngo Bürk <ingo.buerk@tngtech.com>
Mon, 29 Jun 2015 07:13:31 +0000 (09:13 +0200)
This directive will be used to customize the window title.

include/commands.h
parser-specs/commands.spec
src/commands.c
testcases/t/187-commands-parser.t

index 16b7e146175dff6f6541e313eb01c68392dc0af0..6d1046d4b74cece97c59ee2ee36e475dbb13eeda 100644 (file)
@@ -276,6 +276,12 @@ void cmd_move_scratchpad(I3_CMD);
  */
 void cmd_scratchpad_show(I3_CMD);
 
+/**
+ * Implementation of 'title_format <format>'
+ *
+ */
+void cmd_title_format(I3_CMD, char *format);
+
 /**
  * Implementation of 'rename workspace <name> to <name>'
  *
index c3e6e4892ad9b6244c1bc383c87152cbf117da19..c756dd8b0502052d1b6a283acf8e31febd1d9766 100644 (file)
@@ -37,6 +37,7 @@ state INITIAL:
   'rename' -> RENAME
   'nop' -> NOP
   'scratchpad' -> SCRATCHPAD
+  'title_format' -> TITLE_FORMAT
   'mode' -> MODE
   'bar' -> BAR
 
@@ -374,6 +375,10 @@ state SCRATCHPAD:
   'show'
       -> call cmd_scratchpad_show()
 
+state TITLE_FORMAT:
+  format = string
+      -> call cmd_title_format($format)
+
 # bar (hidden_state hide|show|toggle)|(mode dock|hide|invisible|toggle) [<bar_id>]
 state BAR:
   bar_type = 'hidden_state'
index 44b910ec40ba67960d008e1b069ff0cd30f59100..3790f50f0d5d3969013679feb06358fc6fdb1f25 100644 (file)
@@ -1899,6 +1899,17 @@ void cmd_scratchpad_show(I3_CMD) {
     ysuccess(true);
 }
 
+/*
+ * Implementation of 'title_format <format>'
+ *
+ */
+void cmd_title_format(I3_CMD, char *format) {
+    DLOG("setting title_format to %s\n", format);
+
+    cmd_output->needs_tree_render = true;
+    ysuccess(true);
+}
+
 /*
  * Implementation of 'rename workspace [<name>] to <name>'
  *
index 094caeaa5f13437c9ee80813b07f93c1461dfb0c..fc7fa882797f861e2d4ddefd1f6ad133fb1ae5cc 100644 (file)
@@ -144,7 +144,7 @@ is(parser_calls("\nworkspace test"),
 ################################################################################
 
 is(parser_calls('unknown_literal'),
-   "ERROR: Expected one of these tokens: <end>, '[', 'move', 'exec', 'exit', 'restart', 'reload', 'shmlog', 'debuglog', 'border', 'layout', 'append_layout', 'workspace', 'focus', 'kill', 'open', 'fullscreen', 'split', 'floating', 'mark', 'unmark', 'resize', 'rename', 'nop', 'scratchpad', 'mode', 'bar'\n" .
+   "ERROR: Expected one of these tokens: <end>, '[', 'move', 'exec', 'exit', 'restart', 'reload', 'shmlog', 'debuglog', 'border', 'layout', 'append_layout', 'workspace', 'focus', 'kill', 'open', 'fullscreen', 'split', 'floating', 'mark', 'unmark', 'resize', 'rename', 'nop', 'scratchpad', 'title_format', 'mode', 'bar'\n" .
    "ERROR: Your command: unknown_literal\n" .
    "ERROR:               ^^^^^^^^^^^^^^^",
    'error for unknown literal ok');