Conkeror

Last updated
Conkeror
Developer(s) Shawn Betts, John J. Foerch, Jeremy Maitin-Shepard
Stable release
1.0.4 [1] / November 29, 2017;6 years ago (2017-11-29)
Written inJavaScript
Operating system Cross-platform
Platform XULRunner
Type Web browser
License GNU GPL, GNU LGPL and MPL
Website conkeror.org

Conkeror is a Mozilla-based web browser designed to be navigated primarily by a computer keyboard. Its design is mainly patterned after the text editor GNU Emacs, with some influence from other programs, including vi. [2]

Contents

It was originally written by Shawn Betts, the primary author of keyboard-driven ratpoison and Stumpwm tiling window managers. Formerly an extension for the Mozilla Firefox browser, it is now developed for XULRunner as a stand-alone application. Since Firefox 52 ESR (September 2018), when the last official Mozilla browser that supported XULRunner reached end-of-life, there is no officially-supported browser from Mozilla for Conkeror to be based on. [3] Firefox forks like Pale Moon and Waterfox continue to bundle XULRunner and can be used to run Conkeror. [4]

Conkeror is released under the same set of free software licenses as Mozilla: the GNU General Public License, the GNU Lesser General Public License, and the Mozilla Public License.

Browsing

Conkeror emphasizes Emacs-derived key bindings and keyboard-based browser navigation. [5] By pressing a key (f, for "follow", by default), Conkeror brings up a small, numbered label beside every element within the current view [6] on the page that can be clicked. The user can type the number of the link and ENTER to follow the link, [7] or type the link name to narrow down the choices; when the part of the name already typed uniquely identifies a link, it becomes numbered one, highlighted green, and then hitting Enter will follow it.

Conkeror has a large number of standard key bindings, and more can be added. The following are some examples of default key bindings: [8] (key bindings are case sensitive [9] )

Key bindingAction
gsearch/go to URL
ffollow link
C-x kkill current buffer
C-h iConkeror User Manual
C-h bComplete list of key bindings
C-ssearch text forward [6]

Like Emacs, Conkeror makes use of buffers in order to allow multiple pages to remain open at the same time (similar to tabs in traditional browsers). Users can open new buffers and navigate through them using key bindings. For example, C-u C-f opens a hyperlink in a new buffer, C-u C-g goes to a URL or search term in a new buffer, and C-u C-h i opens the start page in a new buffer. Buffers can be cycled through using M-n to go to the next buffer or M-p to go to the previous one. C-x b displays a list of the currently open buffers from which the user can choose a buffer using the up and down arrows. [10]

Customization

The Conkeror browser can be customized in many ways using JavaScript as the scripting language, much in the way that Emacs uses Emacs Lisp. Customizations can be as simple as rebinding keys, but can also be more involved; for instance, writing new interactive commands. By default, Conkeror looks for these customizations in ~/.conkerorrc. If ~/.conkerorrc/ is a directory instead of a file, then all the contained files will be read, which is a technique to enable modularization of bigger customizations.

Conkeror also ships with a number of loadable JavaScript modules, some of which provide core functionality; others are user-loadable and provide additional functionality. [10]

Conkeror has modes in which the key bindings, page display or browser behaviour become uri-specific. [5] Some modes, like xkcd-mode, come by default. In xkcd-mode, the message which is normally displayed when the user mouses over the comic strip is instead displayed in a special font below the strip. Other modes include those for Google Maps, Reddit and YouTube, and modes can be user-defined as well. [10]

Name

The name of the browser is pronounced identically to that of the Konqueror web browser from the KDE suite of desktop software, although according to the Conkeror FAQ, "the full name of the browser in spoken English is 'Conkeror (with a C)'" to avoid confusion.

Also according to the FAQ, the name derives from the name given to the winner of a game of conkers, a children's game involving horse chestnuts on a string, as well as from a brand of beer also called Conkeror.

See also

Notes

  1. Release as 1.0.4. Conkeror repository.
  2. "Conkeror home page". Archived from the original on 2016-10-03. Conkeror is a keyboard-oriented, highly-customizable, highly-extensible web browser based on Mozilla XULRunner, written mainly in JavaScript, and inspired by exceptional software such as Emacs and vi.{{cite web}}: CS1 maint: bot: original URL status unknown (link)
  3. "Alternatives". Conkeror was originally written for Xulrunner, which was deprecated by Mozilla a couple of years ago. It has continued to work on Firefox until the release of Firefox 57 "Quantum", which disabled support for traditional extensions and also removed many APIs that conkeror currently requires. Firefox 52 ESR is still based on Gecko, but it reached end of life on September 5 2018, to be replaced by a Quantum-based release (60). That means there will be no more officially supported browser from Mozilla on which to run Conkeror. As modern web browsers have a large attack surface, this is bad if you have any concerns about security.
  4. Beckert, Axel (2019-03-02). "Public Git Hosting - conkeror.git/commit". repo.or.cz. Retrieved 2020-02-17.
  5. 1 2 Larson, Eric (2010-03-31). "Conkeror: The Best Web Browser (For Emacs Users)". O'Reilly Media . Retrieved 2011-06-30.
  6. 1 2 "Conkeror: "Firefox for Emacs users"". SaltyCrane (Blog). 2009-04-01. Retrieved 2011-07-06.
  7. Spalteholz et al. 2008, p. 2.
  8. Harding 2009, p.  1.
  9. "Conkeror Keys". Stray Notes (Blog). Google. April 2011. Archived from the original on 2019-07-15. Retrieved 2011-07-06.
  10. 1 2 3 Harding 2009, p.  2.

Related Research Articles

<span class="mw-page-title-main">Emacs Lisp</span> Dialect of Lisp used as the primary implementation and extension language for Emacs

