]> git.sur5r.net Git - i3/i3/log
i3/i3
13 years agosecure strscpy by replacing with strncpy
Michael Stapelberg [Sat, 23 Jul 2011 20:22:36 +0000 (22:22 +0200)]
secure strscpy by replacing with strncpy

13 years agodocs: add reference card (by Zeus Panchenko)
Michael Stapelberg [Fri, 23 Jul 2010 19:38:42 +0000 (21:38 +0200)]
docs: add reference card (by Zeus Panchenko)

Conflicts:

docs/Makefile

13 years agoReset the color to the default color, don't harcode white.
Fernando Tarlá Cardoso Lemos [Sun, 20 Jun 2010 22:20:04 +0000 (19:20 -0300)]
Reset the color to the default color, don't harcode white.

13 years agodebian: bump compatibility to 6
Michael Stapelberg [Wed, 23 Jun 2010 16:29:35 +0000 (18:29 +0200)]
debian: bump compatibility to 6

13 years agodebian: update changelog
Michael Stapelberg [Wed, 23 Jun 2010 16:23:38 +0000 (18:23 +0200)]
debian: update changelog

13 years agodebian: add watch file
Michael Stapelberg [Wed, 23 Jun 2010 16:19:23 +0000 (18:19 +0200)]
debian: add watch file

13 years agodebian: call dh_installwm to register as alternative for x-window-manager
Michael Stapelberg [Wed, 23 Jun 2010 16:03:43 +0000 (18:03 +0200)]
debian: call dh_installwm to register as alternative for x-window-manager

13 years agodebian: update changelog
Michael Stapelberg [Wed, 9 Jun 2010 07:53:36 +0000 (09:53 +0200)]
debian: update changelog

13 years agoi3-wsbar: replace %w with the width of the output (Thanks dothebart)
Michael Stapelberg [Sat, 19 Jun 2010 09:48:47 +0000 (11:48 +0200)]
i3-wsbar: replace %w with the width of the output (Thanks dothebart)

This fixes ticket #231

13 years agoBugfix: i3-wsbar: properly catch errors when writing to child process
Michael Stapelberg [Wed, 16 Jun 2010 17:26:55 +0000 (19:26 +0200)]
Bugfix: i3-wsbar: properly catch errors when writing to child process

This comes at the expense of having Try::Tiny as additional dependency,
but I think Try::Tiny is widely available.

13 years agodebian: update i3-wm.docs
Michael Stapelberg [Sat, 23 Jul 2011 20:15:21 +0000 (22:15 +0200)]
debian: update i3-wm.docs

13 years agoupdate debian packaging
Michael Stapelberg [Sat, 23 Jul 2011 20:13:58 +0000 (22:13 +0200)]
update debian packaging

13 years agowsbar: print an error and exit after not being able to talk to i3 for 2 seconds ...
Michael Stapelberg [Wed, 26 May 2010 21:40:05 +0000 (23:40 +0200)]
wsbar: print an error and exit after not being able to talk to i3 for 2 seconds (Thanks badboy)

13 years agoBugfix: Don’t leak file descriptor
Michael Stapelberg [Sat, 23 Jul 2011 20:11:01 +0000 (22:11 +0200)]
Bugfix: Don’t leak file descriptor

13 years agoDon’t pretend like the global fullscreen mode would be configured in the default...
Michael Stapelberg [Tue, 4 May 2010 18:27:52 +0000 (20:27 +0200)]
Don’t pretend like the global fullscreen mode would be configured in the default config (Thanks Mirko)

Conflicts:

docs/userguide

13 years agouserguide: add missing $ (Thanks artoj)
Michael Stapelberg [Tue, 13 Apr 2010 19:05:04 +0000 (21:05 +0200)]
userguide: add missing $ (Thanks artoj)

13 years agoadd socket path parameter to i3-wsbar script
Jan-Erik Rediger [Sun, 11 Apr 2010 19:00:57 +0000 (21:00 +0200)]
add socket path parameter to i3-wsbar script

fixes http://i3.zekjur.net/bugs/ticket/210

