mirror of https://github.com/0intro/wmii
Add some forgotten files.
This commit is contained in:
parent
b645346147
commit
3724f9331a
|
@ -0,0 +1,6 @@
|
|||
wmii (3.6pre~20070508) unstable; urgency=low
|
||||
|
||||
* First commit of debian directory.
|
||||
|
||||
-- Kris Maglione <jg@suckless.org> Tue, 8 May 2007 18:18:00 -0400
|
||||
|
|
@ -0,0 +1,25 @@
|
|||
Source: wmii
|
||||
Section: x11
|
||||
Priority: optional
|
||||
Maintainer: Daniel Baumann <daniel@debian.org>
|
||||
Build-Depends: libx11-dev, libxext-dev, x11proto-xext-dev, debhelper (>= 4.0)
|
||||
Standards-Version: 3.7.2
|
||||
|
||||
Package: wmii
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends}, dwm-tools
|
||||
Conflicts: wmii2
|
||||
Replaces: wmii2
|
||||
Recommends: wmii-doc
|
||||
Provides: x-window-manager
|
||||
Description: lightweight tabbed and tiled X11 window manager
|
||||
wmii is a dynamic window manager for X11, which is highly customizable and
|
||||
usable with keyboard and mouse. It supports conventional, tabbed and tiled
|
||||
window management with low memory usage. It is highly modularized and uses an
|
||||
inter-process communication interface which is oriented on the 9p protocol of
|
||||
plan9.
|
||||
.
|
||||
This package contains a pre-3.6 snapshot of the window manager; wmii2 contains
|
||||
version 2.
|
||||
.
|
||||
Homepage: <http://wmii.suckless.org/>
|
|
@ -0,0 +1,279 @@
|
|||
Debian packaging based on that of Daniel Baumann <daniel.baumann@panthera-systems.net>,
|
||||
now maintained by the upstream author.
|
||||
|
||||
It was downloaded from <http://wmii.suckless.org/>.
|
||||
Upstream Author: Kris Maglione <jg@suckless.org>
|
||||
|
||||
The majority of this package is under the following license, with exceptions
|
||||
following.
|
||||
|
||||
In the event that a file contains a copyright notice at the top, that is the
|
||||
copyright notice that this license refers to. Otherwise, it is:
|
||||
©2006-2007 Kris Maglione <bsdaemon at comcast dot net>
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a
|
||||
copy of this software and associated documentation files (the "Software"),
|
||||
to deal in the Software without restriction, including without limitation
|
||||
the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||||
and/or sell copies of the Software, and to permit persons to whom the
|
||||
Software is furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
DEALINGS IN THE SOFTWARE.
|
||||
|
||||
Exceptions:
|
||||
|
||||
cmd/util.c and include/util.h are in the Public Domain.
|
||||
|
||||
Original debian packaging is (C) 2005-2007, Daniel Baumann <daniel@debian.org>
|
||||
and is licensed under the GPL, see `/usr/share/common-licenses/GPL'.
|
||||
Whether what remains is worthy of copyright is to be determined by the copyer.
|
||||
Portions by Kris Maglione are in the Public Domain.
|
||||
|
||||
libixp/intmap.c falls under the Lucent Public License, as follows:
|
||||
|
||||
Lucent Public License Version 1.02
|
||||
|
||||
THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS PUBLIC
|
||||
LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE
|
||||
PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.
|
||||
|
||||
1. DEFINITIONS
|
||||
|
||||
"Contribution" means:
|
||||
|
||||
a. in the case of Lucent Technologies Inc. ("LUCENT"), the Original
|
||||
Program, and
|
||||
b. in the case of each Contributor,
|
||||
|
||||
i. changes to the Program, and
|
||||
ii. additions to the Program;
|
||||
|
||||
where such changes and/or additions to the Program were added to the
|
||||
Program by such Contributor itself or anyone acting on such
|
||||
Contributor's behalf, and the Contributor explicitly consents, in
|
||||
accordance with Section 3C, to characterization of the changes and/or
|
||||
additions as Contributions.
|
||||
|
||||
"Contributor" means LUCENT and any other entity that has Contributed a
|
||||
Contribution to the Program.
|
||||
|
||||
"Distributor" means a Recipient that distributes the Program,
|
||||
modifications to the Program, or any part thereof.
|
||||
|
||||
"Licensed Patents" mean patent claims licensable by a Contributor
|
||||
which are necessarily infringed by the use or sale of its Contribution
|
||||
alone or when combined with the Program.
|
||||
|
||||
"Original Program" means the original version of the software
|
||||
accompanying this Agreement as released by LUCENT, including source
|
||||
code, object code and documentation, if any.
|
||||
|
||||
"Program" means the Original Program and Contributions or any part
|
||||
thereof
|
||||
|
||||
"Recipient" means anyone who receives the Program under this
|
||||
Agreement, including all Contributors.
|
||||
|
||||
2. GRANT OF RIGHTS
|
||||
|
||||
a. Subject to the terms of this Agreement, each Contributor hereby
|
||||
grants Recipient a non-exclusive, worldwide, royalty-free copyright
|
||||
license to reproduce, prepare derivative works of, publicly display,
|
||||
publicly perform, distribute and sublicense the Contribution of such
|
||||
Contributor, if any, and such derivative works, in source code and
|
||||
object code form.
|
||||
|
||||
b. Subject to the terms of this Agreement, each Contributor hereby
|
||||
grants Recipient a non-exclusive, worldwide, royalty-free patent
|
||||
license under Licensed Patents to make, use, sell, offer to sell,
|
||||
import and otherwise transfer the Contribution of such Contributor, if
|
||||
any, in source code and object code form. The patent license granted
|
||||
by a Contributor shall also apply to the combination of the
|
||||
Contribution of that Contributor and the Program if, at the time the
|
||||
Contribution is added by the Contributor, such addition of the
|
||||
Contribution causes such combination to be covered by the Licensed
|
||||
Patents. The patent license granted by a Contributor shall not apply
|
||||
to (i) any other combinations which include the Contribution, nor to
|
||||
(ii) Contributions of other Contributors. No hardware per se is
|
||||
licensed hereunder.
|
||||
|
||||
c. Recipient understands that although each Contributor grants the
|
||||
licenses to its Contributions set forth herein, no assurances are
|
||||
provided by any Contributor that the Program does not infringe the
|
||||
patent or other intellectual property rights of any other entity. Each
|
||||
Contributor disclaims any liability to Recipient for claims brought by
|
||||
any other entity based on infringement of intellectual property rights
|
||||
or otherwise. As a condition to exercising the rights and licenses
|
||||
granted hereunder, each Recipient hereby assumes sole responsibility
|
||||
to secure any other intellectual property rights needed, if any. For
|
||||
example, if a third party patent license is required to allow
|
||||
Recipient to distribute the Program, it is Recipient's responsibility
|
||||
to acquire that license before distributing the Program.
|
||||
|
||||
d. Each Contributor represents that to its knowledge it has sufficient
|
||||
copyright rights in its Contribution, if any, to grant the copyright
|
||||
license set forth in this Agreement.
|
||||
|
||||
3. REQUIREMENTS
|
||||
|
||||
A. Distributor may choose to distribute the Program in any form under
|
||||
this Agreement or under its own license agreement, provided that:
|
||||
|
||||
a. it complies with the terms and conditions of this Agreement;
|
||||
|
||||
b. if the Program is distributed in source code or other tangible
|
||||
form, a copy of this Agreement or Distributor's own license agreement
|
||||
is included with each copy of the Program; and
|
||||
|
||||
c. if distributed under Distributor's own license agreement, such
|
||||
license agreement:
|
||||
|
||||
i. effectively disclaims on behalf of all Contributors all warranties
|
||||
and conditions, express and implied, including warranties or
|
||||
conditions of title and non-infringement, and implied warranties or
|
||||
conditions of merchantability and fitness for a particular purpose;
|
||||
ii. effectively excludes on behalf of all Contributors all liability
|
||||
for damages, including direct, indirect, special, incidental and
|
||||
consequential damages, such as lost profits; and
|
||||
iii. states that any provisions which differ from this Agreement are
|
||||
offered by that Contributor alone and not by any other party.
|
||||
|
||||
B. Each Distributor must include the following in a conspicuous
|
||||
location in the Program:
|
||||
|
||||
Copyright (C) 2003, Lucent Technologies Inc. and others. All Rights
|
||||
Reserved.
|
||||
|
||||
C. In addition, each Contributor must identify itself as the
|
||||
originator of its Contribution in a manner that reasonably allows
|
||||
subsequent Recipients to identify the originator of the Contribution.
|
||||
Also, each Contributor must agree that the additions and/or changes
|
||||
are intended to be a Contribution. Once a Contribution is contributed,
|
||||
it may not thereafter be revoked.
|
||||
|
||||
4. COMMERCIAL DISTRIBUTION
|
||||
|
||||
Commercial distributors of software may accept certain
|
||||
responsibilities with respect to end users, business partners and the
|
||||
like. While this license is intended to facilitate the commercial use
|
||||
of the Program, the Distributor who includes the Program in a
|
||||
commercial product offering should do so in a manner which does not
|
||||
create potential liability for Contributors. Therefore, if a
|
||||
Distributor includes the Program in a commercial product offering,
|
||||
such Distributor ("Commercial Distributor") hereby agrees to defend
|
||||
and indemnify every Contributor ("Indemnified Contributor") against
|
||||
any losses, damages and costs (collectively"Losses") arising from
|
||||
claims, lawsuits and other legal actions brought by a third party
|
||||
against the Indemnified Contributor to the extent caused by the acts
|
||||
or omissions of such Commercial Distributor in connection with its
|
||||
distribution of the Program in a commercial product offering. The
|
||||
obligations in this section do not apply to any claims or Losses
|
||||
relating to any actual or alleged intellectual property infringement.
|
||||
In order to qualify, an Indemnified Contributor must: a) promptly
|
||||
notify the Commercial Distributor in writing of such claim, and b)
|
||||
allow the Commercial Distributor to control, and cooperate with the
|
||||
Commercial Distributor in, the defense and any related settlement
|
||||
negotiations. The Indemnified Contributor may participate in any such
|
||||
claim at its own expense.
|
||||
|
||||
For example, a Distributor might include the Program in a commercial
|
||||
product offering, Product X. That Distributor is then a Commercial
|
||||
Distributor. If that Commercial Distributor then makes performance
|
||||
claims, or offers warranties related to Product X, those performance
|
||||
claims and warranties are such Commercial Distributor's responsibility
|
||||
alone. Under this section, the Commercial Distributor would have to
|
||||
defend claims against the Contributors related to those performance
|
||||
claims and warranties, and if a court requires any Contributor to pay
|
||||
any damages as a result, the Commercial Distributor must pay those
|
||||
damages.
|
||||
|
||||
5. NO WARRANTY
|
||||
|
||||
EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS
|
||||
PROVIDED ON AN"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY
|
||||
WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY
|
||||
OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely
|
||||
responsible for determining the appropriateness of using and
|
||||
distributing the Program and assumes all risks associated with its
|
||||
exercise of rights under this Agreement, including but not limited to
|
||||
the risks and costs of program errors, compliance with applicable
|
||||
laws, damage to or loss of data, programs or equipment, and
|
||||
unavailability or interruption of operations.
|
||||
|
||||
6. DISCLAIMER OF LIABILITY
|
||||
|
||||
EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR
|
||||
ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT,
|
||||
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING
|
||||
WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR
|
||||
DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED
|
||||
HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
|
||||
|
||||
7. EXPORT CONTROL
|
||||
|
||||
Recipient agrees that Recipient alone is responsible for compliance
|
||||
with the United States export administration regulations (and the
|
||||
export control laws and regulation of any other countries).
|
||||
|
||||
8. GENERAL
|
||||
|
||||
If any provision of this Agreement is invalid or unenforceable under
|
||||
applicable law, it shall not affect the validity or enforceability of
|
||||
the remainder of the terms of this Agreement, and without further
|
||||
action by the parties hereto, such provision shall be reformed to the
|
||||
minimum extent necessary to make such provision valid and enforceable.
|
||||
|
||||
If Recipient institutes patent litigation against a Contributor with
|
||||
respect to a patent applicable to software (including a cross-claim or
|
||||
counterclaim in a lawsuit), then any patent licenses granted by that
|
||||
Contributor to such Recipient under this Agreement shall terminate as
|
||||
of the date such litigation is filed. In addition, if Recipient
|
||||
institutes patent litigation against any entity (including a
|
||||
cross-claim or counterclaim in a lawsuit) alleging that the Program
|
||||
itself (excluding combinations of the Program with other software or
|
||||
hardware) infringes such Recipient's patent(s), then such Recipient's
|
||||
rights granted under Section 2(b) shall terminate as of the date such
|
||||
litigation is filed.
|
||||
|
||||
All Recipient's rights under this Agreement shall terminate if it
|
||||
fails to comply with any of the material terms or conditions of this
|
||||
Agreement and does not cure such failure in a reasonable period of
|
||||
time after becoming aware of such noncompliance. If all Recipient's
|
||||
rights under this Agreement terminate, Recipient agrees to cease use
|
||||
and distribution of the Program as soon as reasonably practicable.
|
||||
However, Recipient's obligations under this Agreement and any licenses
|
||||
granted by Recipient relating to the Program shall continue and
|
||||
survive.
|
||||
|
||||
LUCENT may publish new versions (including revisions) of this
|
||||
Agreement from time to time. Each new version of the Agreement will be
|
||||
given a distinguishing version number. The Program (including
|
||||
Contributions) may always be distributed subject to the version of the
|
||||
Agreement under which it was received. In addition, after a new
|
||||
version of the Agreement is published, Contributor may elect to
|
||||
distribute the Program (including its Contributions) under the new
|
||||
version. No one other than LUCENT has the right to modify this
|
||||
Agreement. Except as expressly stated in Sections 2(a) and 2(b) above,
|
||||
Recipient receives no rights or licenses to the intellectual property
|
||||
of any Contributor under this Agreement, whether expressly, by
|
||||
implication, estoppel or otherwise. All rights in the Program not
|
||||
expressly granted under this Agreement are reserved.
|
||||
|
||||
This Agreement is governed by the laws of the State of New York and
|
||||
the intellectual property laws of the United States of America. No
|
||||
party to this Agreement will bring a legal action under this Agreement
|
||||
more than one year after the cause of action arose. Each party waives
|
||||
its rights to a jury trial in any resulting litigation.
|
||||
|
|
@ -0,0 +1 @@
|
|||
README
|
|
@ -0,0 +1,7 @@
|
|||
[Desktop Entry]
|
||||
Encoding=UTF-8
|
||||
Name=wmii
|
||||
Comment=wmii pre-3.6 Development Snapshot
|
||||
Exec=wmii
|
||||
Icon=wmii.png
|
||||
Type=XSession
|
|
@ -0,0 +1,9 @@
|
|||
/^[ ]*WMII_TERM[ ]*=/ {
|
||||
print "E " FILENAME
|
||||
print FNR "c"
|
||||
print
|
||||
print "."
|
||||
print "w"
|
||||
nextfile
|
||||
}
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
/^[ ]*WMII_TERM[ ]*=/s/=.*/=x-terminal-emulator/
|
||||
w
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
rc/rc.wmii.rc
|
||||
rc/wmiirc.sh
|
||||
|
|
@ -0,0 +1,97 @@
|
|||
#!/usr/bin/make -f
|
||||
|
||||
#export DH_VERBOSE=1
|
||||
export DH_COMPAT=4
|
||||
|
||||
PREFIX=/usr
|
||||
ETC=/etc/X11
|
||||
FAKE=$(CURDIR)/debian/wmii
|
||||
|
||||
PATCHES=debian/patches
|
||||
UNPATCH=debian/unpatch.ed
|
||||
|
||||
CFLAGS = -g -O0
|
||||
ifeq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
|
||||
# wmii is IO, not CPU bound. Please do not use -O2 here.
|
||||
CFLAGS += -O
|
||||
endif
|
||||
ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
|
||||
DH_STRIP = dh_strip
|
||||
endif
|
||||
|
||||
export CFLAGS
|
||||
|
||||
clean: unpatch
|
||||
dh_testdir
|
||||
dh_testroot
|
||||
rm -f build-stamp
|
||||
|
||||
# Cleaning package
|
||||
-$(MAKE) clean
|
||||
|
||||
dh_clean
|
||||
|
||||
build: build-stamp
|
||||
build-stamp: patch
|
||||
dh_testdir
|
||||
|
||||
$(MAKE) PREFIX=$(PREFIX) ETC=$(ETC)
|
||||
|
||||
touch build-stamp
|
||||
|
||||
install: build
|
||||
dh_testdir
|
||||
dh_testroot
|
||||
dh_clean -k
|
||||
dh_installdirs
|
||||
|
||||
$(MAKE) install PREFIX=$(FAKE)$(PREFIX) ETC=$(FAKE)$(ETC)
|
||||
|
||||
install -D -m 0644 debian/file/wmii.desktop $(FAKE)$(PREFIX)/share/xsessions/wmii.desktop
|
||||
install -D -m 0644 img/icon.png $(FAKE)$(PREFIX)/share/icons/wmii.png
|
||||
|
||||
patch:
|
||||
set -e; \
|
||||
if ! [ -e ${UNPATCH} ]; then \
|
||||
patches=${PATCHES}/*.list; \
|
||||
for i in $$patches; do \
|
||||
files=$$(cat "$$i"); \
|
||||
base=$${i%.list}; \
|
||||
base=$${base##*/}; \
|
||||
awk -f "${PATCHES}/un$$base.awk" $$files >>debian/unpatch.ed; \
|
||||
for f in $$files; do \
|
||||
cat <"${PATCHES}/$$base.ed"; \
|
||||
ed $$f <"${PATCHES}/$$base.ed"; \
|
||||
done; \
|
||||
done; \
|
||||
fi
|
||||
|
||||
unpatch:
|
||||
set -e; \
|
||||
if [ -e ${UNPATCH} ]; then \
|
||||
ed <${UNPATCH}; \
|
||||
rm ${UNPATCH}; \
|
||||
fi
|
||||
|
||||
binary-indep: build install
|
||||
|
||||
binary-arch: build install
|
||||
dh_testdir
|
||||
dh_testroot
|
||||
dh_installchangelogs
|
||||
dh_installdocs
|
||||
dh_install
|
||||
dh_installmenu
|
||||
dh_installwm --priority=30
|
||||
dh_link
|
||||
$(DH_STRIP)
|
||||
dh_compress
|
||||
dh_fixperms
|
||||
dh_installdeb
|
||||
dh_shlibdeps
|
||||
dh_gencontrol
|
||||
dh_md5sums
|
||||
dh_builddeb
|
||||
|
||||
binary: binary-indep binary-arch
|
||||
.PHONY: build clean binary-indep binary-arch binary install
|
|
@ -0,0 +1,2 @@
|
|||
version=3
|
||||
http://www.suckless.org/download/wmii-(.*)\.tar\.gz
|
|
@ -0,0 +1,3 @@
|
|||
?package(wmii):needs="wm" section="WindowManagers"\
|
||||
title="wmii" longtitle="wmii pre-3.6 Development Snapshot"\
|
||||
command="/usr/bin/wmii"
|
|
@ -0,0 +1 @@
|
|||
/usr/bin/wmii
|
Binary file not shown.
After Width: | Height: | Size: 515 B |
|
@ -0,0 +1,21 @@
|
|||
MKSHELL=rc
|
||||
path=$PLAN9/bin $path
|
||||
|
||||
eps = wmii.eps
|
||||
|
||||
epsbox = `{sed -n '/^%%BoundingBox:/{s/.*://p; q;}' $eps}
|
||||
iconwidth = 32
|
||||
iconscale = `{*=$epsbox; hoc -e $iconwidth/'('$3-' '$1')'}
|
||||
iconheight = `{*=$epsbox; hoc -e '('$4-' '$2')*'$iconscale}
|
||||
|
||||
icon.png: $eps
|
||||
x = `{hoc -e -'('$epsbox(1)^')'}
|
||||
y = `{hoc -e -'('$epsbox(2)^')'}
|
||||
gs -q -dBATCH -dNOPAUSE -sDEVICE=pngalpha -sOutputFile=$target -g^$iconwidth^x^$iconheight - <<!
|
||||
$iconscale $iconscale scale
|
||||
$x $y translate
|
||||
($eps) run
|
||||
showpage
|
||||
quit
|
||||
!
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
CFLAGS += \
|
||||
-std=gnu99 \
|
||||
-pipe \
|
||||
-Wall \
|
||||
-Wno-parentheses \
|
||||
-Wno-missing-braces \
|
||||
-Wno-switch \
|
||||
-Wno-comment \
|
||||
-Wno-sign-compare \
|
||||
-Wno-uninitialized \
|
||||
-Wno-unused-parameter \
|
|
@ -0,0 +1,243 @@
|
|||
#!sh
|
||||
# WMII Configuration
|
||||
load std
|
||||
load string
|
||||
load regex
|
||||
|
||||
mount -Aa {os dial unix!/tmp/ns.kris.:1/wmii >[1=0]} / || exit
|
||||
#mount -Aa {os rc -c 'dial $WMII_ADDRESS' >[1=0]} /
|
||||
|
||||
MODKEY=Mod1
|
||||
UP=k
|
||||
DOWN=j
|
||||
LEFT=h
|
||||
RIGHT=l
|
||||
|
||||
WMII_FONT=fixed
|
||||
WMII_NORMCOLORS=('#222222' '#5FBF77' '#2A7F3F')
|
||||
WMII_FOCUSCOLORS=('#ffffff' '#153F1F' '#2A7F3F')
|
||||
WMII_BACKGROUND='#333333'
|
||||
|
||||
WMII_TERM=urxvt
|
||||
|
||||
fn wmiimenu {
|
||||
run_command ${re sg '#' '"#"' (dmenu -b -fn $WMII_FONT
|
||||
-nf ${hd $WMII_NORMCOLORS} -nb ${index 2 $WMII_NORMCOLORS}
|
||||
-sf ${hd $WMII_FOCUSCOLORS} -sb ${index 2 $WMII_FOCUSCOLORS})}
|
||||
}
|
||||
|
||||
fn 9menu {
|
||||
run_command (wmii9menu -font $WMII_FONT
|
||||
-^(nf nb br)^$WMII_NORMCOLORS
|
||||
-^(sf sb br)^$WMII_FOCUSCOLORS $*)
|
||||
}
|
||||
|
||||
# Column Rules
|
||||
echo '/./ -> 60+40' >/colrules
|
||||
|
||||
# Tagging Rules
|
||||
{ echo '/Firefox/ -> www
|
||||
/XMMS.*/ -> ~
|
||||
/MPlayer.*/ -> ~
|
||||
/.*/ -> !
|
||||
/.*/ -> 1
|
||||
' } >/tagrules
|
||||
|
||||
subfn seq {
|
||||
arg := $*
|
||||
result=`{os seq $arg}
|
||||
}
|
||||
|
||||
subfn hostenv {
|
||||
arg := $"*
|
||||
result="{os sh -c ${quote eval echo -n '$'$arg}}
|
||||
}
|
||||
|
||||
# Status Bar Info
|
||||
fn status {
|
||||
echo ${re mg '[0-9]+\.[0-9]+' "{os uptime}} '|' `{date}
|
||||
}
|
||||
|
||||
# Events
|
||||
fn Event-Start {
|
||||
if { ~ $1 wmiirc } {
|
||||
rm -f $progs_file
|
||||
exit
|
||||
}
|
||||
}
|
||||
|
||||
fn Event-Key {
|
||||
echo Key-$1
|
||||
Key-$1 $1
|
||||
}
|
||||
|
||||
fn Event-CreateTag { echo $WMII_NORMCOLORS $* >> /lbar/$"* }
|
||||
fn Event-DestroyTag { rm /lbar/$"* }
|
||||
fn Event-FocusTag { echo $WMII_FOCUSCOLORS $* > /lbar/$"* }
|
||||
fn Event-UnfocusTag { echo $WMII_NORMCOLORS $* > /lbar/$"* }
|
||||
fn Event-UrgentTag { echo '*'${tl $*} > ${quote /lbar/${tl $*} } }
|
||||
fn Event-NotUrgentTag { echo ${tl $*} > ${quote /lbar/${tl $*} } }
|
||||
|
||||
fn Event-LeftBarClick { echo view ${tl $*} >/ctl }
|
||||
lastcmd=''
|
||||
fn Event-ClientMouseDown {
|
||||
(client button) := $*
|
||||
if { ~ $button 3 } {
|
||||
lastcmd = `{9menu -initial $lastcmd Nop Delete}
|
||||
cmp := {~ $do $1}
|
||||
or {and {$cmp Nop} {echo Do nothing}
|
||||
} {and {$cmp Delete} {echo kill >/client/$client/ctl}}
|
||||
}
|
||||
}
|
||||
|
||||
# Actions
|
||||
fn Action {
|
||||
(action args) := $*
|
||||
if {whatis Action-$action | grep -s '^load std; fn '} {
|
||||
Action-$action $args
|
||||
} {
|
||||
run_command ${config_whatis $action} $args </dev/null
|
||||
}
|
||||
}
|
||||
fn Action-quit { echo quit >>/ctl }
|
||||
fn Action-rehash {
|
||||
flag x -
|
||||
proglist ${hostenv PATH} >$progs_file
|
||||
}
|
||||
fn Action-status {
|
||||
if {rm /rbar/status >[2]/dev/null} {
|
||||
sleep 2
|
||||
}
|
||||
echo $WMII_NORMCOLORS >/rbar/status
|
||||
while {status >/rbar/status} {
|
||||
sleep 1
|
||||
}
|
||||
}
|
||||
|
||||
# Key Bindings
|
||||
fn Key-$MODKEY-Control-t {
|
||||
if { ~ `{wc -l /keys} 0 1} {
|
||||
initkeys
|
||||
grabmod $MODKEY >/ctl
|
||||
} {
|
||||
echo $MODKEY-Control-t >/keys
|
||||
echo grabmod Mod3 >/ctl
|
||||
}
|
||||
}
|
||||
|
||||
fn Key-$MODKEY-$LEFT { echo select left >/tag/sel/ctl }
|
||||
fn Key-$MODKEY-$RIGHT { echo select right >/tag/sel/ctl }
|
||||
fn Key-$MODKEY-$DOWN { echo select down >/tag/sel/ctl }
|
||||
fn Key-$MODKEY-$UP { echo select up >/tag/sel/ctl }
|
||||
|
||||
fn Key-$MODKEY-Shift-$LEFT { echo send sel left >/tag/sel/ctl }
|
||||
fn Key-$MODKEY-Shift-$RIGHT { echo send sel right >/tag/sel/ctl }
|
||||
fn Key-$MODKEY-Shift-$DOWN { echo send sel down >/tag/sel/ctl }
|
||||
fn Key-$MODKEY-Shift-$UP { echo send sel up >/tag/sel/ctl }
|
||||
|
||||
fn Key-$MODKEY-space { echo select toggle >/tag/sel/ctl }
|
||||
fn Key-$MODKEY-Shift-space { echo send sel toggle >/tag/sel/ctl }
|
||||
|
||||
fn Key-$MODKEY-d { echo colmode sel default >/tag/sel/ctl }
|
||||
fn Key-$MODKEY-s { echo colmode sel stack >/tag/sel/ctl }
|
||||
fn Key-$MODKEY-m { echo colmode sel max >/tag/sel/ctl }
|
||||
|
||||
fn Key-$MODKEY-Shift-c { echo kill >/client/sel/ctl }
|
||||
|
||||
fn Key-$MODKEY-a { Action `{actionlist | wmiimenu} & }
|
||||
fn Key-$MODKEY-p { run_command `{wmiimenu <$progs_file} </dev/null & }
|
||||
fn Key-$MODKEY-Return { run_command $WMII_TERM & }
|
||||
fn Key-$MODKEY-t { echo view `{read_tags | wmiimenu} >/ctl & }
|
||||
fn Key-$MODKEY-Shift-t {
|
||||
sel := "{cat /client/sel/ctl}
|
||||
read_tags | wmiimenu >/client/$sel/tags
|
||||
}
|
||||
|
||||
for(i in ${seq 0 9}) {
|
||||
fn Key-$MODKEY-$i { echo view ${tl ${splitr $1 -}} >/ctl }
|
||||
fn Key-Shift-$MODKEY-$i { echo ${tl ${splitr $1 -}} >/client/sel/tags}
|
||||
}
|
||||
|
||||
# Functions
|
||||
fn proglist {
|
||||
apply {ls -lp $*} /n/local^${split : $"*} |
|
||||
grep '^[^d][^ ]*x' |
|
||||
getlines {
|
||||
echo ${index 10 ${split ' ' $line}}
|
||||
} | sort | uniq
|
||||
}
|
||||
|
||||
fn getfuns {
|
||||
ls -p /env | grep '^fn-' ^ $1 ^ '-' | getlines {
|
||||
echo ${re s '^fn-[^-]+-' '' $line}
|
||||
}
|
||||
}
|
||||
|
||||
fn actionlist {
|
||||
{ rescue '*' {} {
|
||||
proglist ${hostenv WMII_CONFPATH}
|
||||
}
|
||||
getfuns Action
|
||||
} | sort | uniq
|
||||
}
|
||||
|
||||
fn initkeys {
|
||||
getfuns Key >/keys
|
||||
}
|
||||
|
||||
fn read_tags {
|
||||
ls -p /tag | grep -v '^sel$'
|
||||
}
|
||||
|
||||
subfn config_whatis {
|
||||
result="{os sh -c ${quote eval PATH'='${hostenv WMII_CONFPATH} which $*}}
|
||||
}
|
||||
|
||||
fn run_command {
|
||||
@{ pctl newpgrp
|
||||
vars := 'DISPLAY=:1' 'PATH=/home/kris/wmiiinst/bin:$PATH'
|
||||
os sh -c ${quote eval $vars $*}
|
||||
} $*
|
||||
}
|
||||
|
||||
# WM Configuration
|
||||
{
|
||||
echo grabmod $MODKEY
|
||||
echo border 2
|
||||
echo font $WMII_FONT
|
||||
echo focuscolors $WMII_FOCUSCOLORS
|
||||
echo normcolors $WMII_NORMCOLORS
|
||||
} >/ctl
|
||||
|
||||
# Misc Setup
|
||||
os xsetroot -solid $WMII_BACKGROUND
|
||||
Action status &
|
||||
progs_file=/tmp/proglist.${pid}
|
||||
Action rehash &
|
||||
|
||||
# Tag Bar Setup
|
||||
seltag="{cat /tag/sel/ctl}
|
||||
comm -2 ${pipe read_tags} ${pipe ls -p /lbar/*} | getlines {
|
||||
rm /lbar/$line
|
||||
}
|
||||
read_tags | getlines {
|
||||
if {~ $line $seltag} {
|
||||
echo $WMII_FOCUSCOLORS $line >/lbar/$line
|
||||
} {
|
||||
echo $WMII_NORMCOLORS $line >/lbar/$line
|
||||
}
|
||||
}
|
||||
|
||||
# Keygrab Setup
|
||||
initkeys
|
||||
|
||||
echo Start wmiirc >/event
|
||||
|
||||
# Event Loop
|
||||
getlines {
|
||||
(event args) := ${split ' ' $line}
|
||||
echo Event-$event: $args
|
||||
rescue '*' { echo Exception: $exception } {
|
||||
Event-$event $args
|
||||
}
|
||||
} </event
|
Loading…
Reference in New Issue