Grail(TM) is a web browser written in Python

Overview
GRAIL 0.6
=========

Grail(TM) is a web browser written in Python, an object-oriented
scripting language.  Grail is distributed in source form.  It requires
that you have a Python interpreter and a Tcl/Tk installation, with the
Python interpreter configured for Tcl/Tk support.

In this file:

	- Licensing issues
	- Future development
	- Hardware requirements
	- Installation
	- Using Grail
	- Web resources
	- Feedback
	- Epilogue


Licensing issues
----------------

The license of Grail allows essentially unrestricted use and
redistribution.  The full text of the license can be found in the file
LICENSE in this directory.  The sources are Copyright (c) CNRI
1996-1999.  Grail is a registered trademark of CNRI.


Future development
------------------

Given the low usage of Grail, CNRI cannot allocate further resources
to this project.  The license allows for derivative projects, so
anyone who has a need for a Python-based or easily modified Internet
browser is free to use the Grail source code as a basis for a new
project.

The Grail development team would be happy to provide anyone seriously
interested in using Grail as the basis for a new project with a copy
of the CVS repository.  We are also able to provide pointers from the 
Grail Web site to any new projects that spring up based on Grail.


Hardware requirements
---------------------

Grail runs on most Unix systems, on Windows NT and 95, and on
Macintosh systems, provided you have enough memory and a fast enough
machine.  (For Windows, 32 Meg RAM and 90 MHz Pentium is a reasonable
minimal configuration.  For Macintosh, a 40 MHz 68k or any PPC, with
24 Meg RAM, is acceptable.)


Installation
------------

There are three steps to take before you can use Grail:

- Install Tcl and Tk.  The versions must be compatible with each other
and with the Python version you are installing in the next step;
currently, the oldest Tcl/Tk version supported is 8.0.  You can get
Tcl/Tk it at http://www.scriptics.com/; or try ftp to ftp.sunlabs.com
in directory /pub/tcl/.

- Install Python 1.5 (or newer if available), configured for use with
Tk.  The URL to get Python is http://www.python.org/; or try ftp to
ftp.python.org in directory /pub/python/src/.  You must enable Tk
support by editing the file Modules/Setup; see the comments in that
file (search for "tkinter") and the main README that comes with Python.

- Install the Grail sources in a convenient place.  Grail is executed
directly from its source directory.  If you are using the /usr/local
hierarchy, the Grail sources could be installed in
/usr/local/lib/grail/.

You can also choose to leave grail.py unchanged and have a shell
script named "grail" which execs the Python interpreter, e.g.:

    exec python /usr/local/lib/grail/grail.py ${1+"$@"}

(On Windows or Macintosh systems, the best thing to do is to create a
shortcut or alias to the file grail.py on the desktop.)


Using Grail
-----------

If the first line of the grail.py script points to a working Python
interpreter with Tk support, you should be able to start Grail by
executing "./grail.py" in the Grail source directory.  Grail figures
out where the source directory is by inspecting sys.argv[0], so in
fact typing the pathname to the script from anywhere should work.

Command line options:

The "-g " option lets you specify an initial geometry for
the first browser window in the standard X11 geometry form:
[x][++], where all dimensions are measured in
pixels.  It is also possible to set the width and height (in character
units) through the General preference panel.

The "-i" option inhibits loading of images for this session.
This option can also be set via the General preference panel.

The "-d " option lets you override the $DISPLAY environment
variable.

Advanced users with a grailrc.py file can use "-q" to inhibit
processing of grailrc.py.  This may be useful during debugging.

Command line arguments:

The only positional command line argument is an optional URL of a page
to display initially.  This does not become your "home page"; use the
General preference panel to change the page loaded by the Home command
in the Go menu, and to choose whether this page should be loaded
initially if no URL is given on the command line.


Web resources
-------------

More information on using Grail can be found through the Grail home
page, at this URL:

    http://grail.cnri.reston.va.us/grail/

This page is also accessible through the "Grail Home Page" item of the
Help menu.


Feedback
--------

Grail 0.6 is the last version of Grail to be released by CNRI.  If a
new project based on Grail appears, we will be glad to point to it
from the Grail Web site, but we are not prepared to respond to bug
reports.

Refer to the Grail Web site to determine if any derived projects have
been started.


Epilogue
--------

"Everything should be made as simple as possible, but no simpler."
	--Albert Einstein

"Nothing is as simple as we hope it will be."
	--Jim Horning

