Lynx (web browser)

Not to be confused with Links (web browser) or LynxOS.
Lynx

""

this article displayed in Lynx
Original author(s) Lou Montulli, Michael Grobe, Charles Rezac
Developer(s) Thomas Dickey
Initial release 1992
Stable release 2.8.8[1] (9 March 2014) [±]
Preview release 2.8.9dev.5[2] (12 April 2015) [±]
Development status Active
Written in ISO C
Operating system Unix-like, DOS, Microsoft Windows and others
Engine fork of libwww
Platform Cross-platform
Available in English
Type web browser
License GNU GPLv2
Website lynx.isc.org

Lynx is a highly configurable text-based web browser for use on cursor-addressable character cell terminals.[3][4] as of 2015, it is the oldest web browser currently in general use and development,[5] having started in 1992.

History

Lynx was a product of the Distributed Computing Group within Academic Computing Services of the University of Kansas,[6][7] and was initially developed in 1992 by a team of students at the university (Lou Montulli, Michael Grobe and Charles Rezac) as a hypertext browser used solely to distribute campus information as part of a Campus-Wide Information Server and for browsing the Gopher space.[8] Beta availability was announced to Usenet on 22 July 1992.[9] In 1993, Montulli added an Internet interface and released a new version (2.0) of the browser.[10][11]

As of July 2007 the support of communication protocols in Lynx is implemented using a version of libwww,[12] forked from the library's code base in 1996.[13] The supported protocols include Gopher, HTTP, HTTPS, FTP, NNTP and WAIS.[4][14] Support for NNTP was added to libwww from ongoing Lynx development in 1994.[15] Support for HTTPS was added to Lynx's fork of libwww later, initially as patches due to concerns about encryption.[16]

Garrett Blythe created DosLynx in April 1994[17] and later joined the Lynx effort as well. Foteos Macrides ported much of Lynx to VMS and maintained it for a time. In 1995, Lynx was released under the GNU General Public License, and is now maintained by a group of volunteers led by Thomas Dickey.

ALynx is an Amiga port of Lynx made in 1995 by P. Marquardt. The current stable version of ALynx is 1.29 and is still available to be downloaded from the Amiga Aminet Repository.

Features

Lynx and Firefox rendering the same page

Browsing in Lynx consists of highlighting the chosen link using cursor keys, or having all links on a page numbered and entering the chosen link's number.[18] Current versions support SSL[4] and many HTML features. Tables are formatted using spaces, while frames are identified by name and can be explored as if they were separate pages. Lynx cannot inherently display various types of non-text content on the web, such as images and video,[3] but it can launch external programs to handle it, such as an image viewer or a video player.[18]

Unlike most web browsers, Lynx does not support JavaScript or Adobe Flash,[19] which some websites require to work correctly.

The speed benefits of text-only browsing are most apparent when using low bandwidth internet connections, or older computer hardware that may be slow to render image-heavy content.

Privacy

Because Lynx does not support graphics, web bugs that track user information are not fetched; therefore, web pages can be read without the privacy concerns of graphic web browsers.[7] However, Lynx does support HTTP cookies,[3] which can also be used to track user information. Lynx therefore supports cookie whitelisting and blacklisting, or alternatively cookie support can be disabled permanently.[18]

Similarly, Lynx also supports browsing histories and page caching,[20] both of which can raise privacy concerns.[21]

Configurability

Lynx accepts configuration options from either command-line options or configuration files. There are 142 command line options according to its help message. The template configuration file lynx.cfg lists 233 configurable features. There is some overlap between the two, although there are command-line options such as -restrict which are not matched in lynx.cfg. In addition to pre-set options by command-line and configuration file, lynx's behavior can be adjusted at runtime using its options menu. Again, there is some overlap between the settings. Lynx implements many of these runtime optional features, optionally (controlled through a setting in the configuration file) allowing the choices to be saved to a separate writable configuration file. The reason for restricting the options which can be saved originated in a usage of lynx which was more common in the mid-1990s, i.e., using lynx itself as a front-end application to the Internet accessed by dial-in connections.[22][23][18]

Accessibility

Because of its refreshable braille display and text-to-speech–friendly interface, Lynx can be used for internet access by visually impaired users.[24][8][14] As Lynx substitutes images, frames and other non-textual content with the text from alt, name and title HTML attributes[25] and allows hiding the user interface elements,[26] the browser becomes specifically suitable for use with cost-effective general purpose screen reading software.[27][28][29] A version of Lynx specifically enhanced for use with screen readers on Windows was developed by IIT Madras.[30]

Remote access

Lynx is also useful for accessing websites from a remotely connected system in which no graphical display is available.[31][32][33] Despite its text-only nature and age, it can still be used to effectively browse much of the modern web, including performing interactive tasks such as editing Wikipedia.[20][34][35]

Web design and robots

Since Lynx will take keystrokes from a text file, it is still very useful for automated data entry, web page navigation, and web scraping, thus Lynx is used in some web crawlers. Web designers may use Lynx to determine the way search engines and web crawlers see the sites they develop.[36][37][38] Online services that provide Lynx's view of a given web page are available.[39]

Lynx is also used to test web sites' performance. As one can run the browser from different locations over remote access technologies like telnet and ssh, one can use Lynx to test the web site's connection performance from different geographical locations simultaneously.[34] Another possible web design application of the browser is quick checking of the site's links.[40]

Supported platforms

Icon for OS/2 port

Lynx was originally designed for Unix-like operating systems, though it was ported to VMS soon after its public release and to other systems, including DOS, Microsoft Windows, Mac OS and OS/2.[6] It was included in the default OpenBSD installation from OpenBSD 2.3 (May 1998)[41] to 5.5 (May 2014),[42] being in the main tree prior to July 2014,[43] subsequently being made available through the ports tree,[44] and can also be found in the repositories of most Linux distributions, as well as in the Fink repository for Mac OS X.[35] Ports to BeOS, MINIX, QNX, AmigaOS[45] and OS/2[7] are also available.

The sources can be built on many platforms, e.g., mention is made of Google's Android operating system.

See also

Notes

References

External links

Wikimedia Commons has media related to Lynx web browser.