Emacs Lisp is a dialect of the Lisp programming language used as a scripting language by Emacs. It is used for implementing most of the editing functionality built into Emacs, the remainder being written in C, as is the Lisp interpreter. Emacs Lisp is also termed Elisp, although there are also older, unrelated Lisp dialects with that name.

Gecko is a browser engine developed by Mozilla. It is used in the Firefox browser, the Thunderbird email client, and many other projects.

A computing platform, digital platform, or software platform is an environment in which software is executed. It may be the hardware or the operating system (OS), a web browser and associated application programming interfaces, or other underlying software, as long as the program code is executed using the services provided by the platform. Computing platforms have different abstraction levels, including a computer architecture, an OS, or runtime libraries. A computing platform is the stage on which computer programs can run.

XUL, which stands for XML User Interface Language, is a user interface markup language developed by Mozilla. XUL is an XML dialect for writing graphical user interfaces, enabling developers to write user interface elements in a manner similar to web pages.

<span class="mw-page-title-main">Firefox</span> Free and open-source web browser by Mozilla

Mozilla Firefox, or simply Firefox, is a free and open-source web browser developed by the Mozilla Foundation and its subsidiary, the Mozilla Corporation. It uses the Gecko rendering engine to display web pages, which implements current and anticipated web standards. In November 2017, Firefox began incorporating new technology under the code name "Quantum" to promote parallelism and a more intuitive user interface. Firefox is available for Windows 10 or later versions, macOS, and Linux. Its unofficial ports are available for various Unix and Unix-like operating systems, including FreeBSD, OpenBSD, NetBSD, illumos, and Solaris Unix. It is also available for Android and iOS. However, as with all other iOS web browsers, the iOS version uses the WebKit layout engine instead of Gecko due to platform requirements. An optimized version is also available on the Amazon Fire TV as one of the two main browsers available with Amazon's Silk Browser.

<span class="mw-page-title-main">Keyboard shortcut</span> Series of computer keys to quickly invoke a software program or perform a preprogrammed action

In computing, a keyboard shortcut also known as hotkey is a series of one or several keys to quickly invoke a software program or perform a preprogrammed action. This action may be part of the standard functionality of the operating system or application program, or it may have been written by the user in a scripting language. Some integrated keyboards also include pointing devices; the definition of exactly what counts as a "key" sometimes differs.

This article provides basic comparisons for notable text editors. More feature details for text editors are available from the Category of text editor features and from the individual products' articles. This article may not be up-to-date or necessarily all-inclusive.

Mozilla Firefox has features that allow it to be distinguished from other web browsers, such as Chrome and Internet Explorer.

Netscape Plugin Application Programming Interface (NPAPI) is a deprecated application programming interface (API) for web browser plugins, initially developed for Netscape Navigator 2.0 in 1995 and subsequently adopted by other browsers.

<span class="mw-page-title-main">Mozilla Application Suite</span> Discontinued Internet suite

The Mozilla Application Suite is a discontinued cross-platform integrated Internet suite. Its development was initiated by Netscape Communications Corporation, before their acquisition by AOL. It was based on the source code of Netscape Communicator. The development was spearheaded by the Mozilla Organization from 1998 to 2003, and by the Mozilla Foundation from 2003 to 2006.

<span class="mw-page-title-main">Pentadactyl</span> Firefox extension

Pentadactyl is a discontinued Firefox extension forked from the Vimperator and designed to provide a more efficient user interface for keyboard-fluent users. The design is heavily inspired by the Vim text editor, and the authors try to maintain consistency with it wherever possible.

<span class="mw-page-title-main">Debian–Mozilla trademark dispute</span> Mozilla-derived software for Debian like Iceweasel, Iceowl, etc.

In 2006, a branding issue developed when Mike Connor, representing the Mozilla Corporation, requested that the Debian Project comply with Mozilla standards for use of the Thunderbird trademark when redistributing the Thunderbird software. At issue were modifications not approved by the Mozilla Foundation, when the name for the software remained the same.

Vimperator is a discontinued Firefox extension forked from the original Firefox extension version of Conkeror and designed to provide a more efficient user interface for keyboard-fluent users. The design is heavily inspired by the Vim text editor, and the authors try to maintain consistency with it wherever possible.

<span class="mw-page-title-main">GNU Emacs</span> GNU version of the Emacs text editor

GNU Emacs is a free software text editor. It was created by GNU Project founder Richard Stallman, based on the Emacs editor developed for Unix operating systems. GNU Emacs has been a central component of the GNU project and a flagship project of the free software movement. Its tag line is "the extensible self-documenting text editor."

Emacs, originally named EMACS, is a family of text editors that are characterized by their extensibility. The manual for the most widely used variant, GNU Emacs, describes it as "the extensible, customizable, self-documenting, real-time display editor". Development of the first Emacs began in the mid-1970s, and work on GNU Emacs, directly descended from the original, is ongoing; its latest version is 29.1, released July 2023.

<span class="mw-page-title-main">Uzbl</span> Open source minimalist web browser

Uzbl is a discontinued free and open-source minimalist web browser designed for simplicity and adherence to the Unix philosophy. Development began in early 2009 and is still considered in alpha software by the developers. The core component of Uzbl is written in C, but other languages are also used, most notably Python. All parts of the Uzbl project are released as free software under GNU GPL-3.0-only.

Firefox was created by Dave Hyatt and Blake Ross as an experimental branch of the Mozilla browser, first released as Firefox 1.0 on November 9, 2004. Starting with version 5.0, a rapid release cycle was put into effect, resulting in a new major version release every six weeks. This was gradually accelerated further in late 2019, so that new major releases occur on four-week cycles starting in 2020.

References