Links (web browser)

From Wikipedia, the free encyclopedia
Links
Developer(s)Mikuláš Patočka
Initial release1999; 25 years ago (1999)
Stable release
2.29[1] Edit this on Wikidata / 21 March 2023
Preview releaseNone (N/A) [±]
Written inC
Operating systemWindows, macOS, OS/2, Unix-like, OpenVMS, DOS
TypeWeb browser
LicenseGPL-2.0-or-later
Websitelinks.twibright.com

Links is a free software text and graphical web browser with a pull-down menu system.[2] It renders complex pages, has partial HTML 4.0 support (including tables and frames[3] 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 original version of Links was developed by Mikuláš Patočka in the Czech Republic. His group Twibright Labs later developed version 2 of the Links browser, which displays graphics, and renders fonts in different sizes (with spatial anti-aliasing), but no longer supports JavaScript (it used to, up to version 2.1pre28). The resulting browser is very fast, but does not display many pages as intended. The graphical mode works even on Unix systems without the X Window System or any other window environment, using either SVGAlib or the framebuffer of the system's graphics card.

Graphics stack[edit]

The graphics stack has several peculiarities for a web browser. The fonts displayed by Links are not derived from the system,[4] 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; 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 color. This Floyd-Steinberg dithering engine[4] 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.

Scaled down images 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 color fringing caused by 8-Bit gamma correction built into the X server. It also increases the perceived color depth by over 24 bits per pixel.

Links has graphics drivers for the X Server, Linux framebuffer, svgalib, OS/2 Presentation Manager, and AtheOS GUI.

Forks[edit]

ELinks[edit]

Experimental/Enhanced Links (ELinks) is a fork of Links led by Petr Baudis. It is based on Links 0.9.[5] It has a more open development and incorporates patches from other Links versions (such as additional extension scripting in Lua) and from Internet users.[6]

Hacked Links[edit]

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.[citation needed]

As of April 2016, the last release of Hacked Links is that of July 9, 2003, with some further changes unreleased.[7]

Other[edit]

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.[8]

The BeOS port was updated by François Revol who also added GUI support.[9] It also runs on Haiku.

References[edit]

  1. ^ "ChangeLog".
  2. ^ Links home page
  3. ^ Legan, Dallas (September 2001), Text-Mode Web Browsers for OS/2, The Southern California OS/2 User Group, retrieved August 16, 2010
  4. ^ a b "Links user documentation". links.twibright.com. Retrieved 2023-09-07.
  5. ^ "ELinks history page". Retrieved 14 December 2010.
  6. ^ Bolso, Erik Inge (8 March 2005). "2005 Text Mode Browser Roundup". Linux Journal. Retrieved 5 August 2010.
  7. ^ "ChangeLog", Hacked Links Project, October 28, 2003, archived from the original on 2016-04-24, retrieved 2016-04-24
  8. ^ "Home / links2", PSPRadio, SourceForge, retrieved July 9, 2012
  9. ^ Revol, Francois (May 3, 2008), BeOS port patch, retrieved July 9, 2012

External links[edit]