# # The program 'vix' I use to launch vi sessions in an xterm # #!/usr/bin/perl -w my $xterm = '/usr/X11R6/bin/xterm'; my $vi = '/bin/vi'; my $single = 0; my @xopts = qw/ -cm +cn -dc -j -s +sb -sl 0 -wf -fg white -bg black /; my @vopts = (); while (@ARGV && $ARGV[0] =~ /^-/) { my $arg = shift; last if $arg eq '--'; push(@xopts, '-iconic'), next if $arg eq '-i'; push(@vopts, '-R'), next if $arg eq '-r'; $single = 1, next if $arg eq '-s'; die "unknown option '$arg'\n"; } @ARGV = '' unless @ARGV; for ($single ? \@ARGV : @ARGV) { my $pid = fork; die "fork: $!\n" unless defined $pid; next if $pid; my $name = $single ? "vix session" : $_; exec $xterm, @xopts, -name => $name, -title => $name, -e => $vi, @vopts, $single ? @$_ : $_; }