浏览器插件

来自 Arch Linux 中文维基
(重定向自Browser plugins

基于使用的插件API的不同,有两种浏览器插件的类型,

  • Netscape plugin API (NPAPI): 工作于小部分浏览器(FirefoxChromium 不再 支持这些插件).
  • Pepper plugin API (PPAPI): 工作于小部分浏览器 (Chromium 不再 支持这些插件).

Flash players[编辑 | 编辑源代码]

Adobe Flash Player[编辑 | 编辑源代码]

警告: Adobe Flash Player结束支持于2020.12.31.结果, 这些插件都不再支持于任何浏览器。另外,这个项目不再收到任何Bug修复或安全升级。[1]

一个旧的可用版本安装同flashplayer-standaloneAUR包. 这个包推送于硬EOL中插入在Flash Player前,所以这个可继续工作。

Gnash[编辑 | 编辑源代码]

警告: Gnash并未积极维护。[2] 最后的版本发布在2012.

Gnash 是一个Adobe Flash Player的自由替代。它同时可作为一个电脑和嵌入式设备的播放器。同时作为一个浏览器插件,它支持SWF格式到版本7(协同一些版本8和9的特性)以及80%的ActionScript2.0。

Gnash 可被安装gnash-gitAUR包.

Lightspark[编辑 | 编辑源代码]

Lightspark是另一个提供Adobe Flash 针对新Flash格式自由替代的尝试。Lightspark可转而使用Gnash的旧内容,只要提供用户同时安装它们,然后享受更广的适配范围。另外它一直活跃于开发,它支持一些流行网页.

Lightspark 可被安装lightsparkAURlightspark-gitAUR包.

Ruffle[编辑 | 编辑源代码]

Ruffle是一个用Rust写成的Flash Player模拟器.它本地运行为一个独立的程式,同时在所有的现代浏览器通过使用WebAssembly运行。项目仍然在活动的开发中,正式的ActionScript1.0/2.0支援已经就位和改善,ActionScript 3.0支援将到来。

Ruffle可被安装ruffle-gitAURruffle-nightly-binAUR包.

Java (IcedTea)[编辑 | 编辑源代码]

注意: 所有Java插件都是仅支援NPAPI

启用Java支援在你的浏览器,你有两个选项:开源的OpenJDK (推荐) 或甲骨文的专有软件.更详细的关于为什么OpenJDK是被推荐的请见[3]

使用OpenJDK,你需要安装IcedTea浏览器插件,icedtea-web提供它。

如果你想要使用甲骨文的JRE,安装jreAUR包.

多媒体后端[编辑 | 编辑源代码]

许多浏览器使用GStreamer框架来播放HTML5中的多媒体<audio><video>元素。检查你的浏览器包的可选依赖(或web引擎,如 webkit2gtkqt5-webkit)来确定GStreamer是否支援。见GStreamer#Installation予各种插件的描述。

对于你的浏览器无法本地适配的媒体格式(如多数浏览器不播放.mkv文件),接下来的插件可用:

  • VLC Plugin — NPAPI plugin that uses VLC as backend.
https://code.videolan.org/videolan/npapi-vlc || npapi-vlcAUR

MozPlugger[编辑 | 编辑源代码]

警告: MozPlugger 不被维护.最后的版本释放于2014.

MozPlugger是一个可在你浏览器展示多种多媒体格式的NPAPI插件。为了实完成这些,他使用许多附加的程式,如MPlayer, xine, Evince, OpenOffice, TiMidity等。

MozPlugger可被安装于mozpluggerAUR包。

To modify or add applications to be used by MozPlugger just modify the /etc/mozpluggerrc file. For a more complete list of MozPlugger options see mozplugger(7).

PDF查看器[编辑 | 编辑源代码]

如果你想要使用Evince同Mozplugger,例如,你在需要在/etc/mozpluggerrc中寻找包含pdf的行,并修改GV()后的相似行,如下:

repeat noisy swallow(evince) fill: evince "$file"

(替换 evince 为一些东西,否则它不是你选择的查看器)。

在Firefox中使用,你需要改变about:config中的两个值:

  • 改变 pdfjs.disabled的值为true;
  • 改变plugin.disable_full_page_plugin_for_types的值为空.

然后重启Firefox以使用插件。

Use LibreOffice instead of OpenOffice[编辑 | 编辑源代码]

例如, MozPlugger默认使用OpenOffive打开doc文件。为了替换为Libreoffice,请见这个OpenOffice部分:

/etc/mozpluggerrc
...
### OpenOffice
define([OO],[swallow(VCLSalFrame) fill: ooffice2.0 -nologo -norestore -view $1 "$file"
    swallow(VCLSalFrame) fill: ooffice -nologo -norestore -view $1 "$file"
    swallow(VCLSalFrame) fill: soffice -nologo $1 "$file"])
...

也要添加LibreOffice在列表的开始:

/etc/mozpluggerrc
...
### LibreOffice/OpenOffice
define([OO],[swallow(VCLSalFrame) fill: libreoffice --nologo --norestore --view $1 "$file"
    swallow(VCLSalFrame) fill: ooffice2.0 -nologo -norestore -view $1 "$file"
    swallow(VCLSalFrame) fill: ooffice -nologo -norestore -view $1 "$file"
    swallow(VCLSalFrame) fill: soffice -nologo $1 "$file"])
...
注意: Be sure to also choose LibreOffice as your preferred application to open doc files.

在Kate打开cpp文件[编辑 | 编辑源代码]

另一个简单地例子,如果你用你最喜欢的文本编辑器(例中使用Kate)打开cpp文件来获得语法高亮,只用添加新的片段到你的mozpluggerrc文件:

/etc/mozpluggerrc
text/x-c++:cpp:C++ Source File
text/x-c++:hpp:C++ Header File
    repeat noisy swallow(kate) fill: kate -b "$file"

使用mpv替代MPlayer[编辑 | 编辑源代码]

改变默认的MPlayer为mpv播放器——需要改变必要的地方,例如:

/etc/mozpluggerrc
...
### MPlayer

#define(MP_CMD,[mplayer -really-quiet -nojoystick -nofs -zoom -vo xv,x11 -ao esd,alsa,oss,arts,null -osdlevel 0 $1 </dev/null])
define(MP_CMD,[mpv -really-quiet $1 </dev/null])

#define(MP_EMBED,[embed noisy ignore_errors: MP_CMD(-xy $width -wid $window $1)])
define(MP_EMBED,[embed noisy ignore_errors: MP_CMD(--autofit=$width -wid $window $1)])

#define(MP_NOEMBED,[noembed noisy ignore_errors maxaspect swallow(MPlayer): MP_CMD($1)])
define(MP_NOEMBED,[noembed noisy ignore_errors maxaspect swallow(mpv): MP_CMD($1)])

...

#define(MP_AUDIO,[mplayer -quiet -nojoystick $1 </dev/null])
define(MP_AUDIO,[mpv -really-quiet $1 </dev/null])

#define(MP_AUDIO_STREAM,[controls stream noisy ignore_errors: mplayer -quiet -nojoystick $1 "$file" </dev/null])
define(MP_AUDIO_STREAM,[controls stream noisy ignore_errors: mpv -really-quiet $1 "$file" </dev/null])
...