rc shell -- independent re-implementation for Unix of the Plan 9 shell (from circa 1992)
C Roff M4 Yacc Shell Makefile Other
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.gitignore very minor cleanups May 30, 2018
.vimrc whitespace cleanup Mar 20, 2018
AUTHORS bring ChangeLog up to date Apr 25, 2018
COPYING update to plain zlib license May 16, 2015
ChangeLog tweak ChangeLog May 30, 2018
EXAMPLES whitespace cleanup Mar 20, 2018
Futures remove some things that have happened May 16, 2015
Makefile.am add parse tree dumper with --enable-develop Jun 23, 2017
NEWS release: rc-1.7.4 May 16, 2015
README tidy up READMEs May 17, 2015
RELDATE release rc-1.7.2; fixes CVE-2014-1936 May 16, 2015
ReleaseTime remove RELDATE from ReleaseTime too May 16, 2015
acinclude.m4 remove all references to SIGCLD Feb 17, 2018
addon.c add `x' May 16, 2015
addon.h add `x' May 16, 2015
bootstrap tidy up bootstrap: INSTALL is an artifact May 25, 2017
builtins.c very minor cleanups May 30, 2018
configure.ac bring ChangeLog up to date Apr 25, 2018
configure.scan whitespace cleanup Mar 20, 2018
develop.c whitespace cleanups Mar 26, 2018
develop.h add parse tree dumper with --enable-develop Jun 23, 2017
edit-bsd.c fixes for automake May 16, 2015
edit-edit.c Restore signal handlers when catching signals in edit_alloc() Nov 28, 2015
edit-editline.c whitespace cleanups Mar 26, 2018
edit-null.c fixes for automake May 16, 2015
edit-readline.c implement quoting for command completion May 1, 2018
edit-vrl.c whitespace cleanups Mar 26, 2018
edit.h fixes for automake May 16, 2015
except.c Add "continue" builtin Aug 26, 2017
exec.c fix typos May 26, 2017
execve.c Bug: yet more wrongly ordered header file includes. May 16, 2015
fn.c remove all references to SIGCLD Feb 17, 2018
footobar.c whitespace cleanups Mar 26, 2018
getgroups.h Initial revision May 16, 2015
getopt.c whitespace cleanups Mar 26, 2018
glob.c whitespace cleanups Mar 26, 2018
glom.c Fix exit value for -e with failed backquote or pipeline Oct 27, 2017
hash.c very minor cleanups May 30, 2018
heredoc.c snapshot from cvs: 2005-03-03 May 16, 2015
history.1 Feature: "stuttering" colons for multiple replacements in the May 16, 2015
history.c whitespace cleanups Mar 26, 2018
input.c whitespace cleanups Mar 26, 2018
input.h initial commit May 16, 2015
jbwrap.h don't declare slowbuf here May 16, 2015
lex.c wip Feb 9, 2018
list.c Initial revision May 16, 2015
main.c whitespace cleanups Mar 26, 2018
match.c Initial revision May 16, 2015
mkinstalldirs new mkinstalldirs for some reason Apr 20, 2018
mksignal.c whitespace cleanups Mar 26, 2018
mkstatval.c Initial revision May 16, 2015
nalloc.c whitespace cleanups Mar 26, 2018
nonblock.c initial commit May 16, 2015
open.c fix typos May 26, 2017
parse.y Silence parser conflicts caused by IF NOT May 1, 2018
print.c s/__va_copy/va_copy/g May 16, 2015
proto.h s/__va_copy/va_copy/g May 16, 2015
random.pl initial commit May 16, 2015
rc.1 whitespace cleanup Mar 20, 2018
rc.h support completion through subdirs of path Apr 28, 2018
rc.spec rc.spec was majorly out of date May 16, 2015
redir.c Initial revision May 16, 2015
rlimit.h Bug: parselimit() was broken in various ways (thanks Chris May 16, 2015
signal.c whitespace cleanups Mar 26, 2018
slow initial commit May 16, 2015
stamp-h initial commit May 16, 2015
stamp-h.in initial commit May 16, 2015
stat.h Initial revision May 16, 2015
status.c whitespace cleanups Mar 26, 2018
system-bsd.c Bug: yet more wrongly ordered header file includes. May 16, 2015
system.c reinstate rc_wait (but right this time) May 16, 2015
tmp initial commit May 16, 2015
tree.c do not permit "if not" after "if ... else" Aug 19, 2018
trip.rc add failing test for else / if not case Aug 19, 2018
tripping.c Testing: remove test for large file support, as it causes May 16, 2015
utils.c more tidying up of errors May 16, 2015
var.c snapshot from cvs: 2005-03-03 May 16, 2015
version.c.in replace problematic reldate with git describe (thanks @RamKromberg) Aug 27, 2016
wait.c Bug: yet more wrongly ordered header file includes. May 16, 2015
wait.h Initial revision May 16, 2015
walk.c improved implementation of if_state inspired by borkovic Aug 8, 2018
which.c support completion through subdirs of path Apr 28, 2018

README

rc - a shell
============

This is rc, the Plan 9 shell, reimplemented for Unix by Byron Rakitzis.

The original rc was designed and implemented by Tom Duff at Bell Labs.
It has a small feature set similar to a traditional Bourne shell, but
with a much cleaner and simpler syntax. Among other things, this makes
rc much better than Bourne-compatible shells at handling filenames which
contain spaces. Thus, writing rc scripts is less error-prone than
writing sh scripts.

This reimplementation of rc can be linked with GNU readline, BSD
libedit, or similar line editing libraries, to make a pleasant
interactive shell.

See COPYING for copying information. All files are

   Copyright 1991, 1999, 2001-2003, 2014, 2015 Byron Rakitzis.

See INSTALL for build and installation information.

The current maintainer is Toby Goodwin[1]. Please contact him with any
problems, questions, bug reports, or suggestions.

[1] mailto:toby@paccrat.org