13 years agoExclude docs/*.svg from dist tarball
Michael Stapelberg [Tue, 30 Mar 2010 11:25:25 +0000 (13:25 +0200)]
Exclude docs/*.svg from dist tarball

13 years agomakefile: cleanup src/cfgparse.dot
Michael Stapelberg [Tue, 30 Mar 2010 11:20:13 +0000 (13:20 +0200)]
makefile: cleanup src/cfgparse.dot

Conflicts:

Makefile

13 years agomakefile: pre-generate docs/
Michael Stapelberg [Tue, 30 Mar 2010 11:20:04 +0000 (13:20 +0200)]
makefile: pre-generate docs/

13 years agodebian: update changelog
Michael Stapelberg [Tue, 30 Mar 2010 11:12:28 +0000 (13:12 +0200)]
debian: update changelog

13 years agomanpage: update i3(1)
Michael Stapelberg [Sat, 27 Mar 2010 15:05:46 +0000 (16:05 +0100)]
manpage: update i3(1)

13 years agomanpages: don’t regenerate manpages on every 'make'
Michael Stapelberg [Sat, 27 Mar 2010 15:05:26 +0000 (16:05 +0100)]
manpages: don’t regenerate manpages on every 'make'

Conflicts:

man/Makefile

13 years agomakefile: includue i3-wsbar in dist
Michael Stapelberg [Sat, 23 Jul 2011 19:58:07 +0000 (21:58 +0200)]
makefile: includue i3-wsbar in dist

13 years agomanpages: extract manpage for i3-wsbar using pod2man(1)
Michael Stapelberg [Sat, 23 Jul 2011 19:57:35 +0000 (21:57 +0200)]
manpages: extract manpage for i3-wsbar using pod2man(1)

13 years agoBugfix: Correctly resize when clicking on the border of a stacked con
Michael Stapelberg [Sat, 23 Jul 2011 19:48:14 +0000 (21:48 +0200)]
Bugfix: Correctly resize when clicking on the border of a stacked con

Runs the same code as for non-stacked / non-tabbed containers, but on the
parent of the container (which is the stacked / tabbed con, since route_click
gets called with the child).

13 years agoAdd missing function prototype for strndup on Darwin (Thanks Marcus)
Michael Stapelberg [Sun, 17 Jul 2011 20:18:00 +0000 (22:18 +0200)]
Add missing function prototype for strndup on Darwin (Thanks Marcus)

13 years agoi3-config-wizard: use fgetln on Darwin, use strndup from FreeBSD on Darwin (Thanks...
Michael Stapelberg [Sun, 17 Jul 2011 13:21:57 +0000 (15:21 +0200)]
i3-config-wizard: use fgetln on Darwin, use strndup from FreeBSD on Darwin (Thanks Marcus)

13 years agouse memmem and strndup from FreeBSD on Darwin (Thanks Marcus)
Michael Stapelberg [Sun, 17 Jul 2011 13:18:45 +0000 (15:18 +0200)]
use memmem and strndup from FreeBSD on Darwin (Thanks Marcus)

13 years agomakefile: link -liconv on Darwin (Thanks Marcus)
Michael Stapelberg [Sun, 17 Jul 2011 13:17:24 +0000 (15:17 +0200)]
makefile: link -liconv on Darwin (Thanks Marcus)

13 years agomakefile: add i3-config-wizard to {dist,}clean, dist tree-pr4
Michael Stapelberg [Fri, 15 Jul 2011 17:21:39 +0000 (19:21 +0200)]
makefile: add i3-config-wizard to {dist,}clean, dist

13 years agomakefile: add i3-migrate-config-to-v4.pl
Michael Stapelberg [Fri, 15 Jul 2011 17:14:28 +0000 (19:14 +0200)]
makefile: add i3-migrate-config-to-v4.pl

13 years agoadd release notes for tree-pr4
Michael Stapelberg [Fri, 15 Jul 2011 17:08:41 +0000 (19:08 +0200)]
add release notes for tree-pr4

13 years agomakefile: add i3-nagbar to {dist,}clean target, include i3-nagbar in dist
Michael Stapelberg [Fri, 15 Jul 2011 17:08:21 +0000 (19:08 +0200)]
makefile: add i3-nagbar to {dist,}clean target, include i3-nagbar in dist

13 years agotestcases: explicitly mark the (short) config files as v4
Michael Stapelberg [Thu, 14 Jul 2011 23:37:54 +0000 (01:37 +0200)]
testcases: explicitly mark the (short) config files as v4

i3 won’t call i3-migrate-config and thus won’t add a call to i3bar this way.
It’s not necessary and can interfere with some tests sometimes.

13 years agomigrate-config: mode foo → mode "foo" (+test) (Thanks cradle)
Michael Stapelberg [Thu, 14 Jul 2011 22:22:26 +0000 (00:22 +0200)]
migrate-config: mode foo → mode "foo" (+test) (Thanks cradle)

13 years agoBugfix: Switch to appropriate workspace when using 'focus' (+test) (Thanks rogutes)
Michael Stapelberg [Thu, 14 Jul 2011 21:43:57 +0000 (23:43 +0200)]
Bugfix: Switch to appropriate workspace when using 'focus' (+test) (Thanks rogutes)

Fixes #432

13 years agotestcases: fix config-migrate test case after latest change
Michael Stapelberg [Thu, 14 Jul 2011 21:07:10 +0000 (23:07 +0200)]
testcases: fix config-migrate test case after latest change

13 years agoi3-nagbar: Fix -h / --help output (Thanks ktosiek)
Michael Stapelberg [Thu, 14 Jul 2011 11:26:59 +0000 (13:26 +0200)]
i3-nagbar: Fix -h / --help output (Thanks ktosiek)

13 years agoreload the config after editing it through i3-nagbar
Michael Stapelberg [Wed, 13 Jul 2011 16:47:08 +0000 (18:47 +0200)]
reload the config after editing it through i3-nagbar

13 years agoi3-nagbar: implement -m, set default prompt to "Pleaso do not run this program"
Michael Stapelberg [Wed, 13 Jul 2011 16:36:21 +0000 (18:36 +0200)]
i3-nagbar: implement -m, set default prompt to "Pleaso do not run this program"

It gets run by i3 automatically.

13 years agoi3-msg: concatenate all arguments. now you can use i3-msg mark foo
Michael Stapelberg [Wed, 13 Jul 2011 16:01:24 +0000 (18:01 +0200)]
i3-msg: concatenate all arguments. now you can use i3-msg mark foo

13 years agoi3-msg: re-indent main.c
Michael Stapelberg [Wed, 13 Jul 2011 15:53:07 +0000 (17:53 +0200)]
i3-msg: re-indent main.c

13 years agoMakefile: use $(MAKE) instead of make
Michael Stapelberg [Wed, 13 Jul 2011 11:29:39 +0000 (13:29 +0200)]
Makefile: use $(MAKE) instead of make

13 years agoMakefile: respect and use LIBS (Thanks Kacper)
Michael Stapelberg [Wed, 13 Jul 2011 11:28:31 +0000 (13:28 +0200)]
Makefile: respect and use LIBS (Thanks Kacper)

13 years agomakefiles: respect and use the CPPFLAGS variable (Thanks Kacper)
Michael Stapelberg [Wed, 13 Jul 2011 11:22:15 +0000 (13:22 +0200)]
makefiles: respect and use the CPPFLAGS variable (Thanks Kacper)

See also: http://stackoverflow.com/questions/2754966/cflags-vs-cppflags

13 years agomigrate-config: t → floating toggle (Thanks eeemsi)
Michael Stapelberg [Tue, 12 Jul 2011 19:29:30 +0000 (21:29 +0200)]
migrate-config: t → floating toggle (Thanks eeemsi)

13 years agopatch to allow exec_always in configure file
Claudio Marforio [Tue, 12 Jul 2011 10:24:01 +0000 (12:24 +0200)]
patch to allow exec_always in configure file

fixed indentation, updated docs

13 years agoBugfix: Don’t raise the stacked/tabbed decoration when border != BS_NONE and children...
Michael Stapelberg [Mon, 11 Jul 2011 21:17:56 +0000 (23:17 +0200)]
Bugfix: Don’t raise the stacked/tabbed decoration when border != BS_NONE and children == 1 (Thanks smartass)

Otherwise a black area would cover the top of the child window.

13 years agomakefile: don’t pick up autogenerated files
Michael Stapelberg [Mon, 11 Jul 2011 18:18:38 +0000 (20:18 +0200)]
makefile: don’t pick up autogenerated files

13 years agoMakefile: properly make 'clean'
Michael Stapelberg [Mon, 11 Jul 2011 18:14:25 +0000 (20:14 +0200)]
Makefile: properly make 'clean'

13 years agoBugfix: linking error (Thanks smartass)
Michael Stapelberg [Mon, 11 Jul 2011 18:14:17 +0000 (20:14 +0200)]
Bugfix: linking error (Thanks smartass)

13 years agodefault config: start i3-config-wizard
Michael Stapelberg [Mon, 11 Jul 2011 18:02:25 +0000 (20:02 +0200)]
default config: start i3-config-wizard

13 years agoadd v4 comment to i3.config.keycodes, remove userguide comment from i3-config-wizard
Michael Stapelberg [Mon, 11 Jul 2011 17:48:51 +0000 (19:48 +0200)]
add v4 comment to i3.config.keycodes, remove userguide comment from i3-config-wizard

13 years agomakefile: install i3-config-wizard
Michael Stapelberg [Mon, 11 Jul 2011 17:45:22 +0000 (19:45 +0200)]
makefile: install i3-config-wizard

13 years agodefault config: put bindings in the right order (left/down/up/right)
Michael Stapelberg [Mon, 11 Jul 2011 17:42:30 +0000 (19:42 +0200)]
default config: put bindings in the right order (left/down/up/right)

13 years agoconfig-wizard: write config to ~/.i3/config, create ~/.i3 if necessary
Michael Stapelberg [Mon, 11 Jul 2011 17:42:10 +0000 (19:42 +0200)]
config-wizard: write config to ~/.i3/config, create ~/.i3 if necessary

13 years agoconfig-wizard: read config from SYSCONFDIR/i3/config.keycodes
Michael Stapelberg [Mon, 11 Jul 2011 17:41:49 +0000 (19:41 +0200)]
config-wizard: read config from SYSCONFDIR/i3/config.keycodes

13 years agoconfig-wizard: correctly handle shift-only bindings
Michael Stapelberg [Mon, 11 Jul 2011 17:41:15 +0000 (19:41 +0200)]
config-wizard: correctly handle shift-only bindings

13 years agomakefile: bugfix: filter out auto-generated files
Michael Stapelberg [Mon, 11 Jul 2011 17:30:26 +0000 (19:30 +0200)]
makefile: bugfix: filter out auto-generated files

13 years agomakefile: install ${SYSCONFDIR}/i3/config.keycodes
Michael Stapelberg [Mon, 11 Jul 2011 17:24:04 +0000 (19:24 +0200)]
makefile: install ${SYSCONFDIR}/i3/config.keycodes

13 years agodebug.c: remove handle_event
Michael Stapelberg [Mon, 11 Jul 2011 16:21:25 +0000 (18:21 +0200)]
debug.c: remove handle_event

13 years agomakefile: use src/*.c again, we no longer have files which should not be compiled
Michael Stapelberg [Mon, 11 Jul 2011 16:20:50 +0000 (18:20 +0200)]
makefile: use src/*.c again, we no longer have files which should not be compiled

13 years agocommon.mk: correctly determine git branch for subfolders
Michael Stapelberg [Mon, 11 Jul 2011 16:12:57 +0000 (18:12 +0200)]
common.mk: correctly determine git branch for subfolders

13 years agoadd i3.config.keycodes, default config, but using bindcode (template for i3-config...
Michael Stapelberg [Mon, 11 Jul 2011 15:40:18 +0000 (17:40 +0200)]
add i3.config.keycodes, default config, but using bindcode (template for i3-config-wizard)

13 years agodefault config: convert to QWERTY, add comments
Michael Stapelberg [Mon, 11 Jul 2011 15:22:10 +0000 (17:22 +0200)]
default config: convert to QWERTY, add comments

13 years agodefault config: add resize mode
Michael Stapelberg [Mon, 11 Jul 2011 15:11:13 +0000 (17:11 +0200)]
default config: add resize mode

13 years agodefault config: add binding to change focus between tiling / floating windows
Michael Stapelberg [Mon, 11 Jul 2011 14:57:16 +0000 (16:57 +0200)]
default config: add binding to change focus between tiling / floating windows

13 years agoBugfix: run nagbar commands through sh(1) (Thanks Tucos)
Michael Stapelberg [Mon, 11 Jul 2011 14:51:57 +0000 (16:51 +0200)]
Bugfix: run nagbar commands through sh(1) (Thanks Tucos)

13 years agonagbar: use less / vi as fallbacks for PAGER / EDITOR
Michael Stapelberg [Mon, 11 Jul 2011 14:40:10 +0000 (16:40 +0200)]
nagbar: use less / vi as fallbacks for PAGER / EDITOR

13 years agoIgnore X11 errors caused by ReparentWindow / ChangeProperty on already destroyed...
Michael Stapelberg [Sun, 10 Jul 2011 21:44:13 +0000 (23:44 +0200)]
Ignore X11 errors caused by ReparentWindow / ChangeProperty on already destroyed windows

These errors can happen because a DestroyWindow request by a client will
trigger an UnmapNotify, then a DestroyNotify. We cannot distinguish this
UnmapNotify from an UnmapNotify not followed by a DestroyNotify, so we just try
to send the ReparentWindow / ChangeProperty and ignore the errors, if any.

13 years agolog: display time in microseconds when DEBUG_TIMING is set
Michael Stapelberg [Sun, 10 Jul 2011 21:11:21 +0000 (23:11 +0200)]
log: display time in microseconds when DEBUG_TIMING is set

13 years agox: only configure window coordinates when height > 0
Michael Stapelberg [Sun, 10 Jul 2011 20:59:04 +0000 (22:59 +0200)]
x: only configure window coordinates when height > 0

Fixes some X11 errors

13 years agox: Only render / copy pixmap when the pixmap was actually created
Michael Stapelberg [Sun, 10 Jul 2011 20:57:52 +0000 (22:57 +0200)]
x: Only render / copy pixmap when the pixmap was actually created

Fixes some X11 errors

13 years agox: disable GraphicsExposure events on our pixmap graphics contexts
Michael Stapelberg [Sun, 10 Jul 2011 20:27:31 +0000 (22:27 +0200)]
x: disable GraphicsExposure events on our pixmap graphics contexts

Gets rid of GraphicsExposure and NoExpose events, which we don’t use anyways.

13 years agoexpose event handler: use x_deco_recurse
Michael Stapelberg [Sun, 10 Jul 2011 20:06:16 +0000 (22:06 +0200)]
expose event handler: use x_deco_recurse

13 years agox: Don’t pre-render the decoration for windows inside a stack which are not visible
Michael Stapelberg [Sun, 10 Jul 2011 19:54:34 +0000 (21:54 +0200)]
x: Don’t pre-render the decoration for windows inside a stack which are not visible

Saves n-1 decoration renderings for n windows in a stack whenever a new window
gets added or removed.

13 years agox: use PolySegment instead of two PolyLine requests
Michael Stapelberg [Sun, 10 Jul 2011 19:19:31 +0000 (21:19 +0200)]
x: use PolySegment instead of two PolyLine requests

13 years agox: change EnterNotify event mask only for mapped windows
Michael Stapelberg [Sun, 10 Jul 2011 18:18:06 +0000 (20:18 +0200)]
x: change EnterNotify event mask only for mapped windows

Saves a few ChangeWindowAttributes requests.

13 years agox: copy the pre-rendered pixmap contents to a decoration window immediately after...
Michael Stapelberg [Sun, 10 Jul 2011 18:15:22 +0000 (20:15 +0200)]
x: copy the pre-rendered pixmap contents to a decoration window immediately after mapping

Reduces flickering.

13 years agox: set the contents of a decoration window immediately after changing its size
Michael Stapelberg [Sun, 10 Jul 2011 18:08:40 +0000 (20:08 +0200)]
x: set the contents of a decoration window immediately after changing its size

Reduces flickering. A window loses its contents when being resized, so we have
to restore them as fast as possible.

13 years agox: raise the stack decoration above the stack windows (reduces flickering)
Michael Stapelberg [Sun, 10 Jul 2011 18:05:49 +0000 (20:05 +0200)]
x: raise the stack decoration above the stack windows (reduces flickering)

This reduces flickering when opening new windows in a stack, see the comment.

13 years agox: when rendering stacked/tabbed cons, only update decoration once, saves some CopyAreas
Michael Stapelberg [Sun, 10 Jul 2011 18:01:29 +0000 (20:01 +0200)]
x: when rendering stacked/tabbed cons, only update decoration once, saves some CopyAreas

13 years agox: Don’t set background color on frame windows, reduces flickering
Michael Stapelberg [Sun, 10 Jul 2011 17:58:46 +0000 (19:58 +0200)]
x: Don’t set background color on frame windows, reduces flickering

13 years agoRevert "x: Set pixmap as background window, saves a lot of CopyAreas"
Michael Stapelberg [Sun, 10 Jul 2011 14:22:09 +0000 (16:22 +0200)]
Revert "x: Set pixmap as background window, saves a lot of CopyAreas"

This reverts commit 84b804cda61c9fda33521c11882b926ef4fc7f79.
Turns out that it triggered graphic corruptions on ATI graphics cards (Thanks
aniou) with certain drivers.

13 years agoMakefile: add i3-nagbar to install target
Michael Stapelberg [Sun, 10 Jul 2011 12:41:00 +0000 (14:41 +0200)]
Makefile: add i3-nagbar to install target

13 years agodocument TERM_EMU make variable in PACKAGE-MAINTAINER
Michael Stapelberg [Sun, 10 Jul 2011 12:36:53 +0000 (14:36 +0200)]
document TERM_EMU make variable in PACKAGE-MAINTAINER

13 years agoadd binaries to .gitignore
Michael Stapelberg [Sun, 10 Jul 2011 12:34:14 +0000 (14:34 +0200)]
add binaries to .gitignore

13 years agoadd i3-nagbar. tells you about config file errors (for example)
Michael Stapelberg [Sun, 10 Jul 2011 12:33:19 +0000 (14:33 +0200)]
add i3-nagbar. tells you about config file errors (for example)

13 years agomigrate-config: also migrate border toggle (bt) (Thanks woddf2)
Michael Stapelberg [Fri, 8 Jul 2011 23:02:13 +0000 (01:02 +0200)]
migrate-config: also migrate border toggle (bt) (Thanks woddf2)

13 years agotests: t/19-match needs a little delay
Michael Stapelberg [Fri, 8 Jul 2011 23:01:52 +0000 (01:01 +0200)]
tests: t/19-match needs a little delay

13 years agoBugfix: multiple criteria should use a logical AND (+test) (Thanks f8l)
Michael Stapelberg [Thu, 7 Jul 2011 22:21:29 +0000 (00:21 +0200)]
Bugfix: multiple criteria should use a logical AND (+test) (Thanks f8l)

13 years agomigrate-config: also make force_focus_wrapping a v4-only statement
Michael Stapelberg [Thu, 7 Jul 2011 22:17:48 +0000 (00:17 +0200)]
migrate-config: also make force_focus_wrapping a v4-only statement

13 years agoMakefile: install i3-migrate-config-to-v4.pl
Michael Stapelberg [Wed, 6 Jul 2011 18:51:49 +0000 (20:51 +0200)]
Makefile: install i3-migrate-config-to-v4.pl

13 years agoAutomatically call the migration script when the config does not look like v4
Michael Stapelberg [Wed, 6 Jul 2011 18:40:46 +0000 (20:40 +0200)]
Automatically call the migration script when the config does not look like v4

13 years agomigrate-config: Bugfix: 'borderless' has to be 'none'
Michael Stapelberg [Wed, 6 Jul 2011 18:21:39 +0000 (20:21 +0200)]
migrate-config: Bugfix: 'borderless' has to be 'none'

13 years agomigrate-config: also handle named workspaces correctly when their names come after...
Michael Stapelberg [Wed, 6 Jul 2011 15:56:09 +0000 (17:56 +0200)]
migrate-config: also handle named workspaces correctly when their names come after the bindings (Thanks xpt)

13 years agomigrate-config: also leave client.background lines unchanged (Thanks cloud)
Michael Stapelberg [Wed, 6 Jul 2011 15:51:32 +0000 (17:51 +0200)]
migrate-config: also leave client.background lines unchanged (Thanks cloud)

13 years agomigrate-config: include the old bar color line in new config (Thanks cloud)
Michael Stapelberg [Wed, 6 Jul 2011 15:50:14 +0000 (17:50 +0200)]
migrate-config: include the old bar color line in new config (Thanks cloud)

13 years agoAdd script to migrate a v3 config to v4 (tree). Please test this!
Michael Stapelberg [Wed, 6 Jul 2011 11:56:58 +0000 (13:56 +0200)]
Add script to migrate a v3 config to v4 (tree). Please test this!

Run ./i3-migrate-config-to-v4.pl < ~/.i3/config > /tmp/i3.config
and see if /tmp/i3.config is fine (especially check the comments
starting with XXX, they are inserted by the script).