NetSurf
Channel: 宇宙のすべての知識 プリンシピア
Date: 01/11/2021

NetSurf, by Wikipedia https://ja.wikipedia.org/wiki?curid=4295075 / CC BY SA 3.0

#Cでプログラムされたフリーソフトウェア
#2002年のソフトウェア
#ウェブブラウザ
#クロスプラットフォームのソフトウェア
#GTKを使用するソフトウェア
NetSurfは、独自のレイアウトエンジンを使用するオープンソースのWebブラウザである。
NetSurfは軽量で可搬性が高いことを重視して設計されており、タブ、ブックマーク、ページサムネイルなどの機能を持っている。
 NetSurfプロジェクトは2002年4月に既存のRISC OS対応Webブラウザの欠陥に関する議論をうけて開始された。
プロジェクトの開始当初から自動ビルドされたRISC OS用バイナリが提供されていた。
 NetSurfは、2004年から2008年の間にDrobe LaunchpadのRISC OSアワードで4回「Best non-commercial software」に選出された。
 NetSurfはmacOSやUnix系OSなどの主流システムだけでなく、一般的でないプラットフォームや古いシステム(例: AmigaOS, Haiku, Atari TOS, RISC OS)での動作をサポートしている。
 このブラウザは2011年にTechRepublicとZDNetが公開したLinux用ブラウザのランキングで8位となった。
 2010年にはw3mよりも優れたCLIブラウザとして取り上げられている。
 NetSurfのコア部分はANSI Cで書かれており、ほとんどのHTML 4とCSS 2.1の仕様に対応する独自のレイアウトエンジンを用いている。
 バージョン2.0以降のNetSurfはHTML5仕様に対応したHTMLパーサーのHubbubを搭載している。
GIF, JPEG, PNG, BMPというような一般的なメディア形式に加え、Sprite, Draw, ArtWorksといったRISC OS固有の形式のファイルのレンダリングが可能である。
 2007年には開発者のJohn-MarkBellによってJavaScriptサポートの追加が提案され、2012年12月にはプレビュー版において初歩的なJavaScriptサポートが追加され、 その後も対応が続き、 2016年2月17日にリリースされたバージョン3.4からリリース版でもDuktapeエンジンを用いたJavaScriptサポートが使用可能になっている 。
 NetSurfは2002年4月にRISC OS用のウェブブラウザとして開発された。
その後2004年6月に開発とデバッグ工程の改善のためにGTKへの移植が行われた以降もRISC OSバージョンに存在していたUI機能を維持している。
現在はUbuntuやNetBSD、OpenBSDなどのシステムにパッケージが存在する。
 以降も開発が続き、最初の安定バージョンがリリースされたのは開発開始から5年後の2007年5月19日、Wakefield RISC OS showに合わせてのことで、イベントではWebサイトでの配信と並行してCDでの販売も行われた。
NetSurf 1.0のリリース後はバグフィックス中心のアップデートが行われ、2007年8月にバージョン1.1が、2008年3月にバージョン1.2がリリースされた。
 NetSurfは2008年のGoogle Summer of Codeに参加し、 4つのプロジェクトを実行した。
これにはGTKフロントエンドの改善、ページ付けされたPDF出力の追加、HTML5準拠のパースライブラリHubbubの開発が含まれている。
 2008年8月11日以降にHTMLの解析に用いられているHubbubはモジュール化され、MITライセンスで他のプロジェクトで使用できるようになっている。
 NetSurfはGoogle Summer of Code 2009にも採択され、DOM管理を司るLibDOMの開発やUIの改善を行った。
UI改善作業においてはRISC OS版にのみ存在していたブックマーク、履歴、Cookie管理、ページ検索機能などの機能の他プラットフォームへの移植がなされた。
 Windowsへの移植が開始されたのもこのときである。
 NetSurfは2010年のGSoCには参加していない。
 マルチプラットフォーム対応を行ったバージョン2.0以降は次のようなバージョンアップがなされている: Linuxで実行されているGTK NetSurf BeOS/Haikuに対応している。
GTKを利用するビルドがAmigaOSに対応する以前は、AmigaO...