--- /dev/null
--- /dev/null
++!# Ian Jackson's X Resources file
++!# Colour specifications for monochrome displays
++
++X-ray*WindowForeground: black
++X-ray*WindowBackground: white
++X-ray.ForegroundColor: black
++X-ray.BackgroundColor: white
++X-ray.CursorForeground: black
++X-ray.CursorBackground: white
++
++*foreground: black
++*background: white
++*borderColor: brown
++*cursorColor: white
++*topShadowColor: red
++*bottomShadowColor: firebrick
++
++xdvi*cursorColor: black
++
++emacs*background: black
++emacs*foreground: white
++emacs*PaneBackground: black
++emacs*PaneForeground: white
++emacs.pointerColor: Cyan
++
++emacs18*background: black
++emacs18*foreground: white
++emacs18*PaneBackground: black
++emacs18*PaneForeground: white
++emacs18.pointerColor: Cyan
++
++xcalc.FKeyFore: White
++xcalc.FKeyBack: LightGray
++
++xclock*highlight: white
++xclock*foreground: white
++xclock*background: black
++xclock*hands: light blue
++
++xload*background: black
++xload*highlight: white
++xload*foreground: light blue
++
++xterm*background: white
++xterm*cursorColor: black
++xterm*pointerColor: white
++xterm*pointerColorBackground: black
++xterm*foreground: black
++
++xlbiff*foreground: black
++xlbiff*background: white
++
++xab*foreground: white
++xab*background: black
++other-xab*foreground: white
++other-xab*background: black
--- /dev/null
--- /dev/null
++!# Ian Jackson's X Resources file
++!# Font specifications for larger fonts
++
++*font: -*-fixed-bold-r-normal-*-15-*-*-*-*-*-*-*
++
++emacs.font: -*-fixed-bold-r-normal-*-15-*-*-*-*-*-*-*
++
++xlock.font: -*-charter-bold-r-*-*-24-*-*-*-*-*-iso8859-*
++
++xterm*font: -*-fixed-bold-r-normal-*-15-*-*-*-*-*-*-*
++
++xab*NewList.font: -*-courier-bold-r-*-*-17-*-*-*-*-*-iso8859-*
++
++xlbiff*font: -*-courier-bold-r-*-*-14-*-*-*-*-*-*-*
--- /dev/null
--- /dev/null
++!# Ian Jackson's X resources file
++!# Font specifications for small fonts (fixed by default)
++
++*font: fixed
++
++emacs.font: fixed
++
++xlock.font: fr-25
++
++xlbiff*font: -*-courier-bold-r-*-*-14-*-*-*-*-*-*-*
++
++mwm*font: r14
--- /dev/null
--- /dev/null
++!# Ian Jackson's X Resources file
++!# Geometry specifications for normal-sized screen
++
++emacs.geometry: 80x48-0+0
++emacs18.geometry: 80x48-0+0
++emacs19.geometry: 80x48-0+0
++epoch*geometry: 80x48-0+0
++
++xcalc.Geometry: 130x230+710+0
++
++xclock*geometry: 120x120+163+0
++
++xdvi*geometry: 865x714+98-0
++
++xload*geometry: 120x120+295+0
++
++xeyes*geometry: 150x100+179+280
++
++Ups.Geometry: 650x875+382+0
++
++Xarchie.toplevel.geometry: 1042x322+52+52
++Xarchie.hostList.geometry: 300x300+0+0
++
++xlbiff*geometry: -0-0
++xlbiff*bottom: TRUE
++
++other-xab*geometry: +-14--95
--- /dev/null
--- /dev/null
++!# Ian Jackson's X Resources file
++!# Geometry specifications for small-sized screen
++
++emacs.geometry: 80x31-0+0
++emacs18.geometry: 80x31-0+0
++
++xcalc.Geometry: 130x230+710+0
++
++xload*geometry: 120x120+295+0
++
++xclock*geometry: 120x120+163+0
++
++xeyes*geometry: 150x100+150+250
++
++xlbiff*geometry: -0+0
--- /dev/null
--- /dev/null
++#!/usr/bin/perl
++# New configuration script
++
++$ENV{'PATH'}.= ':/usr/openwin/bin';
++
++$_= $ENV{'DISPLAY'};
++$_= $ENV{'HOST'}.':0' if m/^:/ || m/^unix:/;
++s/:.*$//;
++s/\.[^0-9].*$//;
++
++$pfx= shift @ARGV;
++@ARGV && warn "arguments beyond the first ignored\n";
++
++if ($_) {
++ $c{'display'}= $_;
++ $_= `xauth -i extract /dev/null $c{'display'}:0 2>&1`;
++ $c{'xauth'}= length($_) ? 'false' : 'true';
++ $_= `xdpyinfo`;
++ $c{'keycodes'}="$1-$2" if m/range:\s+minimum (\d+), maximum (\d+)\s/;
++ if (m/default screen number:\s+(\d+)\s/) {
++ $defscreen= $1;
++ $_=$' if m/\nscreen \#$defscreen:/;
++ $_="$`\n" if m/\n\S/;
++ }
++ ($c{'pixels_x'}, $c{'pixels_y'}) = ($1,$2)
++ if m/dimensions:\s+(\d+)x(\d+) pixels/;
++ ($c{'mm_x'}, $c{'mm_y'}) = ($1,$2)
++ if m/dimensions:.*\D(\d+)x(\d+) millimeters/;
++ ($c{'dpi_x'}, $c{'dpi_y'}) = ($1,$2)
++ if m/resolution:\s+(\d+)x(\d+) dots per inch/;
++ $c{'depth'} = $1 if m/depth of root window:\s+(\d+) planes/;
++ if (m/default visual id:\s+(\w+)\s/) {
++ $defvisual= $1;
++ $_=$' if m/\n visual:\s+visual id:\s+$defvisual\s/;
++ $_="$`\n" if m/\n visual:/;
++ }
++ $c{'visual'} = $1 if m/class:\s+(\w+)\s/;
++ $c{'depth'} = $1 if m/depth:\s+(\d+) planes/;
++}
++
++$c{'host'}= $ENV{'HOST'};
++#$c{'arch'}= $ENV{'ARCH'};
++$_= `uname -sr`; s/\s(\d+)\.\S*/$1/;
++$c{'arch'}= $_;
++
++chdir($ENV{'HOME'});
++chdir('.configs');
++
++open(L, "list") || die "$0: list: $!\n";
++
++while(<L>) {
++ s/\s*$//;
++ next if m/^#/ || m/^$/;
++ $ol= $l= $_;
++ $true=0;
++ while ($l =~ s/\s*(\S+)// && $1 ne ':') {
++ next if $true;
++ $_= $1;
++ if (m/^default$/) {
++ $true= 1;
++ } elsif (m/[<>]=?/) {
++ $lhs= $`;
++ $rhs= $';
++ $op= $&;
++ next unless defined($c{$lhs});
++ $true= eval '$c{$lhs} '.$op.' $rhs';
++ } elsif (m/=/) {
++ $lhs= $`;
++ $rhs= $';
++ next unless defined($c{$lhs});
++ $true= $c{$lhs} eq $rhs;
++ } else {
++ warn "condition `$_' in line $. not understood\n";
++ }
++ }
++ next unless $true;
++ while ($l =~ s/\s*(\S+)//) {
++ unless ($1 =~ m/=/) {
++ warn "consequence `$1' in line $. not understood\n";
++ next;
++ }
++ $c{$`}= $';
++ }
++}
++
++close(L);
++
++while (($k,$v) = each %c) {
++ print " $pfx$k=$v";
++}
++print "\n";
--- /dev/null
--- /dev/null
++#!/bin/sh
++
++set -e
++cd $HOME/.configs
++HOST=`hostname`
++export HOST
++cache=cache/$HOST%$DISPLAY
++newcache=cache/.$$@$HOST
++trap 'rm -f $newcache; exit 0' 0
++if cat $cache 2>/dev/null; then exit 0; fi
++./checkconfig | tee $newcache
++mv $newcache $cache
--- /dev/null
--- /dev/null
++#!/bin/sh
++# Configuration script
++
++display=`echo $DISPLAY | sed -e 's/:.*$//' -e 's/\.[^0-9].*$//'`
++[ "x$display" = x ] && display=$HOST
++
++echo `
++
++grep '^host='"$display"' ' $HOME/.configs/list
++[ "x$HOST" = "x$display" ] && grep '^arch='"$ARCH"' ' $HOME/.configs/list
++grep '^default ' $HOME/.configs/list | sed -e 's/^default //'
++
++` | sed -e 's/^/ /' -e 's/ \([a-z][^ =]*\)=/ '$1'\1=/g'
--- /dev/null
--- /dev/null
++#!/bin/sh
++# logout sequence
++
++cd
++rm -f .history/$HOST~*~
--- /dev/null
--- /dev/null
++#!/bin/sh
++emacs -f make-session&
++xbiff&
++unclutter -noevents&
++xterm -geometry 80x41-0+130&
--- /dev/null
--- /dev/null
++#!/bin/sh
++
++. .configs/setenvir
++
++stty cs8 2>/dev/null || :
++
++xloadt&
++cat /etc/motd
++exec $SHELL
--- /dev/null
--- /dev/null
++#!/bin/sh
++
++. .configs/setenvir
++
++stty cs8 2>/dev/null || :
++
++#xloadt&
++exec really
--- /dev/null
--- /dev/null
++#!/bin/sh
++
++PATH=$HOME/personal/SunOS4/bin:$HOME/public/SunOS4/bin
++PATH=$PATH:/usr/local/bin:/applic/X11R5/bin:/usr/lang:/usr/ucb:/usr/bin
++PATH=$PATH:/etc:/usr/etc:/usr/local/etc
++
++MANPATH=$HOME/personal/SunOS4/man:$HOME/public/SunOS4/man
++MANPATH=$MANPATH:/usr/local/man:/applic/X11R5/man:/usr/lang/man:/usr/man
--- /dev/null
--- /dev/null
++#!/bin/sh
++
++PATH=$HOME/personal/SunOS5/bin:$HOME/public/SunOS5/bin
++PATH=$PATH:/opt/local/bin:/opt/gnu/bin:/opt/X11R5/bin:/opt/SUNWspro/bin
++PATH=$PATH:/usr/ccs/bin:/usr/bin:/usr/ucb:/sbin:/usr/sbin
++
++MANPATH=$HOME/personal/SunOS5/man:$HOME/public/SunOS5/man
++MANPATH=$MANPATH:/opt/local/man:/opt/gnu/man:/opt/X11R5/man
++MANPATH=$MANPATH:/opt/SUNWspro/man:/usr/man
--- /dev/null
--- /dev/null
++#!/bin/bash
++
++echo -n '#'
++
++cd
++eval `cd $HOME && .configs/configure`
++
++emacs -f make-session -geometry 80x60+$(( $pixels_x * 3 - 486 ))+0 &
++
++# if [ "x$chost" = x ]
++# then
++# emacs -f make-session &
++# else
++# (cat .configs/setenvir;
++# echo DISPLAY=$display:0 export DISPLAY
++# echo echo -n ,
++# echo emacs -f make-session &
++# echo echo -n ,) | rsh $chost sh &
++# fi
++
++echo -n '#'
--- /dev/null
--- /dev/null
++#!/bin/sh
++
++xsetroot -fg dimgrey -bg darkslategrey -bitmap bitmap/root
--- /dev/null
--- /dev/null
++#!/bin/sh
++
++xsetroot -grey
--- /dev/null
--- /dev/null
++#!/usr/bin/perl
++
++open(I,"xmodmap -pk |") || die "popen xmodmap -pk: $!\n";
++
++while(<I>) {
++ m/^\s+(\d+)\s+\w+\s+\((\w+)\)\s+\w+\s+\((\w+)\)\s+\w+\s+\(/
++ || next;
++ if ($3 eq 'NoSymbol') {
++ print "keycode $1 = $2\n";
++ } else {
++ print "keycode $1 = $2 $3\n";
++ }
++}
++
++print <<'END'
++keycode 38 = Delete
++keycode 37 = Delete
++keycode 64 = Up
++keycode 80 = Left
++keycode 82 = Right
++keycode 99 = Down
++keycode 40 = F27
++keycode 41 = F29
++keycode 61 = F33
++keycode 62 = F35
++keycode 63 = F27
++keycode 65 = F29
++keycode 81 = F31
++keycode 98 = F33
++keycode 100 = F35
++END
++ ;
--- /dev/null
--- /dev/null
++! keycode 172 = Multi_key
++! keycode 124 = Escape
++! keycode 140 = Prior
++! keycode 201 = Escape
++! keycode 232 = comma less
++! keycode 237 = period greater
++
++
++! keycode 175 = Caps_Lock
++! keycode 176 = Control_L
++
++! keysym Control_L = Caps_Lock
++! keysym Caps_Lock = Control_L
++! remove Lock = Caps_Lock
++! remove Control = Control_L
++! add Lock = Caps_Lock
++! add Control = Control_L
++! add Mod1 = Multi_key Alt_L
++
++! remove Lock = Caps_Lock
++! remove Control = Control_L
++! keysym Control_L = Caps_Lock
++! keysym Caps_Lock = Control_L
++! add Lock = Caps_Lock
++! add Control = Control_L
++
++
++
++
++
++keycode 176 = Control_L
++clear Lock
++clear Control
++add Control = Control_L
++
++keycode 175 = Caps_Lock
++add Lock = Caps_Lock
--- /dev/null
--- /dev/null
++remove Lock = Caps_Lock
++remove Control = Control_L
++keysym Control_L = Caps_Lock
++keysym Caps_Lock = Control_L
++add Lock = Caps_Lock
++add Control = Control_L
++
++keycode 124 = Escape
++
++keycode 140 = Prior
++
++keycode 201 = Escape
--- /dev/null
--- /dev/null
--- /dev/null
--- /dev/null
++remove Lock = Caps_Lock
++keycode 101 = Delete
++keycode 55 = Control_L
++keycode 87 = Caps_Lock
++keycode 11 = Multi_Char
++add Control = Control_L
++add Lock = Caps_Lock
--- /dev/null
--- /dev/null
++keycode 102 = Delete
--- /dev/null
--- /dev/null
--- /dev/null
--- /dev/null
++keycode 11 = 2 quotedbl
++keycode 12 = 3 numbersign
++keycode 22 = BackSpace
++keycode 48 = apostrophe at
++keycode 51 = numbersign asciitilde
++keycode 94 = backslash bar
++keycode 103 = Prior
++keycode 99 = End
++
++remove Lock = Caps_Lock
++remove Control = Control_L
++keycode 37 = Caps_Lock
++keycode 66 = Control_L
++add Lock = Caps_Lock
++add Control = Control_L
--- /dev/null
--- /dev/null
++keycode 21 = Delete
++remove Lock = Caps_Lock
++remove Control = Control_L
++keysym Control_L = Caps_Lock
++keysym Caps_Lock = Control_L
++add Lock = Caps_Lock
++add Control = Control_L
--- /dev/null
--- /dev/null
++#!/bin/sh
++xmodmap - <<END
++keycode 49 = grave asciitilde
++keycode 95 = numbersign asciitilde
++keycode 50 = Delete
++
++remove Lock = Caps_Lock
++remove Control = Control_L
++keycode 83 = Caps_Lock
++keycode 126 = Control_L
++add Lock = Caps_Lock
++add Control = Control_L
++
++remove mod4 = Alt_L
++add mod1 = Alt_L
++END
++
++xset r 103
++xset r 130
--- /dev/null
--- /dev/null
++keycode 17 = Escape Escape
++keycode 73 = comma less
++keycode 81 = period greater
++remove Lock = Caps_Lock
++remove Control = Control_L
++keycode 25 = Caps_Lock
++keycode 28 = Control_L
++add Lock = Caps_Lock
++add Control = Control_L
--- /dev/null
--- /dev/null
++#!/bin/bash
++# Ian Jackson's .xprofile, mostly copied from.... .profile, from
++# (eng.cam.ac.uk) CUED default .profile for /bin/sh or /bin/ksh initialization,
++# then customised for Engineering dept system. This version copied
++# to cl then customised for cl, thence to cam-orl.co.uk, thence
++# to cus.cam.ac.uk.
++
++echo '\e[10;0H'
++
++echo -n 'Hit return for windows... '
++read inputline
++if [ "x$inputline" = x ]
++then
++ exec .configs/x11start
++else
++ exec $SHELL
++fi
--- /dev/null
--- /dev/null
++update -d
++diff -u
--- /dev/null
--- /dev/null
++set confirm off
--- /dev/null
--- /dev/null
++c1 off
++escape ^]^]
++defescape ^Z^A
++nethack on