2.28 / 1 October 2022
|Preview release||None (N/A) [±]|
|Operating system||Windows, macOS, OS/2, Unix-like, OpenVMS, DOS|
Links is a free software text and graphical web browser with a pull-down menu system. It renders complex pages, has partial HTML 4.0 support (including tables and frames and support for multiple character sets such as UTF-8), supports color and monochrome terminals, and allows horizontal scrolling.
It is intended for users who want to retain many typical elements of graphical user interfaces (pop-up windows, menus etc.) in a text-only environment.
The graphics stack has several peculiarities for a web browser. The fonts displayed by links are not derived from the system, but compiled into binary as gray scale bitmaps using the Portable Network Graphics (PNG) format. This allows the browser to be one executable file independent of the system libraries. However, this increases the size of the executable to about 5 MB. The fonts are anti-aliased without hinting and for small line pitches, they employ an artificial sharpening to increase legibility. Sub-pixel sampling further increases legibility on LCD displays. This allowed links to have anti-aliased fonts when anti-aliased font libraries were uncommon.
All graphic elements (images and text) are first converted from a given gamma space (according to known or assumed gamma information in PNG, JPEG etc.) through known user gamma setting into a 48 bits pixel photometrically linear space where they are re-sampled with bilinear re-sampling to the target size, possibly taking aspect ratio correction into account. Then the data are passed through a high-performance restartable dithering engine which is used regardless of monitor bit depth, i.e., also for 24 bits per pixel colour. This Floyd-Steinberg dithering engine considers the gamma characteristics of the monitor and uses 768 KiB of dithering tables to avoid time expensive calculations. A technique similar to self-modifying code, function templates, is used to maximise the speed of the dithering engine without using assembly language optimization.
Images that are scaled down also use sub-pixel sampling on LCD to increase the level of detail.
The reason for this high-quality processing is: to provide proper realistic up and downsampling of images, and photorealistic display regardless of the monitor gamma, without colour fringing caused by 8-Bit gamma correction built into the X server. It also increases the perceived colour depth by over 24 bits per pixel.
Links has graphics drivers for the X Server, Linux framebuffer, svgalib, OS/2 PMShell and AtheOS GUI.
Main article: ELinks
Experimental/Enhanced Links (ELinks) is a fork of Links led by Petr Baudis. It is based on Links 0.9. It has a more open development and incorporates patches from other Links versions (such as additional extension scripting in Lua) and from Internet users.
Hacked Links is another version of the Links browser which has merged some of Elinks' features into Links 2.
Andrey Mirtchovski has ported it to Plan 9 from Bell Labs. It is considered a good browser on that operating system, though some users have complained about its inability to cut and paste with the Plan 9 snarf buffer.
As of April 2016[update], the last release of Hacked Links is that of July 9, 2003, with some further changes unreleased.
Links were also ported to run on the Sony PSP platform as PSPRadio by Rafael Cabezas with the last version (2.1pre23_PSP_r1261) released on February 6, 2007.
The BeOS port was updated by François Revol who also added GUI support. It also runs on Haiku.