浏览器插件

出自 ArchWiki
(重定向自 Flash

浏览器插件有两种类型,取决于它们使用的插件 API

  • Netscape 插件 API (NPAPI): 这些插件可以在一些较小的浏览器中使用 (FirefoxChromium 不再 支持这些插件)。
  • Pepper 插件 API (PPAPI): 这些插件可以在一些较小的浏览器中使用 (Chromium 不再 支持这些插件)。

Flash 播放器

Adobe Flash Player

警告: Adobe Flash Player 支持已于 2020 年 12 月 31 日结束。因此,最新的浏览器不再支持这些插件。此外,该项目将不再收到任何错误修复或安全更新。[1]

独立版本可以通过 安装 flashplayer-standaloneAUR 软件包来安装,它可以继续工作而没有时间炸弹。对于仍然支持它的浏览器,flashpluginAUR (NPAPI) 和 pepper-flashAUR (PPAPI) 提供了 Adobe 的最后一个插件,但对其进行了修补以删除“终止开关”。

Lightspark

Lightspark 是另一个尝试提供 Adobe Flash 的免费替代品的项目,旨在支持更新的 Flash 格式。Lightspark 能够回退到 Gnash 以处理旧内容,这使用户能够同时安装两者并享受更广泛的覆盖范围。虽然它仍处于开发阶段,但它支持一些 流行的网站

Lightspark 可以通过 lightsparkAURlightspark-gitAUR 软件包来安装

Ruffle

本文或章节候选与 浏览器扩展 合并。

注意: 这对读者来说是令人困惑的,因为此页面是关于插件的,虽然我们 wiki 上关于 Flash 的大部分内容都在此页面中,但这应该只是指向正确页面的链接。(在 Talk:Browser plugins 中讨论)

Ruffle 是一个用 Rust 编写的 Flash Player 模拟器。它可以作为独立应用程序本地运行,也可以通过使用 WebAssembly 在现代浏览器上运行。与 Flash Player 和 Lightspark 不同,Ruffle 在浏览器中仅作为 扩展 而不是插件提供。虽然仍处于积极开发中,但对 ActionScript 1.0/2.0 的良好支持已经到位并不断改进;ActionScript 3.0 的支持还处于早期阶段。

要本地运行 Ruffle,可以通过 ruffle-gitAURruffle-nightly-binAUR 软件包来安装。作为另一种选择,如果您只想在网络上播放 Flash,则可以将其作为 Firefox 扩展 安装,而无需安装本地软件包。

Java (IcedTea)

注意: 两种 Java 插件都仅支持 NPAPI。

要在您的浏览器中启用 Java 支持,您有两个选择:开源的 OpenJDK (推荐) 或 Oracle 的专有版本。有关为什么推荐 OpenJDK 的详细信息,请参阅 [2]

要使用 OpenJDK,您必须安装 IcedTea 浏览器插件,icedtea-web

如果您想使用 Oracle 的 JRE,请安装 jreAUR 软件包。

多媒体播放

许多浏览器支持 GStreamer 框架,以在 HTML5 <audio><video> 元素中播放多媒体。查看浏览器软件包(或 Web 引擎,例如 webkit2gtkqt5-webkitAUR)的可选依赖项,以查看是否支持 GStreamer。有关每个插件的描述,请参阅 GStreamer#安装

对于您的浏览器原生不支持的媒体格式(例如,大多数浏览器不播放 .mkv 文件),可以使用以下插件

  • VLC 插件 — 使用 VLC 作为后端的 NPAPI 插件。
https://code.videolan.org/videolan/npapi-vlc || npapi-vlcAUR

MozPlugger

警告: MozPlugger 未维护。最终版本是在 2014 年。

MozPlugger 是一个 NPAPI 插件,它可以显示浏览器中的多种多媒体类型。为了实现这一点,它使用了 MPlayer、xine、Evince、OpenOffice、TiMidity 等外部程序。

MozPlugger 可以通过 mozpluggerAUR 软件包安装

要修改或添加 MozPlugger 使用的应用程序,只需修改 /etc/mozpluggerrc 文件。有关 MozPlugger 选项的更完整列表,请参阅 mozplugger(7)

PDF 查看器

/etc/mozpluggerrc 文件中查找包含 pdf 的行,并在 GV() 后修改相应的行,如下所示

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

当使用 Firefox 时,您可能需要在 about:config 中更改 2 个值

  • pdfjs.disabled 的值更改为 true
  • plugin.disable_full_page_plugin_for_types 的值更改为空值。

然后重启 Firefox 以使用该插件。

使用 LibreOffice 代替 OpenOffice

例如,MozPlugger 默认使用 OpenOffice 打开 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"])
...
注意: 请务必也选择 LibreOffice 作为打开 doc 文件的首选应用程序。

在 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])
...