Replace http:// with https:// where applicable
The testcases will be updated automatically in a separate commit.
This commit is contained in:
parent
9fe508b791
commit
d968d39b27
|
@ -6,7 +6,7 @@ Note that bug reports and feature requests for related projects should be filed
|
||||||
|
|
||||||
## i3 bug reports and feature requests
|
## i3 bug reports and feature requests
|
||||||
|
|
||||||
1. Read the [debugging instructions](http://i3wm.org/docs/debugging.html).
|
1. Read the [debugging instructions](https://i3wm.org/docs/debugging.html).
|
||||||
2. Make sure you include a link to your logfile in your report (section 3).
|
2. Make sure you include a link to your logfile in your report (section 3).
|
||||||
3. Make sure you include the i3 version number in your report (section 1).
|
3. Make sure you include the i3 version number in your report (section 1).
|
||||||
4. Please be aware that we cannot support compatibility issues with
|
4. Please be aware that we cannot support compatibility issues with
|
||||||
|
@ -25,11 +25,11 @@ Note that bug reports and feature requests for related projects should be filed
|
||||||
”feature request” or ”enhancement” in its title.
|
”feature request” or ”enhancement” in its title.
|
||||||
* Use the `next` branch for developing and sending your pull request.
|
* Use the `next` branch for developing and sending your pull request.
|
||||||
* Use `clang-format` to format your code.
|
* Use `clang-format` to format your code.
|
||||||
* Run the [testsuite](http://i3wm.org/docs/testsuite.html)
|
* Run the [testsuite](https://i3wm.org/docs/testsuite.html)
|
||||||
|
|
||||||
## Finding something to do
|
## Finding something to do
|
||||||
|
|
||||||
* Find a [reproducible bug](https://github.com/i3/i3/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3Areproducible+label%3Abug+) from the issue tracker. These issues have been reviewed and confirmed by a project contributor.
|
* Find a [reproducible bug](https://github.com/i3/i3/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3Areproducible+label%3Abug+) from the issue tracker. These issues have been reviewed and confirmed by a project contributor.
|
||||||
* Find an [accepted enhancement](https://github.com/i3/i3/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3Aaccepted+label%3Aenhancement) from the issue tracker. These have been approved and are ok to start working on.
|
* Find an [accepted enhancement](https://github.com/i3/i3/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3Aaccepted+label%3Aenhancement) from the issue tracker. These have been approved and are ok to start working on.
|
||||||
|
|
||||||
There's a very good [overview of the codebase](http://i3wm.org/docs/hacking-howto.html) available to get you started.
|
There's a very good [overview of the codebase](https://i3wm.org/docs/hacking-howto.html) available to get you started.
|
||||||
|
|
|
@ -2,7 +2,7 @@ Output of `i3 --moreversion 2>&- || i3 --version`:
|
||||||
|
|
||||||
_REPLACE: i3 version output_
|
_REPLACE: i3 version output_
|
||||||
|
|
||||||
URL to a logfile as per http://i3wm.org/docs/debugging.html:
|
URL to a logfile as per https://i3wm.org/docs/debugging.html:
|
||||||
|
|
||||||
_REPLACE: URL to logfile_
|
_REPLACE: URL to logfile_
|
||||||
|
|
||||||
|
|
|
@ -23,7 +23,7 @@ my %meta = (
|
||||||
web => 'https://github.com/i3/i3/issues',
|
web => 'https://github.com/i3/i3/issues',
|
||||||
},
|
},
|
||||||
homepage => 'https://i3wm.org/',
|
homepage => 'https://i3wm.org/',
|
||||||
license => ['http://dev.perl.org/licenses'],
|
license => ['https://dev.perl.org/licenses'],
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
|
@ -23,10 +23,10 @@ perldoc command.
|
||||||
You can also look for information at:
|
You can also look for information at:
|
||||||
|
|
||||||
RT, CPAN's request tracker
|
RT, CPAN's request tracker
|
||||||
http://rt.cpan.org/NoAuth/Bugs.html?Dist=AnyEvent-I3
|
https://rt.cpan.org/NoAuth/Bugs.html?Dist=AnyEvent-I3
|
||||||
|
|
||||||
The i3 window manager website
|
The i3 window manager website
|
||||||
http://i3.zekjur.net/
|
https://i3wm.org
|
||||||
|
|
||||||
|
|
||||||
LICENSE AND COPYRIGHT
|
LICENSE AND COPYRIGHT
|
||||||
|
@ -37,4 +37,4 @@ This program is free software; you can redistribute it and/or modify it
|
||||||
under the terms of either: the GNU General Public License as published
|
under the terms of either: the GNU General Public License as published
|
||||||
by the Free Software Foundation; or the Artistic License.
|
by the Free Software Foundation; or the Artistic License.
|
||||||
|
|
||||||
See http://dev.perl.org/licenses/ for more information.
|
See https://dev.perl.org/licenses/ for more information.
|
||||||
|
|
|
@ -544,7 +544,7 @@ Michael Stapelberg, C<< <michael at i3wm.org> >>
|
||||||
|
|
||||||
Please report any bugs or feature requests to C<bug-anyevent-i3 at
|
Please report any bugs or feature requests to C<bug-anyevent-i3 at
|
||||||
rt.cpan.org>, or through the web interface at
|
rt.cpan.org>, or through the web interface at
|
||||||
L<http://rt.cpan.org/NoAuth/ReportBug.html?Queue=AnyEvent-I3>. I will be
|
L<https://rt.cpan.org/NoAuth/ReportBug.html?Queue=AnyEvent-I3>. I will be
|
||||||
notified, and then you'll automatically be notified of progress on your bug as
|
notified, and then you'll automatically be notified of progress on your bug as
|
||||||
I make changes.
|
I make changes.
|
||||||
|
|
||||||
|
@ -560,11 +560,11 @@ You can also look for information at:
|
||||||
|
|
||||||
=item * RT: CPAN's request tracker
|
=item * RT: CPAN's request tracker
|
||||||
|
|
||||||
L<http://rt.cpan.org/NoAuth/Bugs.html?Dist=AnyEvent-I3>
|
L<https://rt.cpan.org/NoAuth/Bugs.html?Dist=AnyEvent-I3>
|
||||||
|
|
||||||
=item * The i3 window manager website
|
=item * The i3 window manager website
|
||||||
|
|
||||||
L<http://i3wm.org>
|
L<https://i3wm.org>
|
||||||
|
|
||||||
=back
|
=back
|
||||||
|
|
||||||
|
@ -580,7 +580,7 @@ This program is free software; you can redistribute it and/or modify it
|
||||||
under the terms of either: the GNU General Public License as published
|
under the terms of either: the GNU General Public License as published
|
||||||
by the Free Software Foundation; or the Artistic License.
|
by the Free Software Foundation; or the Artistic License.
|
||||||
|
|
||||||
See http://dev.perl.org/licenses/ for more information.
|
See https://dev.perl.org/licenses/ for more information.
|
||||||
|
|
||||||
|
|
||||||
=cut
|
=cut
|
||||||
|
|
26
DEPENDS
26
DEPENDS
|
@ -7,29 +7,29 @@
|
||||||
┌──────────────┬────────┬────────┬───────────────────────────────────────────────────────────┐
|
┌──────────────┬────────┬────────┬───────────────────────────────────────────────────────────┐
|
||||||
│ dependency │ min. │ lkgv │ URL │
|
│ dependency │ min. │ lkgv │ URL │
|
||||||
├──────────────┼────────┼────────┼───────────────────────────────────────────────────────────┤
|
├──────────────┼────────┼────────┼───────────────────────────────────────────────────────────┤
|
||||||
│ pkg-config │ 0.25 │ 0.29 │ http://pkgconfig.freedesktop.org/ │
|
│ pkg-config │ 0.25 │ 0.29 │ https://pkgconfig.freedesktop.org/ │
|
||||||
│ libxcb │ 1.1.93 │ 1.12 │ http://xcb.freedesktop.org/dist/ │
|
│ libxcb │ 1.1.93 │ 1.12 │ https://xcb.freedesktop.org/dist/ │
|
||||||
│ xcb-util │ 0.3.3 │ 0.4.1 │ http://xcb.freedesktop.org/dist/ │
|
│ xcb-util │ 0.3.3 │ 0.4.1 │ https://xcb.freedesktop.org/dist/ │
|
||||||
│ xkbcommon │ 0.4.0 │ 0.6.1 │ http://xkbcommon.org/ │
|
│ xkbcommon │ 0.4.0 │ 0.6.1 │ https://xkbcommon.org/ │
|
||||||
│ xkbcommon-x11│ 0.4.0 │ 0.6.1 │ http://xkbcommon.org/ │
|
│ xkbcommon-x11│ 0.4.0 │ 0.6.1 │ https://xkbcommon.org/ │
|
||||||
│ util-cursor³⁴│ 0.0.99 │ 0.1.3 │ http://xcb.freedesktop.org/dist/ │
|
│ util-cursor³⁴│ 0.0.99 │ 0.1.3 │ https://xcb.freedesktop.org/dist/ │
|
||||||
│ util-wm⁴ │ 0.3.8 │ 0.3.8 │ http://xcb.freedesktop.org/dist/ │
|
│ util-wm⁴ │ 0.3.8 │ 0.3.8 │ https://xcb.freedesktop.org/dist/ │
|
||||||
│ util-keysyms⁴│ 0.3.8 │ 0.4.0 │ http://xcb.freedesktop.org/dist/ │
|
│ util-keysyms⁴│ 0.3.8 │ 0.4.0 │ https://xcb.freedesktop.org/dist/ │
|
||||||
│ util-xrm⁴ │ 1.0.0 │ 1.0.0 │ https://github.com/Airblader/xcb-util-xrm │
|
│ util-xrm⁴ │ 1.0.0 │ 1.0.0 │ https://github.com/Airblader/xcb-util-xrm │
|
||||||
│ libev │ 4.0 │ 4.19 │ http://libev.schmorp.de/ │
|
│ libev │ 4.0 │ 4.19 │ http://libev.schmorp.de/ │
|
||||||
│ yajl │ 2.0.1 │ 2.1.0 │ http://lloyd.github.com/yajl/ │
|
│ yajl │ 2.0.1 │ 2.1.0 │ https://lloyd.github.com/yajl/ │
|
||||||
│ asciidoc │ 8.3.0 │ 8.6.9 │ http://www.methods.co.nz/asciidoc/ │
|
│ asciidoc │ 8.3.0 │ 8.6.9 │ http://www.methods.co.nz/asciidoc/ │
|
||||||
│ xmlto │ 0.0.23 │ 0.0.23 │ http://www.methods.co.nz/asciidoc/ │
|
│ xmlto │ 0.0.23 │ 0.0.23 │ http://www.methods.co.nz/asciidoc/ │
|
||||||
│ Pod::Simple² │ 3.22 │ 3.22 │ http://search.cpan.org/~dwheeler/Pod-Simple-3.23/ │
|
│ Pod::Simple² │ 3.22 │ 3.22 │ http://search.cpan.org/~dwheeler/Pod-Simple-3.23/ │
|
||||||
│ docbook-xml │ 4.5 │ 4.5 │ http://www.methods.co.nz/asciidoc/ │
|
│ docbook-xml │ 4.5 │ 4.5 │ http://www.methods.co.nz/asciidoc/ │
|
||||||
│ PCRE │ 8.12 │ 8.38 │ http://www.pcre.org/ │
|
│ PCRE │ 8.12 │ 8.38 │ https://www.pcre.org/ │
|
||||||
│ libsn¹ │ 0.10 │ 0.12 │ http://freedesktop.org/wiki/Software/startup-notification │
|
│ libsn¹ │ 0.10 │ 0.12 │ https://freedesktop.org/wiki/Software/startup-notification │
|
||||||
│ pango │ 1.30.0 | 1.40.1 │ http://www.pango.org/ │
|
│ pango │ 1.30.0 | 1.40.1 │ http://www.pango.org/ │
|
||||||
│ cairo │ 1.14.4 │ 1.14.6 │ http://cairographics.org/ │
|
│ cairo │ 1.14.4 │ 1.14.6 │ https://cairographics.org/ │
|
||||||
└──────────────┴────────┴────────┴───────────────────────────────────────────────────────────┘
|
└──────────────┴────────┴────────┴───────────────────────────────────────────────────────────┘
|
||||||
¹ libsn = libstartup-notification
|
¹ libsn = libstartup-notification
|
||||||
² Pod::Simple is a Perl module required for converting the testsuite
|
² Pod::Simple is a Perl module required for converting the testsuite
|
||||||
documentation to HTML. See http://michael.stapelberg.de/cpan/#Pod::Simple
|
documentation to HTML. See https://michael.stapelberg.de/cpan/#Pod::Simple
|
||||||
³ xcb-util-cursor, to be precise.
|
³ xcb-util-cursor, to be precise.
|
||||||
⁴ Depending on your distribution, this might be considered part of xcb-util.
|
⁴ Depending on your distribution, this might be considered part of xcb-util.
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
#!/usr/bin/env perl
|
#!/usr/bin/env perl
|
||||||
# vim:ts=4:sw=4:expandtab
|
# vim:ts=4:sw=4:expandtab
|
||||||
# © 2012 Michael Stapelberg
|
# © 2012 Michael Stapelberg
|
||||||
# Licensed under BSD license, see http://code.i3wm.org/i3/tree/LICENSE
|
# Licensed under BSD license, see https://github.com/i3/i3/blob/next/LICENSE
|
||||||
#
|
#
|
||||||
# Append this line to your i3 config file:
|
# Append this line to your i3 config file:
|
||||||
# exec_always ~/per-workspace-layout.pl
|
# exec_always ~/per-workspace-layout.pl
|
||||||
|
|
|
@ -27,7 +27,7 @@ Build-Depends: debhelper (>= 9),
|
||||||
libpango1.0-dev,
|
libpango1.0-dev,
|
||||||
libpod-simple-perl
|
libpod-simple-perl
|
||||||
Standards-Version: 3.9.8
|
Standards-Version: 3.9.8
|
||||||
Homepage: http://i3wm.org/
|
Homepage: https://i3wm.org/
|
||||||
|
|
||||||
Package: i3
|
Package: i3
|
||||||
Architecture: any
|
Architecture: any
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
|
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
|
||||||
Upstream-Name: i3
|
Upstream-Name: i3
|
||||||
Upstream-Contact: Michael Stapelberg <michael@i3wm.org>
|
Upstream-Contact: Michael Stapelberg <michael@i3wm.org>
|
||||||
Source: https://i3wm.org/
|
Source: https://i3wm.org/
|
||||||
|
|
|
@ -520,8 +520,8 @@ cellspacing="0" cellpadding="4">
|
||||||
|
|
||||||
[header]
|
[header]
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
|
||||||
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
|
"https://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
|
||||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="{lang=en}">
|
<html xmlns="https://www.w3.org/1999/xhtml" xml:lang="{lang=en}">
|
||||||
<head>
|
<head>
|
||||||
<link rel="icon" type="image/png" href="/favicon.png">
|
<link rel="icon" type="image/png" href="/favicon.png">
|
||||||
<meta http-equiv="Content-Type" content="{quirks=application/xhtml+xml}{quirks?text/html}; charset={encoding}" />
|
<meta http-equiv="Content-Type" content="{quirks=application/xhtml+xml}{quirks?text/html}; charset={encoding}" />
|
||||||
|
@ -647,7 +647,7 @@ endif::doctype-manpage[]
|
||||||
</div>
|
</div>
|
||||||
{disable-javascript%<div id="footnotes"><hr /></div>}
|
{disable-javascript%<div id="footnotes"><hr /></div>}
|
||||||
<div id="footer" lang="de">
|
<div id="footer" lang="de">
|
||||||
© 2009 Michael Stapelberg, <a href="http://i3wm.org/impress.html">Impressum</a>
|
© 2009 Michael Stapelberg, <a href="https://i3wm.org/impress.html">Impressum</a>
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|
|
@ -32,8 +32,8 @@ if you can.
|
||||||
|
|
||||||
4.7-85-g9c15b95 (development version)::
|
4.7-85-g9c15b95 (development version)::
|
||||||
Your version is 85 commits newer than 4.7, and the git revision of your
|
Your version is 85 commits newer than 4.7, and the git revision of your
|
||||||
version is +9c15b95+. Go to http://code.i3wm.org/i3/commit/?h=next and see if
|
version is +9c15b95+. Go to https://github.com/i3/i3/commits/next and see if
|
||||||
the line "commit" starts with the same revision. If so, you are using the
|
the most recent commit starts with the same revision. If so, you are using the
|
||||||
latest version.
|
latest version.
|
||||||
|
|
||||||
Development versions of i3 have logging enabled by default and are compiled
|
Development versions of i3 have logging enabled by default and are compiled
|
||||||
|
@ -109,9 +109,9 @@ No matter whether i3 misbehaved in some way without crashing or whether it just
|
||||||
crashed, the logfile provides all information necessary to debug the problem.
|
crashed, the logfile provides all information necessary to debug the problem.
|
||||||
|
|
||||||
To upload a compressed version of the logfile (for a bugreport), use:
|
To upload a compressed version of the logfile (for a bugreport), use:
|
||||||
------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
DISPLAY=:0 i3-dump-log | bzip2 -c | curl --data-binary @- http://logs.i3wm.org
|
DISPLAY=:0 i3-dump-log | bzip2 -c | curl --data-binary @- https://logs.i3wm.org
|
||||||
------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
|
|
||||||
This command does not depend on i3 (it also works while i3 displays
|
This command does not depend on i3 (it also works while i3 displays
|
||||||
the crash dialog), but it requires a working X11 connection.
|
the crash dialog), but it requires a working X11 connection.
|
||||||
|
@ -154,9 +154,9 @@ you found the section which clearly highlights the problem, additional
|
||||||
information might be necessary to completely diagnose the problem.
|
information might be necessary to completely diagnose the problem.
|
||||||
|
|
||||||
When debugging with us in IRC, be prepared to use a so called nopaste service
|
When debugging with us in IRC, be prepared to use a so called nopaste service
|
||||||
such as http://nopaste.info or http://pastebin.com because pasting large
|
such as https://pastebin.com because pasting large amounts of text in IRC
|
||||||
amounts of text in IRC sometimes leads to incomplete lines (servers have line
|
sometimes leads to incomplete lines (servers have line length limitations) or
|
||||||
length limitations) or flood kicks.
|
flood kicks.
|
||||||
|
|
||||||
== Debugging i3bar
|
== Debugging i3bar
|
||||||
|
|
||||||
|
|
|
@ -52,8 +52,8 @@ Here’s a memory refresher:
|
||||||
== Using git / sending patches
|
== Using git / sending patches
|
||||||
|
|
||||||
For a short introduction into using git, see
|
For a short introduction into using git, see
|
||||||
http://web.archive.org/web/20121024222556/http://www.spheredev.org/wiki/Git_for_the_lazy
|
https://web.archive.org/web/20121024222556/http://www.spheredev.org/wiki/Git_for_the_lazy
|
||||||
or, for more documentation, see http://git-scm.com/documentation
|
or, for more documentation, see https://git-scm.com/documentation
|
||||||
|
|
||||||
Please talk to us before working on new features to see whether they will be
|
Please talk to us before working on new features to see whether they will be
|
||||||
accepted. A good way for this is to open an issue and asking for opinions on it.
|
accepted. A good way for this is to open an issue and asking for opinions on it.
|
||||||
|
@ -156,7 +156,7 @@ workspace, the split container we are talking about is the workspace.
|
||||||
|
|
||||||
To get an impression of how different layouts are represented, just play around
|
To get an impression of how different layouts are represented, just play around
|
||||||
and look at the data structures -- they are exposed as a JSON hash. See
|
and look at the data structures -- they are exposed as a JSON hash. See
|
||||||
http://i3wm.org/docs/ipc.html#_tree_reply for documentation on that and an
|
https://i3wm.org/docs/ipc.html#_tree_reply for documentation on that and an
|
||||||
example.
|
example.
|
||||||
|
|
||||||
== Files
|
== Files
|
||||||
|
|
|
@ -31,7 +31,7 @@ $parser->html_header_before_title(
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<meta name="generator" content="Pod::Simple::HTML">
|
<meta name="generator" content="Pod::Simple::HTML">
|
||||||
<meta name="description" content="i3 Perl documentation">
|
<meta name="description" content="i3 Perl documentation">
|
||||||
<link rel="stylesheet" href="http://i3wm.org/css/style.css" type="text/css" />
|
<link rel="stylesheet" href="https://i3wm.org/css/style.css" type="text/css" />
|
||||||
<style type="text/css">
|
<style type="text/css">
|
||||||
.pod pre {
|
.pod pre {
|
||||||
background: #333;
|
background: #333;
|
||||||
|
@ -75,9 +75,9 @@ $parser->html_header_after_title(
|
||||||
<ul id="nav">
|
<ul id="nav">
|
||||||
<li><a style="border-bottom: 2px solid #fff" href="/docs">Docs</a></li>
|
<li><a style="border-bottom: 2px solid #fff" href="/docs">Docs</a></li>
|
||||||
<li><a href="/screenshots">Screens</a></li>
|
<li><a href="/screenshots">Screens</a></li>
|
||||||
<li><a href="http://faq.i3wm.org/">FAQ</a></li>
|
<li><a href="https://www.reddit.com/r/i3wm/">FAQ</a></li>
|
||||||
<li><a href="/contact">Contact</a></li>
|
<li><a href="/contact">Contact</a></li>
|
||||||
<li><a href="http://bugs.i3wm.org/">Bugs</a></li>
|
<li><a href="https://bugs.i3wm.org/">Bugs</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
<br style="clear: both">
|
<br style="clear: both">
|
||||||
<div id="content" class="pod">
|
<div id="content" class="pod">
|
||||||
|
|
|
@ -96,7 +96,7 @@ i3status and others will output single statuslines in one line, separated by
|
||||||
|
|
||||||
You can find an example of a shell script which can be used as your
|
You can find an example of a shell script which can be used as your
|
||||||
+status_command+ in the bar configuration at
|
+status_command+ in the bar configuration at
|
||||||
http://code.stapelberg.de/git/i3/tree/contrib/trivial-bar-script.sh?h=next
|
https://github.com/i3/i3/blob/next/contrib/trivial-bar-script.sh
|
||||||
|
|
||||||
=== Header in detail
|
=== Header in detail
|
||||||
|
|
||||||
|
|
|
@ -52,7 +52,7 @@ it will be placed in the corresponding placeholder window. We say it gets
|
||||||
|
|
||||||
Note: Swallowing windows into unsatisfied placeholder windows takes precedence
|
Note: Swallowing windows into unsatisfied placeholder windows takes precedence
|
||||||
over
|
over
|
||||||
link:http://i3wm.org/docs/userguide.html#_automatically_putting_clients_on_specific_workspaces[assignment
|
link:https://i3wm.org/docs/userguide.html#_automatically_putting_clients_on_specific_workspaces[assignment
|
||||||
rules]. For example, if you assign all Emacs windows to workspace 1 in your i3
|
rules]. For example, if you assign all Emacs windows to workspace 1 in your i3
|
||||||
configuration file, but there is a placeholder window on workspace 2 which
|
configuration file, but there is a placeholder window on workspace 2 which
|
||||||
matches Emacs as well, your newly started Emacs window will end up in the
|
matches Emacs as well, your newly started Emacs window will end up in the
|
||||||
|
@ -164,7 +164,7 @@ a Chrome window:
|
||||||
image:layout-saving-1.png["Restored layout",width=400,link="layout-saving-1.png"]
|
image:layout-saving-1.png["Restored layout",width=400,link="layout-saving-1.png"]
|
||||||
|
|
||||||
The structure of this JSON file looks a lot like the +TREE+ reply, see
|
The structure of this JSON file looks a lot like the +TREE+ reply, see
|
||||||
http://build.i3wm.org/docs/ipc.html#_tree_reply for documentation on that. Some
|
https://build.i3wm.org/docs/ipc.html#_tree_reply for documentation on that. Some
|
||||||
properties are excluded because they are not relevant when restoring a layout.
|
properties are excluded because they are not relevant when restoring a layout.
|
||||||
|
|
||||||
Most importantly, look at the "swallows" section of each window. This is where
|
Most importantly, look at the "swallows" section of each window. This is where
|
||||||
|
@ -229,8 +229,8 @@ Both deviations from the JSON standard are to make manual editing by humans
|
||||||
easier. In case you are writing a more elaborate tool for manipulating these
|
easier. In case you are writing a more elaborate tool for manipulating these
|
||||||
layouts, you can either use a JSON parser that supports these deviations (for
|
layouts, you can either use a JSON parser that supports these deviations (for
|
||||||
example libyajl), transform the layout file to a JSON-conforming file, or
|
example libyajl), transform the layout file to a JSON-conforming file, or
|
||||||
link:http://cr.i3wm.org/[submit a patch] to make +i3-save-tree(1)+ optionally
|
link:https://github.com/i3/i3/blob/next/.github/CONTRIBUTING.md[submit a patch]
|
||||||
output standard-conforming JSON.
|
to make +i3-save-tree(1)+ optionally output standard-conforming JSON.
|
||||||
|
|
||||||
== Troubleshooting
|
== Troubleshooting
|
||||||
|
|
||||||
|
|
|
@ -34,7 +34,7 @@
|
||||||
<header>
|
<header>
|
||||||
<img id="logo" src="logo-30.png" alt="" />
|
<img id="logo" src="logo-30.png" alt="" />
|
||||||
<h1>i3 Reference Card</h1>
|
<h1>i3 Reference Card</h1>
|
||||||
<a href="http://i3wm.org/docs/userguide.html">http://i3wm.org/docs/userguide.html</a>
|
<a href="https://i3wm.org/docs/userguide.html">https://i3wm.org/docs/userguide.html</a>
|
||||||
<p>
|
<p>
|
||||||
Throughout this guide, the i3 logo will be used to refer to the configured modifier.
|
Throughout this guide, the i3 logo will be used to refer to the configured modifier.
|
||||||
This is the <kbd></kbd> key (<code>Mod1</code>) by default,
|
This is the <kbd></kbd> key (<code>Mod1</code>) by default,
|
||||||
|
|
|
@ -41,10 +41,10 @@ Apart from this document, you should also have a look at:
|
||||||
http://onyxneon.com/books/modern_perl/modern_perl_a4.pdf
|
http://onyxneon.com/books/modern_perl/modern_perl_a4.pdf
|
||||||
2. The latest Perl documentation of the "i3test" (general testcase setup) and
|
2. The latest Perl documentation of the "i3test" (general testcase setup) and
|
||||||
"i3test::Test" (additional test instructions) modules:
|
"i3test::Test" (additional test instructions) modules:
|
||||||
http://build.i3wm.org/docs/lib-i3test.html respectively
|
https://build.i3wm.org/docs/lib-i3test.html respectively
|
||||||
http://build.i3wm.org/docs/lib-i3test-test.html
|
https://build.i3wm.org/docs/lib-i3test-test.html
|
||||||
3. The latest documentation on i3’s IPC interface:
|
3. The latest documentation on i3’s IPC interface:
|
||||||
http://build.i3wm.org/docs/ipc.html
|
https://build.i3wm.org/docs/ipc.html
|
||||||
|
|
||||||
== Implementation
|
== Implementation
|
||||||
|
|
||||||
|
@ -99,7 +99,7 @@ $ sudo cpan .
|
||||||
--------------------------------------------------------------------------------
|
--------------------------------------------------------------------------------
|
||||||
|
|
||||||
In case you don’t have root permissions, you can also install into your home
|
In case you don’t have root permissions, you can also install into your home
|
||||||
directory, see http://michael.stapelberg.de/cpan/
|
directory, see https://michael.stapelberg.de/cpan/
|
||||||
|
|
||||||
=== Mechanisms
|
=== Mechanisms
|
||||||
|
|
||||||
|
@ -240,7 +240,7 @@ interface which i3 provides. It is used for the startup process of i3, for
|
||||||
terminating it cleanly and (most importantly) for modifying and getting the
|
terminating it cleanly and (most importantly) for modifying and getting the
|
||||||
current state (layout tree).
|
current state (layout tree).
|
||||||
|
|
||||||
See [http://i3wm.org/docs/ipc.html] for documentation on the IPC interface.
|
See [https://i3wm.org/docs/ipc.html] for documentation on the IPC interface.
|
||||||
|
|
||||||
==== X11::XCB
|
==== X11::XCB
|
||||||
|
|
||||||
|
|
|
@ -824,7 +824,7 @@ The first part of the WM_CLASS is the instance ("irssi" in this example), the
|
||||||
second part is the class ("URxvt" in this example).
|
second part is the class ("URxvt" in this example).
|
||||||
|
|
||||||
Should you have any problems with assignments, make sure to check the i3
|
Should you have any problems with assignments, make sure to check the i3
|
||||||
logfile first (see http://i3wm.org/docs/debugging.html). It includes more
|
logfile first (see https://i3wm.org/docs/debugging.html). It includes more
|
||||||
details about the matching process and the window’s actual class, instance and
|
details about the matching process and the window’s actual class, instance and
|
||||||
title when starting up.
|
title when starting up.
|
||||||
|
|
||||||
|
@ -1078,7 +1078,7 @@ force_focus_wrapping yes
|
||||||
|
|
||||||
=== Forcing Xinerama
|
=== Forcing Xinerama
|
||||||
|
|
||||||
As explained in-depth in <http://i3wm.org/docs/multi-monitor.html>, some X11
|
As explained in-depth in <https://i3wm.org/docs/multi-monitor.html>, some X11
|
||||||
video drivers (especially the nVidia binary driver) only provide support for
|
video drivers (especially the nVidia binary driver) only provide support for
|
||||||
Xinerama instead of RandR. In such a situation, i3 must be told to use the
|
Xinerama instead of RandR. In such a situation, i3 must be told to use the
|
||||||
inferior Xinerama API explicitly and therefore don’t provide support for
|
inferior Xinerama API explicitly and therefore don’t provide support for
|
||||||
|
@ -2469,7 +2469,7 @@ bindsym $mod+u border none
|
||||||
[[shmlog]]
|
[[shmlog]]
|
||||||
=== Enabling shared memory logging
|
=== Enabling shared memory logging
|
||||||
|
|
||||||
As described in http://i3wm.org/docs/debugging.html, i3 can log to a shared
|
As described in https://i3wm.org/docs/debugging.html, i3 can log to a shared
|
||||||
memory buffer, which you can dump using +i3-dump-log+. The +shmlog+ command
|
memory buffer, which you can dump using +i3-dump-log+. The +shmlog+ command
|
||||||
allows you to enable or disable the shared memory logging at runtime.
|
allows you to enable or disable the shared memory logging at runtime.
|
||||||
|
|
||||||
|
|
|
@ -48,7 +48,7 @@ will be adjusted properly.
|
||||||
|
|
||||||
+i3-wsbar+ used to be the reference implementation before we had +i3bar+.
|
+i3-wsbar+ used to be the reference implementation before we had +i3bar+.
|
||||||
Nowadays, it is not shipped with release tarballs, but you can still get it at
|
Nowadays, it is not shipped with release tarballs, but you can still get it at
|
||||||
http://code.stapelberg.de/git/i3/tree/contrib/i3-wsbar
|
https://github.com/i3/i3/blob/next/contrib/i3-wsbar
|
||||||
|
|
||||||
=== The big picture
|
=== The big picture
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
# i3 config file (v4)
|
# i3 config file (v4)
|
||||||
#
|
#
|
||||||
# Please see http://i3wm.org/docs/userguide.html for a complete reference!
|
# Please see https://i3wm.org/docs/userguide.html for a complete reference!
|
||||||
#
|
#
|
||||||
# This config file uses keycodes (bindsym) and was written for the QWERTY
|
# This config file uses keycodes (bindsym) and was written for the QWERTY
|
||||||
# layout.
|
# layout.
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
|
|
||||||
# i3 config file (v4)
|
# i3 config file (v4)
|
||||||
#
|
#
|
||||||
# Please see http://i3wm.org/docs/userguide.html for a complete reference!
|
# Please see https://i3wm.org/docs/userguide.html for a complete reference!
|
||||||
|
|
||||||
set $mod Mod1
|
set $mod Mod1
|
||||||
|
|
||||||
|
|
|
@ -75,7 +75,7 @@ my $valid_types = {
|
||||||
# For details on how the transformation of LC_MESSAGES to a list of keys that
|
# For details on how the transformation of LC_MESSAGES to a list of keys that
|
||||||
# should be looked up works, refer to “Localized values for keys” of the
|
# should be looked up works, refer to “Localized values for keys” of the
|
||||||
# “Desktop Entry Specification”:
|
# “Desktop Entry Specification”:
|
||||||
# http://standards.freedesktop.org/desktop-entry-spec/latest/ar01s04.html
|
# https://standards.freedesktop.org/desktop-entry-spec/latest/ar01s04.html
|
||||||
my $lc_messages = setlocale(LC_MESSAGES);
|
my $lc_messages = setlocale(LC_MESSAGES);
|
||||||
|
|
||||||
# Ignore the encoding (e.g. .UTF-8)
|
# Ignore the encoding (e.g. .UTF-8)
|
||||||
|
@ -103,7 +103,7 @@ push @suffixes, $lc_messages;
|
||||||
# ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
|
# ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
|
||||||
|
|
||||||
my %desktops;
|
my %desktops;
|
||||||
# See http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html#variables
|
# See https://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html#variables
|
||||||
my $xdg_data_home = $ENV{XDG_DATA_HOME};
|
my $xdg_data_home = $ENV{XDG_DATA_HOME};
|
||||||
$xdg_data_home = $ENV{HOME} . '/.local/share' if
|
$xdg_data_home = $ENV{HOME} . '/.local/share' if
|
||||||
!defined($xdg_data_home) ||
|
!defined($xdg_data_home) ||
|
||||||
|
@ -192,7 +192,7 @@ for my $file (values %desktops) {
|
||||||
$key eq 'Terminal') {
|
$key eq 'Terminal') {
|
||||||
# Values of type boolean must either be string true or false,
|
# Values of type boolean must either be string true or false,
|
||||||
# see “Possible value types”:
|
# see “Possible value types”:
|
||||||
# http://standards.freedesktop.org/desktop-entry-spec/latest/ar01s03.html
|
# https://standards.freedesktop.org/desktop-entry-spec/latest/ar01s03.html
|
||||||
$apps{$base}->{$key} = ($value eq 'true');
|
$apps{$base}->{$key} = ($value eq 'true');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -243,7 +243,7 @@ for my $app (keys %apps) {
|
||||||
}
|
}
|
||||||
|
|
||||||
# Don’t offer apps which have NoDisplay == true or Hidden == true.
|
# Don’t offer apps which have NoDisplay == true or Hidden == true.
|
||||||
# See http://wiki.xfce.org/howto/customize-menu#hide_menu_entries
|
# See https://wiki.xfce.org/howto/customize-menu#hide_menu_entries
|
||||||
# for the difference between NoDisplay and Hidden.
|
# for the difference between NoDisplay and Hidden.
|
||||||
next if (exists($apps{$app}->{NoDisplay}) && $apps{$app}->{NoDisplay}) ||
|
next if (exists($apps{$app}->{NoDisplay}) && $apps{$app}->{NoDisplay}) ||
|
||||||
(exists($apps{$app}->{Hidden}) && $apps{$app}->{Hidden});
|
(exists($apps{$app}->{Hidden}) && $apps{$app}->{Hidden});
|
||||||
|
@ -400,7 +400,7 @@ my $exec = $app->{Exec};
|
||||||
my $location = $app->{_Location};
|
my $location = $app->{_Location};
|
||||||
|
|
||||||
# Quote as described by “The Exec key”:
|
# Quote as described by “The Exec key”:
|
||||||
# http://standards.freedesktop.org/desktop-entry-spec/latest/ar01s06.html
|
# https://standards.freedesktop.org/desktop-entry-spec/latest/ar01s06.html
|
||||||
sub quote {
|
sub quote {
|
||||||
my ($str) = @_;
|
my ($str) = @_;
|
||||||
$str =~ s/("|`|\$|\\)/\\$1/g;
|
$str =~ s/("|`|\$|\\)/\\$1/g;
|
||||||
|
|
|
@ -127,7 +127,7 @@ int main(int argc, char *argv[]) {
|
||||||
if (!is_debug_build()) {
|
if (!is_debug_build()) {
|
||||||
fprintf(stderr, "You seem to be using a release version of i3:\n %s\n\n", I3_VERSION);
|
fprintf(stderr, "You seem to be using a release version of i3:\n %s\n\n", I3_VERSION);
|
||||||
fprintf(stderr, "Release versions do not use SHM logging by default,\ntherefore i3-dump-log does not work.\n\n");
|
fprintf(stderr, "Release versions do not use SHM logging by default,\ntherefore i3-dump-log does not work.\n\n");
|
||||||
fprintf(stderr, "Please follow this guide instead:\nhttp://i3wm.org/docs/debugging-release-version.html\n");
|
fprintf(stderr, "Please follow this guide instead:\nhttps://i3wm.org/docs/debugging-release-version.html\n");
|
||||||
exit(1);
|
exit(1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -859,7 +859,7 @@ static void handle_client_message(xcb_client_message_event_t *event) {
|
||||||
* client to finish the protocol. After this event is received, there is no
|
* client to finish the protocol. After this event is received, there is no
|
||||||
* further interaction with the tray client.
|
* further interaction with the tray client.
|
||||||
*
|
*
|
||||||
* See: http://standards.freedesktop.org/xembed-spec/xembed-spec-latest.html
|
* See: https://standards.freedesktop.org/xembed-spec/xembed-spec-latest.html
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
static void handle_destroy_notify(xcb_destroy_notify_event_t *event) {
|
static void handle_destroy_notify(xcb_destroy_notify_event_t *event) {
|
||||||
|
|
|
@ -92,9 +92,9 @@ void ewmh_setup_hints(void);
|
||||||
/**
|
/**
|
||||||
* i3 currently does not support _NET_WORKAREA, because it does not correspond
|
* i3 currently does not support _NET_WORKAREA, because it does not correspond
|
||||||
* to i3’s concept of workspaces. See also:
|
* to i3’s concept of workspaces. See also:
|
||||||
* http://bugs.i3wm.org/539
|
* https://bugs.i3wm.org/539
|
||||||
* http://bugs.i3wm.org/301
|
* https://bugs.i3wm.org/301
|
||||||
* http://bugs.i3wm.org/1038
|
* https://bugs.i3wm.org/1038
|
||||||
*
|
*
|
||||||
* We need to actively delete this property because some display managers (e.g.
|
* We need to actively delete this property because some display managers (e.g.
|
||||||
* LightDM) set it.
|
* LightDM) set it.
|
||||||
|
|
|
@ -470,7 +470,7 @@ char *get_process_filename(const char *prefix);
|
||||||
/**
|
/**
|
||||||
* This function returns the absolute path to the executable it is running in.
|
* This function returns the absolute path to the executable it is running in.
|
||||||
*
|
*
|
||||||
* The implementation follows http://stackoverflow.com/a/933996/712014
|
* The implementation follows https://stackoverflow.com/a/933996/712014
|
||||||
*
|
*
|
||||||
* Returned value must be freed by the caller.
|
* Returned value must be freed by the caller.
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
* © 2009 Michael Stapelberg and contributors (see also: LICENSE)
|
* © 2009 Michael Stapelberg and contributors (see also: LICENSE)
|
||||||
*
|
*
|
||||||
* For more information on RandR, please see the X.org RandR specification at
|
* For more information on RandR, please see the X.org RandR specification at
|
||||||
* http://cgit.freedesktop.org/xorg/proto/randrproto/tree/randrproto.txt
|
* https://cgit.freedesktop.org/xorg/proto/randrproto/tree/randrproto.txt
|
||||||
* (take your time to read it completely, it answers all questions).
|
* (take your time to read it completely, it answers all questions).
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -57,8 +57,8 @@ extern "C" {
|
||||||
|
|
||||||
You may find an up-to-date version of these source files online:
|
You may find an up-to-date version of these source files online:
|
||||||
|
|
||||||
http://cgit.freedesktop.org/systemd/plain/src/sd-daemon.h
|
https://cgit.freedesktop.org/systemd/plain/src/sd-daemon.h
|
||||||
http://cgit.freedesktop.org/systemd/plain/src/sd-daemon.c
|
https://cgit.freedesktop.org/systemd/plain/src/sd-daemon.c
|
||||||
|
|
||||||
This should compile on non-Linux systems, too, but with the
|
This should compile on non-Linux systems, too, but with the
|
||||||
exception of the sd_is_xxx() calls all functions will become NOPs.
|
exception of the sd_is_xxx() calls all functions will become NOPs.
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
/*
|
/*
|
||||||
* This function returns the absolute path to the executable it is running in.
|
* This function returns the absolute path to the executable it is running in.
|
||||||
*
|
*
|
||||||
* The implementation follows http://stackoverflow.com/a/933996/712014
|
* The implementation follows https://stackoverflow.com/a/933996/712014
|
||||||
*
|
*
|
||||||
* Returned value must be freed by the caller.
|
* Returned value must be freed by the caller.
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -48,7 +48,7 @@ workspaces.
|
||||||
get_outputs::
|
get_outputs::
|
||||||
Gets the current outputs. The reply will be a JSON-encoded list of outputs (see
|
Gets the current outputs. The reply will be a JSON-encoded list of outputs (see
|
||||||
the reply section of docs/ipc, e.g. at
|
the reply section of docs/ipc, e.g. at
|
||||||
http://i3wm.org/docs/ipc.html#_receiving_replies_from_i3).
|
https://i3wm.org/docs/ipc.html#_receiving_replies_from_i3).
|
||||||
|
|
||||||
get_tree::
|
get_tree::
|
||||||
Gets the layout tree. i3 uses a tree as data structure which includes every
|
Gets the layout tree. i3 uses a tree as data structure which includes every
|
||||||
|
|
|
@ -341,7 +341,7 @@ which is why this is not integrated into this manpage), the debugging guide,
|
||||||
and the "how to hack" guide. If you are building from source, run:
|
and the "how to hack" guide. If you are building from source, run:
|
||||||
+make -C docs+
|
+make -C docs+
|
||||||
|
|
||||||
You can also access these documents online at http://i3wm.org/
|
You can also access these documents online at https://i3wm.org/
|
||||||
|
|
||||||
i3-input(1), i3-msg(1), i3bar(1), i3-nagbar(1), i3-config-wizard(1),
|
i3-input(1), i3-msg(1), i3bar(1), i3-nagbar(1), i3-config-wizard(1),
|
||||||
i3-migrate-config-to-v4(1)
|
i3-migrate-config-to-v4(1)
|
||||||
|
|
|
@ -40,7 +40,7 @@ workspace switching buttons and a statusline generated by i3status(1) or
|
||||||
similar. It is automatically invoked (and configured through) i3.
|
similar. It is automatically invoked (and configured through) i3.
|
||||||
|
|
||||||
i3bar supports colors via a JSON protocol starting from v4.2, see
|
i3bar supports colors via a JSON protocol starting from v4.2, see
|
||||||
http://i3wm.org/docs/i3bar-protocol.html
|
https://i3wm.org/docs/i3bar-protocol.html
|
||||||
|
|
||||||
== ENVIRONMENT
|
== ENVIRONMENT
|
||||||
|
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
#
|
#
|
||||||
# So, if you want to use it, here you go. This is however not a supported
|
# So, if you want to use it, here you go. This is however not a supported
|
||||||
# document, and I recommend you have a look at the docs/ folder or at
|
# document, and I recommend you have a look at the docs/ folder or at
|
||||||
# http://i3wm.org/ for more, real documentation.
|
# https://i3wm.org/ for more, real documentation.
|
||||||
#
|
#
|
||||||
|
|
||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
|
|
|
@ -321,7 +321,7 @@ Binding *get_binding_from_xcb_event(xcb_generic_event_t *event) {
|
||||||
* XCB_XKB_PER_CLIENT_FLAG_GRABS_USE_XKB_STATE and
|
* XCB_XKB_PER_CLIENT_FLAG_GRABS_USE_XKB_STATE and
|
||||||
* XCB_XKB_PER_CLIENT_FLAG_LOOKUP_STATE_WHEN_GRABBED. See also doc/kbproto
|
* XCB_XKB_PER_CLIENT_FLAG_LOOKUP_STATE_WHEN_GRABBED. See also doc/kbproto
|
||||||
* section 2.2.2:
|
* section 2.2.2:
|
||||||
* http://www.x.org/releases/X11R7.7/doc/kbproto/xkbproto.html#Computing_A_State_Field_from_an_XKB_State */
|
* https://www.x.org/releases/X11R7.7/doc/kbproto/xkbproto.html#Computing_A_State_Field_from_an_XKB_State */
|
||||||
switch ((event_state & 0x6000) >> 13) {
|
switch ((event_state & 0x6000) >> 13) {
|
||||||
case XCB_XKB_GROUP_1:
|
case XCB_XKB_GROUP_1:
|
||||||
state_filtered |= (I3_XKB_GROUP_MASK_1 << 16);
|
state_filtered |= (I3_XKB_GROUP_MASK_1 << 16);
|
||||||
|
|
|
@ -222,9 +222,9 @@ void ewmh_update_visible_name(xcb_window_t window, const char *name) {
|
||||||
/*
|
/*
|
||||||
* i3 currently does not support _NET_WORKAREA, because it does not correspond
|
* i3 currently does not support _NET_WORKAREA, because it does not correspond
|
||||||
* to i3’s concept of workspaces. See also:
|
* to i3’s concept of workspaces. See also:
|
||||||
* http://bugs.i3wm.org/539
|
* https://bugs.i3wm.org/539
|
||||||
* http://bugs.i3wm.org/301
|
* https://bugs.i3wm.org/301
|
||||||
* http://bugs.i3wm.org/1038
|
* https://bugs.i3wm.org/1038
|
||||||
*
|
*
|
||||||
* We need to actively delete this property because some display managers (e.g.
|
* We need to actively delete this property because some display managers (e.g.
|
||||||
* LightDM) set it.
|
* LightDM) set it.
|
||||||
|
|
|
@ -847,7 +847,7 @@ static void handle_client_message(xcb_client_message_event_t *event) {
|
||||||
/* This request is used by pagers and bars to change the current
|
/* This request is used by pagers and bars to change the current
|
||||||
* desktop likely as a result of some user action. We interpret this as
|
* desktop likely as a result of some user action. We interpret this as
|
||||||
* a request to focus the given workspace. See
|
* a request to focus the given workspace. See
|
||||||
* http://standards.freedesktop.org/wm-spec/latest/ar01s03.html#idm140251368135008
|
* https://standards.freedesktop.org/wm-spec/latest/ar01s03.html#idm140251368135008
|
||||||
* */
|
* */
|
||||||
DLOG("Request to change current desktop to index %d\n", event->data.data32[0]);
|
DLOG("Request to change current desktop to index %d\n", event->data.data32[0]);
|
||||||
Con *ws = ewmh_get_workspace_by_index(event->data.data32[0]);
|
Con *ws = ewmh_get_workspace_by_index(event->data.data32[0]);
|
||||||
|
@ -895,7 +895,7 @@ static void handle_client_message(xcb_client_message_event_t *event) {
|
||||||
/*
|
/*
|
||||||
* Pagers wanting to close a window MUST send a _NET_CLOSE_WINDOW
|
* Pagers wanting to close a window MUST send a _NET_CLOSE_WINDOW
|
||||||
* client message request to the root window.
|
* client message request to the root window.
|
||||||
* http://standards.freedesktop.org/wm-spec/wm-spec-latest.html#idm140200472668896
|
* https://standards.freedesktop.org/wm-spec/wm-spec-latest.html#idm140200472668896
|
||||||
*/
|
*/
|
||||||
Con *con = con_by_window_id(event->window);
|
Con *con = con_by_window_id(event->window);
|
||||||
if (con) {
|
if (con) {
|
||||||
|
|
|
@ -602,7 +602,7 @@ int main(int argc, char *argv[]) {
|
||||||
xcb_xkb_per_client_flags_reply_t *pcf_reply;
|
xcb_xkb_per_client_flags_reply_t *pcf_reply;
|
||||||
/* The last three parameters are unset because they are only relevant
|
/* The last three parameters are unset because they are only relevant
|
||||||
* when using a feature called “automatic reset of boolean controls”:
|
* when using a feature called “automatic reset of boolean controls”:
|
||||||
* http://www.x.org/releases/X11R7.7/doc/kbproto/xkbproto.html#Automatic_Reset_of_Boolean_Controls
|
* https://www.x.org/releases/X11R7.7/doc/kbproto/xkbproto.html#Automatic_Reset_of_Boolean_Controls
|
||||||
* */
|
* */
|
||||||
pcf_reply = xcb_xkb_per_client_flags_reply(
|
pcf_reply = xcb_xkb_per_client_flags_reply(
|
||||||
conn,
|
conn,
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
* © 2009 Michael Stapelberg and contributors (see also: LICENSE)
|
* © 2009 Michael Stapelberg and contributors (see also: LICENSE)
|
||||||
*
|
*
|
||||||
* For more information on RandR, please see the X.org RandR specification at
|
* For more information on RandR, please see the X.org RandR specification at
|
||||||
* http://cgit.freedesktop.org/xorg/proto/randrproto/tree/randrproto.txt
|
* https://cgit.freedesktop.org/xorg/proto/randrproto/tree/randrproto.txt
|
||||||
* (take your time to read it completely, it answers all questions).
|
* (take your time to read it completely, it answers all questions).
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -69,10 +69,10 @@ void render_con(Con *con, bool render_fullscreen) {
|
||||||
* The spec isn’t explicit on whether the aspect ratio hints should be
|
* The spec isn’t explicit on whether the aspect ratio hints should be
|
||||||
* respected during fullscreen mode. Other WMs such as Openbox don’t do
|
* respected during fullscreen mode. Other WMs such as Openbox don’t do
|
||||||
* that, and this post suggests that this is the correct way to do it:
|
* that, and this post suggests that this is the correct way to do it:
|
||||||
* http://mail.gnome.org/archives/wm-spec-list/2003-May/msg00007.html
|
* https://mail.gnome.org/archives/wm-spec-list/2003-May/msg00007.html
|
||||||
*
|
*
|
||||||
* Ignoring aspect ratio during fullscreen was necessary to fix MPlayer
|
* Ignoring aspect ratio during fullscreen was necessary to fix MPlayer
|
||||||
* subtitle rendering, see http://bugs.i3wm.org/594 */
|
* subtitle rendering, see https://bugs.i3wm.org/594 */
|
||||||
if (!render_fullscreen && con->window->aspect_ratio > 0.0) {
|
if (!render_fullscreen && con->window->aspect_ratio > 0.0) {
|
||||||
DLOG("aspect_ratio = %f, current width/height are %d/%d\n",
|
DLOG("aspect_ratio = %f, current width/height are %d/%d\n",
|
||||||
con->window->aspect_ratio, inset->width, inset->height);
|
con->window->aspect_ratio, inset->width, inset->height);
|
||||||
|
@ -97,7 +97,7 @@ void render_con(Con *con, bool render_fullscreen) {
|
||||||
* windows up until commit 0db93d9 here. However, since all terminal
|
* windows up until commit 0db93d9 here. However, since all terminal
|
||||||
* emulators cope with ignoring the size hints in a better way than we
|
* emulators cope with ignoring the size hints in a better way than we
|
||||||
* can (by providing their fake-transparency or background color), this
|
* can (by providing their fake-transparency or background color), this
|
||||||
* code was removed. See also http://bugs.i3wm.org/540 */
|
* code was removed. See also https://bugs.i3wm.org/540 */
|
||||||
|
|
||||||
DLOG("child will be at %dx%d with size %dx%d\n", inset->x, inset->y, inset->width, inset->height);
|
DLOG("child will be at %dx%d with size %dx%d\n", inset->x, inset->y, inset->width, inset->height);
|
||||||
}
|
}
|
||||||
|
@ -116,7 +116,7 @@ void render_con(Con *con, bool render_fullscreen) {
|
||||||
* global fullscreen containers, we cannot abort rendering here yet,
|
* global fullscreen containers, we cannot abort rendering here yet,
|
||||||
* because the floating windows (with popup_during_fullscreen smart)
|
* because the floating windows (with popup_during_fullscreen smart)
|
||||||
* have not yet been rendered (see the CT_ROOT code path below). See
|
* have not yet been rendered (see the CT_ROOT code path below). See
|
||||||
* also http://bugs.i3wm.org/1393 */
|
* also https://bugs.i3wm.org/1393 */
|
||||||
if (con->type != CT_ROOT) {
|
if (con->type != CT_ROOT) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
|
@ -103,7 +103,7 @@ void restore_connect(void) {
|
||||||
|
|
||||||
/* xcb_disconnect leaks memory in libxcb versions earlier than 1.11,
|
/* xcb_disconnect leaks memory in libxcb versions earlier than 1.11,
|
||||||
* but it’s the right function to call. See
|
* but it’s the right function to call. See
|
||||||
* http://cgit.freedesktop.org/xcb/libxcb/commit/src/xcb_conn.c?id=4dcbfd77b
|
* https://cgit.freedesktop.org/xcb/libxcb/commit/src/xcb_conn.c?id=4dcbfd77b
|
||||||
*/
|
*/
|
||||||
xcb_disconnect(restore_conn);
|
xcb_disconnect(restore_conn);
|
||||||
free(xcb_watcher);
|
free(xcb_watcher);
|
||||||
|
|
|
@ -98,7 +98,7 @@ static int sighandler_backtrace(void) {
|
||||||
|
|
||||||
/* We provide pipe file descriptors for stdin/stdout because gdb < 7.5
|
/* We provide pipe file descriptors for stdin/stdout because gdb < 7.5
|
||||||
* crashes otherwise, see
|
* crashes otherwise, see
|
||||||
* http://sourceware.org/bugzilla/show_bug.cgi?id=14114 */
|
* https://sourceware.org/bugzilla/show_bug.cgi?id=14114 */
|
||||||
dup2(stdin_pipe[0], STDIN_FILENO);
|
dup2(stdin_pipe[0], STDIN_FILENO);
|
||||||
dup2(stdout_pipe[1], STDOUT_FILENO);
|
dup2(stdout_pipe[1], STDOUT_FILENO);
|
||||||
|
|
||||||
|
|
|
@ -266,7 +266,7 @@ bool tree_close_internal(Con *con, kill_window_t kill_window, bool dont_kill_par
|
||||||
* will be mapped when i3 closes its connection (e.g. when
|
* will be mapped when i3 closes its connection (e.g. when
|
||||||
* restarting). This is not what we want, since some apps keep
|
* restarting). This is not what we want, since some apps keep
|
||||||
* unmapped windows around and don’t expect them to suddenly be
|
* unmapped windows around and don’t expect them to suddenly be
|
||||||
* mapped. See http://bugs.i3wm.org/1617 */
|
* mapped. See https://bugs.i3wm.org/1617 */
|
||||||
xcb_change_save_set(conn, XCB_SET_MODE_DELETE, con->window->id);
|
xcb_change_save_set(conn, XCB_SET_MODE_DELETE, con->window->id);
|
||||||
|
|
||||||
/* Ignore X11 errors for the ReparentWindow request.
|
/* Ignore X11 errors for the ReparentWindow request.
|
||||||
|
|
|
@ -316,7 +316,7 @@ void window_update_motif_hints(i3Window *win, xcb_get_property_reply_t *prop, bo
|
||||||
* documentation of this hint is nowhere to be found.
|
* documentation of this hint is nowhere to be found.
|
||||||
* For more information see:
|
* For more information see:
|
||||||
* https://people.gnome.org/~tthurman/docs/metacity/xprops_8h-source.html
|
* https://people.gnome.org/~tthurman/docs/metacity/xprops_8h-source.html
|
||||||
* http://stackoverflow.com/questions/13787553/detect-if-a-x11-window-has-decorations
|
* https://stackoverflow.com/questions/13787553/detect-if-a-x11-window-has-decorations
|
||||||
*/
|
*/
|
||||||
#define MWM_HINTS_FLAGS_FIELD 0
|
#define MWM_HINTS_FLAGS_FIELD 0
|
||||||
#define MWM_HINTS_DECORATIONS_FIELD 2
|
#define MWM_HINTS_DECORATIONS_FIELD 2
|
||||||
|
|
2
src/x.c
2
src/x.c
|
@ -127,7 +127,7 @@ void x_con_init(Con *con) {
|
||||||
/* We explicitly set a background color and border color (even though we
|
/* We explicitly set a background color and border color (even though we
|
||||||
* don’t even have a border) because the X11 server requires us to when
|
* don’t even have a border) because the X11 server requires us to when
|
||||||
* using 32 bit color depths, see
|
* using 32 bit color depths, see
|
||||||
* http://stackoverflow.com/questions/3645632 */
|
* https://stackoverflow.com/questions/3645632 */
|
||||||
mask |= XCB_CW_BACK_PIXEL;
|
mask |= XCB_CW_BACK_PIXEL;
|
||||||
values[0] = root_screen->black_pixel;
|
values[0] = root_screen->black_pixel;
|
||||||
|
|
||||||
|
|
|
@ -57,7 +57,7 @@ sub wait_for_x {
|
||||||
=head2 start_xserver($parallel)
|
=head2 start_xserver($parallel)
|
||||||
|
|
||||||
Starts C<$parallel> (or number of cores * 2 if undef) Xephyr processes (see
|
Starts C<$parallel> (or number of cores * 2 if undef) Xephyr processes (see
|
||||||
http://www.freedesktop.org/wiki/Software/Xephyr/) and returns two arrayrefs: a
|
https://www.freedesktop.org/wiki/Software/Xephyr/) and returns two arrayrefs: a
|
||||||
list of X11 display numbers to the Xephyr processes and a list of PIDs of the
|
list of X11 display numbers to the Xephyr processes and a list of PIDs of the
|
||||||
processes.
|
processes.
|
||||||
|
|
||||||
|
|
|
@ -17,7 +17,7 @@ my $tests_total;
|
||||||
|
|
||||||
sub noninteractive {
|
sub noninteractive {
|
||||||
# CONTINUOUS_INTEGRATION gets set when running under Travis, see
|
# CONTINUOUS_INTEGRATION gets set when running under Travis, see
|
||||||
# http://docs.travis-ci.com/user/ci-environment/ and
|
# https://docs.travis-ci.com/user/ci-environment/ and
|
||||||
# https://github.com/travis-ci/travis-ci/issues/1337
|
# https://github.com/travis-ci/travis-ci/issues/1337
|
||||||
return (! -t STDOUT) || (
|
return (! -t STDOUT) || (
|
||||||
defined($ENV{CONTINUOUS_INTEGRATION}) &&
|
defined($ENV{CONTINUOUS_INTEGRATION}) &&
|
||||||
|
|
|
@ -77,7 +77,7 @@ i3test automatically "use"s C<Test::More>, C<Data::Dumper>, C<AnyEvent::I3>,
|
||||||
C<Time::HiRes>’s C<sleep> and C<i3test::Test> so that all of them are available
|
C<Time::HiRes>’s C<sleep> and C<i3test::Test> so that all of them are available
|
||||||
to you in your testcase.
|
to you in your testcase.
|
||||||
|
|
||||||
See also C<i3test::Test> (L<http://build.i3wm.org/docs/lib-i3test-test.html>)
|
See also C<i3test::Test> (L<https://build.i3wm.org/docs/lib-i3test-test.html>)
|
||||||
which provides additional test instructions (like C<ok> or C<is>).
|
which provides additional test instructions (like C<ok> or C<is>).
|
||||||
|
|
||||||
=cut
|
=cut
|
||||||
|
@ -659,7 +659,7 @@ processes, only after all other events are done.
|
||||||
This can be used to ensure the results of a cmd 'focus left' are pushed to
|
This can be used to ensure the results of a cmd 'focus left' are pushed to
|
||||||
X11 and that C<< $x->input_focus >> returns the correct value afterwards.
|
X11 and that C<< $x->input_focus >> returns the correct value afterwards.
|
||||||
|
|
||||||
See also L<http://build.i3wm.org/docs/testsuite.html> for a longer explanation.
|
See also L<https://build.i3wm.org/docs/testsuite.html> for a longer explanation.
|
||||||
|
|
||||||
my $window = open_window;
|
my $window = open_window;
|
||||||
$window->add_hint('urgency');
|
$window->add_hint('urgency');
|
||||||
|
|
|
@ -97,7 +97,7 @@ bool inlinec_connect() {
|
||||||
bool set_xkb_group(int group) {
|
bool set_xkb_group(int group) {
|
||||||
xcb_generic_error_t *err = NULL;
|
xcb_generic_error_t *err = NULL;
|
||||||
// Needs libxcb ≥ 1.11 so that we have the following bug fix:
|
// Needs libxcb ≥ 1.11 so that we have the following bug fix:
|
||||||
// http://cgit.freedesktop.org/xcb/proto/commit/src/xkb.xml?id=8d7ee5b6ba4cf343f7df70372a3e1f85b82aeed7
|
// https://cgit.freedesktop.org/xcb/proto/commit/src/xkb.xml?id=8d7ee5b6ba4cf343f7df70372a3e1f85b82aeed7
|
||||||
xcb_void_cookie_t cookie = xcb_xkb_latch_lock_state_checked(
|
xcb_void_cookie_t cookie = xcb_xkb_latch_lock_state_checked(
|
||||||
conn,
|
conn,
|
||||||
XCB_XKB_ID_USE_CORE_KBD, /* deviceSpec */
|
XCB_XKB_ID_USE_CORE_KBD, /* deviceSpec */
|
||||||
|
|
|
@ -44,13 +44,13 @@ my $header = <<'EOF';
|
||||||
# vim:ts=4:sw=4:expandtab
|
# vim:ts=4:sw=4:expandtab
|
||||||
#
|
#
|
||||||
# Please read the following documents before working on tests:
|
# Please read the following documents before working on tests:
|
||||||
# • http://build.i3wm.org/docs/testsuite.html
|
# • https://build.i3wm.org/docs/testsuite.html
|
||||||
# (or docs/testsuite)
|
# (or docs/testsuite)
|
||||||
#
|
#
|
||||||
# • http://build.i3wm.org/docs/lib-i3test.html
|
# • https://build.i3wm.org/docs/lib-i3test.html
|
||||||
# (alternatively: perldoc ./testcases/lib/i3test.pm)
|
# (alternatively: perldoc ./testcases/lib/i3test.pm)
|
||||||
#
|
#
|
||||||
# • http://build.i3wm.org/docs/ipc.html
|
# • https://build.i3wm.org/docs/ipc.html
|
||||||
# (or docs/ipc)
|
# (or docs/ipc)
|
||||||
#
|
#
|
||||||
# • http://onyxneon.com/books/modern_perl/modern_perl_a4.pdf
|
# • http://onyxneon.com/books/modern_perl/modern_perl_a4.pdf
|
||||||
|
|
|
@ -5,7 +5,7 @@ set -x
|
||||||
|
|
||||||
for f in $(grep '\.html$' debian/i3-wm.docs | grep -v 'docs/refcard.html' | grep -v 'docs/lib-i3test')
|
for f in $(grep '\.html$' debian/i3-wm.docs | grep -v 'docs/refcard.html' | grep -v 'docs/lib-i3test')
|
||||||
do
|
do
|
||||||
asciidoc -a linkcss -a stylesdir=http://i3wm.org/css -a scriptsdir=http://i3wm.org/js --backend=xhtml11 -f docs/asciidoc-git.conf $(dirname $f)/$(basename $f .html)
|
asciidoc -a linkcss -a stylesdir=https://i3wm.org/css -a scriptsdir=https://i3wm.org/js --backend=xhtml11 -f docs/asciidoc-git.conf $(dirname $f)/$(basename $f .html)
|
||||||
done
|
done
|
||||||
./docs/i3-pod2html i3-dmenu-desktop man/i3-dmenu-desktop.html
|
./docs/i3-pod2html i3-dmenu-desktop man/i3-dmenu-desktop.html
|
||||||
./docs/i3-pod2html i3-save-tree man/i3-save-tree.html
|
./docs/i3-pod2html i3-save-tree man/i3-save-tree.html
|
||||||
|
@ -13,7 +13,7 @@ done
|
||||||
./docs/i3-pod2html testcases/lib/i3test/Test.pm docs/lib-i3test-test.html
|
./docs/i3-pod2html testcases/lib/i3test/Test.pm docs/lib-i3test-test.html
|
||||||
for file in $(sed 's/\.1$/.man/g' debian/i3-wm.manpages)
|
for file in $(sed 's/\.1$/.man/g' debian/i3-wm.manpages)
|
||||||
do
|
do
|
||||||
[ -f "$file" ] && asciidoc -a linkcss -a stylesdir=http://i3wm.org/css -a scriptsdir=http://i3wm.org/js --backend=xhtml11 -f docs/asciidoc-git.conf "$file"
|
[ -f "$file" ] && asciidoc -a linkcss -a stylesdir=https://i3wm.org/css -a scriptsdir=https://i3wm.org/js --backend=xhtml11 -f docs/asciidoc-git.conf "$file"
|
||||||
done
|
done
|
||||||
|
|
||||||
mkdir -p deb/COPY-DOCS
|
mkdir -p deb/COPY-DOCS
|
||||||
|
|
Loading…
Reference in New Issue