"Simple is as simple does."
	--Forrest Gump
🐍 A Python lib for (de)serializing Python objects to/from JSON

Turn Python objects into dicts or (json)strings and back No changes required to your objects Easily customizable and extendable Works with dataclasses

Ramon Hagenaars 253 Dec 14, 2022
Python MQTT v5.0 async client

gmqtt: Python async MQTT client implementation. Installation The latest stable version is available in the Python Package Index (PyPi) and can be inst

Gurtam 306 Jan 03, 2023
Simple web application, which has a single endpoint, dedicated to annotation parsing and convertion.

Simple web application, which has a single endpoint, dedicated to annotation parsing and conversion.

Pavel Paranin 1 Nov 01, 2021
Hashcrack - A non-object oriented open source, Software for Windows/Linux made in Python 3

Multi Force This project is a non-object oriented open source, Software for Wind

Radiationbolt 3 Jan 02, 2023
A lightweight solution for local Particle development.

neopo A lightweight solution for local Particle development. Features Builds Particle projects locally without any overhead. Compatible with Particle

Nathan Robinson 19 Jan 01, 2023
A simple 3D rigid body simulation written in python

pyRigidBody3d A simple 3D rigid body simulation written in python

30 Oct 07, 2022
Data 25 Star Wars Project With Python

Data 25 Star Wars Project Instructions The character data in your MongoDB database has been pulled from https://swapi.tech/. As well as 'people', the

1 Dec 24, 2021
🛠️ Plugin to integrate Chuy with Poetry

Archived This is bundled with Chuy since v1.3.0. Poetry Chuy Plugin This plugin integrates Chuy with Poetry. Note: This only works in Poetry 1.2.0 or

Eliaz Bobadilla 4 Sep 24, 2021
Attempt at creating organized collection of little handy snippets of code I'm receiving along the way

ChaosCode Attempt at creating organized collection of little handy snippets of code I'm receiving along the way I always considered coding and program

INFU 4 Nov 26, 2022
Convert temps in your Alfred search bar

Alfred Temp Converter Convert temps in your Alfred search bar. Download Here Usage: temp 100f converts to Celsius, Kelvin, and Rankine. temp 100c conv

Justin Hamilton 4 Apr 11, 2022
decorator

Decorators for Humans The goal of the decorator module is to make it easy to define signature-preserving function decorators and decorator factories.

Michele Simionato 734 Dec 30, 2022
The program converts Swiss notes into American notes

Informatik-Programmieren Einleitung: Das Programm rechnet Schweizer Noten in das Amerikanische Noten um. Der Benutzer kann seine Note eingeben und der

2 Dec 16, 2021
Identifies the faulty wafer before it can be used for the fabrication of integrated circuits and, in photovoltaics, to manufacture solar cells.

Identifies the faulty wafer before it can be used for the fabrication of integrated circuits and, in photovoltaics, to manufacture solar cells. The project retrains itself after every prediction, mak

Arun Singh Babal 2 Jul 01, 2022
OpenTracing API for Python

OpenTracing API for Python This library is a Python platform API for OpenTracing. Required Reading In order to understand the Python platform API, one

OpenTracing API 767 Dec 16, 2022
A simple language for new programmers and a toy language ;)

Yell An extremely simple, yet powerful language for new programmers, as well as a toy language ;) Explore the docs » Report Bug · Request Feature Yell

Yell 4 Dec 28, 2021
Your missing PO formatter and linter

pofmt Your missing PO formatter and linter Features Wrap msgid and msgstr with a constant max width. Can act as a pre-commit hook. Display lint errors

Frost Ming 5 Mar 22, 2022
Cool Bioinformatics Scripts

Cool Bioinformatics Scripts qqplot You can use this script in two ways read tons of millions of P values from stdin # python zcat pval.txt.gz | qqplo

8 Oct 30, 2022
A nonebot2 plugin, send news information in a picture form.

A nonebot2 plugin, send news information in a picture form.

幼稚园园长 7 Nov 18, 2022
An extensive password manager built using Python, multiple implementations. Something to meet everyone's taste.

An awesome open-sourced password manager! Explore the docs » View Demo · Report Bug · Request Feature 🐍 Python Password Manager 🔐 An extensive passw

Sam R 7 Sep 28, 2021
Chalice - A tool to facilitate Python based lambda deployment

Chalice is a tool to facilitate Python based lambda deployment. This repo contains the output of my basic exploration of this tool.

Csilla Bessenyei 1 Feb 03, 2022