Links (web browser)
Encyclopedia
Links is an open source
Open source
The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...

 text
Character (computing)
In computer and machine-based telecommunications terminology, a character is a unit of information that roughly corresponds to a grapheme, grapheme-like unit, or symbol, such as in an alphabet or syllabary in the written form of a natural language....

 and graphic web browser
Web browser
A web browser is a software application for retrieving, presenting, and traversing information resources on the World Wide Web. An information resource is identified by a Uniform Resource Identifier and may be a web page, image, video, or other piece of content...

 with a pull-down menu system. It renders complex pages, has partial HTML
HTML
HyperText Markup Language is the predominant markup language for web pages. HTML elements are the basic building-blocks of webpages....

 4.0 support (including tables and frames
Framing (World Wide Web)
When using web browsers, the terms frames or frameset refer to the display of two or more web pages or media elements displayed side-by-side within the same browser window...

 and support for multiple character sets such as UTF-8
UTF-8
UTF-8 is a multibyte character encoding for Unicode. Like UTF-16 and UTF-32, UTF-8 can represent every character in the Unicode character set. Unlike them, it is backward-compatible with ASCII and avoids the complications of endianness and byte order marks...

), supports color and monochrome terminals and allows horizontal scrolling.

It is oriented toward visual users who want to retain many typical elements of graphical user interfaces (pop up windows, menus etc.) in a text-only environment. The focus on intuitive usability makes it suitable as a web browser for low-end terminals in libraries, Internet cafes etc.

The original version of Links was developed by Mikuláš Patočka in the Czech Republic
Czech Republic
The Czech Republic is a landlocked country in Central Europe. The country is bordered by Poland to the northeast, Slovakia to the east, Austria to the south, and Germany to the west and northwest....

. His group, Twibright Labs, later developed version 2 of the Links browser, that displays graphics, renders fonts in different sizes (with anti-aliasing
Anti-aliasing
In digital signal processing, spatial anti-aliasing is the technique of minimizing the distortion artifacts known as aliasing when representing a high-resolution image at a lower resolution...

) and supports JavaScript
JavaScript
JavaScript is a prototype-based scripting language that is dynamic, weakly typed and has first-class functions. It is a multi-paradigm language, supporting object-oriented, imperative, and functional programming styles....

 (up to version 2.1pre28). The resulting browser is very fast, but it does not display many pages as they were intended. The graphical mode works even on Unix
Unix
Unix is a multitasking, multi-user computer operating system originally developed in 1969 by a group of AT&T employees at Bell Labs, including Ken Thompson, Dennis Ritchie, Brian Kernighan, Douglas McIlroy, and Joe Ossanna...

 systems without X
X Window System
The X window system is a computer software system and network protocol that provides a basis for graphical user interfaces and rich input device capability for networked computers...

 or any other window environment, using either SVGALib
SVGALib
SVGAlib is an open-source low-level graphics library which runs on Linux and FreeBSD and allows programs to change video mode and display full-screen graphics. Some popular games like Quake and Doom used it in their original releases....

 or the framebuffer
Framebuffer
A framebuffer is a video output device that drives a video display from a memory buffer containing a complete frame of data.The information in the memory buffer typically consists of color values for every pixel on the screen...

 of the system's graphics card.

ELinks

ELinks ("Experimental/Enhanced Links") is a fork of Links led by Petr Baudiš. 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
Lua programming language
Lua is a lightweight multi-paradigm programming language designed as a scripting language with extensible semantics as a primary goal. Lua has a relatively simple C API compared to other scripting languages.- History :...

) and from Internet users.

Links Hacked

Links Hacked 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
Plan 9 from Bell Labs
Plan 9 from Bell Labs is a distributed operating system. It was developed primarily for research purposes as the successor to Unix by the Computing Sciences Research Center at Bell Labs between the mid-1980s and 2002...

. 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.

Other ports

It has also been ported to run on the Sony PSP
PlayStation Portable
The is a handheld game console manufactured and marketed by Sony Corporation Development of the console was announced during E3 2003, and it was unveiled on , 2004, at a Sony press conference before E3 2004...

 platform by Rafael Cabezas (Raf).

The BeOS
BeOS
BeOS is an operating system for personal computers which began development by Be Inc. in 1991. It was first written to run on BeBox hardware. BeOS was optimized for digital media work and was written to take advantage of modern hardware facilities such as symmetric multiprocessing by utilizing...

 port was updated by François Revol who also added GUI support. It also runs on Haiku
Haiku (operating system)
Haiku is a free and open source operating system compatible with BeOS. Its development began in 2001, and the operating system became self-hosting in 2008, with the first alpha release in September 2009, the second in May 2010 and the third in June 2011....

.

Graphics stack

The graphics stack has several peculiarities unusual for a web browser. The fonts displayed by Links are not derived from the system, but compiled into the binary as grayscale bitmaps in PNG format. This allows the browser to be a single executable file independent of the system libraries, however it increases the size of the executable to about 5 MB.

The fonts are antialiased without hinting and for small line pitch an artificial sharpening is employed to increase legibility. Subpixel sampling further increases legibility on LCD displays. This allowed Links to have antialiased fonts at a time when antialiased font libraries were uncommon.

All graphical elements (images and text) are first converted from given gamma space (according to known or assumed gamma information in PNG, JPEG etc.) through known user gamma setting into a 48 bits per pixel photometrically linear space where they are resampled with bilinear resampling to the target size, possibly taking aspect ratio correction into account. Then the data are passed through 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 takes into account 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 maximize the speed of the dithering engine without using assembler optimization, which is non-portable.

Images which are scaled down also use subpixel sampling on LCD to increase level of detail.

The reason for this high quality processing is: provide proper realistic up/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 over 24 bits per pixel.

Despite the amount of digital image processing that has to be internally done, Links is one of the fastest graphical web browsers.

Links has graphics driver for X Server, Linux framebuffer, svgalib, OS/2 PMShell and AtheOS GUI. This allows it to run in graphics mode even on platforms which don't have X Server because of lack of implementation or limited resources.

See also

  • List of web browsers
  • Comparison of web browsers
    Comparison of web browsers
    The following tables compare general and technical information for a number of web browsers. Please see the individual products' articles for further information.-Historical web browsers:...


External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK