跳转到内容

Nemo

来自 Arch Linux 中文维基

Nemo 是 GNOME/Files(原名 Nautilus)的一个分叉,也是 Cinnamon 桌面环境的默认文件管理器。Nemo 基于 Files 3.4 的代码开发。由于 Files 3.6 移除了即时搜索(type ahead find)和分栏视图等功能,Nemo 应运而生。

安装

安装 nemo包 软件包。

扩展

一些程序可以为 Nemo 添加额外功能。以下是提供这些功能的部分软件包:

  • Gloobus Sushi — 为 Nemo 提供文件预览服务。
https://launchpad.net/gloobus-preview || gloobus-preview包
  • Nemo File Roller — Nemo 的文件归档扩展。
https://github.com/linuxmint/nemo-extensions/tree/master/nemo-fileroller || nemo-fileroller包
  • Nemo Compare — 使用 meld包 比较两个文件的工具。
https://github.com/linuxmint/nemo-extensions/tree/master/nemo-compare || nemo-compare包
  • Nemo Preview — 基于 GtkClutter 和 JavaScript 的 Nemo 快速预览工具。
https://github.com/linuxmint/nemo-extensions/tree/master/nemo-preview || nemo-previewAUR
  • Nemo Seahorse — 为 Nemo 提供 PGP 加密和签名功能的扩展。
https://github.com/linuxmint/nemo-extensions/tree/master/nemo-seahorse || nemo-seahorseAUR
  • Nemo Share — Nemo 的 Samba 共享扩展。
https://github.com/linuxmint/nemo-extensions/tree/master/nemo-share || nemo-share包
  • Nemo Terminal — 为 Nemo 提供嵌入式终端窗口。
https://github.com/linuxmint/nemo-extensions/tree/master/nemo-terminal || nemo-terminal包
  • RabbitVCS Nemo — 将 RabbitVCS 集成到 Nemo 中。
http://www.rabbitvcs.org/ || rabbitvcs-nemoAUR

有关所有可用扩展的信息,请参阅 AUR 和 nemo-extensions GitHub 仓库。

配置

Nemo 可以通过图形界面轻松配置,但并非所有选项都包含在 Nemo 的首选项界面中。可以使用 dconf-editor 在 org.nemo 下配置更多选项。

将 Nemo 设置为默认文件管理器

要将 Nemo 设置为默认文件管理器,请执行以下命令:

$ xdg-mime default nemo.desktop inode/directory application/x-gnome-saved-search

显示或隐藏桌面图标

要启用或禁用 Nemo 的桌面图标渲染功能,可以将以下设置修改为 true 或 false(false 表示隐藏,true 表示显示):

$ gsettings set org.nemo.desktop show-desktop-icons false

对于平铺式窗口管理器(例如 i3),这还可以消除控制台中的警告 WARNING **: Can not determine workarea, guessing at layout。

更改 Nemo 的默认终端模拟器

Nemo 默认使用 gnome-terminal包。如果未安装该软件包,那么右键菜单中的“在终端中打开”功能将无法使用,也无法通过 Nemo 运行 Shell 脚本或终端应用程序。

可以使用 gsettings 将默认终端修改为自己偏好的终端应用程序。

$ gsettings set org.cinnamon.desktop.default-applications.terminal exec terminal-name

为了能够从 Nemo 运行 Shell 脚本,还需要为所选终端应用程序设置正确的命令行参数(gnome-terminal包 的默认参数为 -x)。

$ gsettings set org.cinnamon.desktop.default-applications.terminal exec-arg argument

为“在终端中打开”设置键盘快捷键

如果希望编辑键盘快捷键,首先需要修改 /org/cinnamon/desktop/interface/can-change-accels;如果使用 GNOME 桌面,则需要修改 /org/gnome/desktop/interface/can-change-accels。可以通过 dconf-editor 修改,也可以在终端中执行以下命令:

$ gsettings set org.cinnamon.desktop.interface can-change-accels true

对于 GNOME:

$ gsettings set org.gnome.desktop.interface can-change-accels true

编辑或创建 ~/.gnome2/accels/nemo,并添加以下内容(将“F4”替换为所需的快捷键组合):

~/.gnome2/accels/nemo
(gtk_accel_path "<Actions>/DirViewActions/OpenInTerminal" "F4")

可以使用 <Alt>、<Primary> 和 <Shift> 作为修饰键(例如 <Primary><Shift>t)。

设置书签

可以通过编辑 ~/.config/gtk-3.0/bookmarks 配置书签。

~/.config/gtk-3.0/bookmarks
file:///mnt/drive drive
file:///mnt/games games
file:///home/user/Documents/My%20Games My Games

提示与技巧

Nemo Actions

Nemo 允许用户向右键菜单添加自定义操作。文件 /usr/share/nemo/actions/sample.nemo_action 提供了一个 Nemo Action 的示例。

自定义操作文件可以放置在以下目录中:

  • /usr/share/nemo/actions/:适用于整个系统的操作
  • ~/.local/share/nemo/actions/:仅适用于当前用户的操作

操作文件必须使用 .nemo_action 扩展名。

ClamAV 扫描

clamscan.nemo_action
[Nemo Action]
Name=Clam Scan
Comment=Clam Scan

Exec=gnome-terminal -x sh -c "clamscan -r %F | less"

Icon-Name=bug-buddy

Selection=Any

Extensions=dir;exe;dll;zip;gz;7z;rar;

移动文件

archive.nemo_action
[Nemo Action]
Active=true
Name=Archive %N
Comment=Archiving %N will add .archive to the object.
Exec=<archive.py %F>
Selection=S
Extensions=any;
archive.py
#! /usr/bin/python2 -OOt
import sys
import os
import shutil

filename = sys.argv[0]
print "Running " + filename
print "With the following arguments:"
for arg in sys.argv:
    if filename == arg:
        continue
    else:
        print arg
        #os.rename('%s','%s.archive') % (arg,arg)
        shutil.move(arg, arg+".archive")

使用 Meld 比较文件

compare-save-for-later.nemo_action
[Nemo Action]
Active=true
Name=Compare later
Comment=Save file for comparison later.
Exec=<compare.sh save %F>
Icon-Name=meld
Selection=S
Extensions=any
compare-with-saved.nemo_action
[Nemo Action]
Active=true
Name=Compare with saved element
Comment=Compare %F saved file or directory.
Exec=<compare.sh compare %F>
Icon-Name=meld
Selection=S
Extensions=any
compare.sh
#!/bin/bash
savedfile=/var/tmp/compare-save-for-later.$USER
comparator=meld
if [ "$1" == "save" ]; then
	shift
	echo "$*" > "$savedfile"
elif [ "$1" == "compare" ]; then
	shift
	"$comparator" "$*" "$(cat $savedfile)"
fi

文件名包含空格

默认情况下,Nemo 不会对文件名进行转义。这意味着,当同时对多个文件执行操作,且其中某些文件名包含空格时,操作可能无法正常工作。要解决此问题,可以使用 Quote=double。

网络共享与虚拟文件系统

通过安装 gvfs包 和各种 gvfs-* 软件包,可以添加对多种网络文件系统(例如 SMB、NFS、WebDAV 和 Nextcloud)以及部分移动设备(Android MTP、Apple AFC)的支持。

有关更多信息及其他受支持的虚拟文件系统,请参阅 文件管理器功能。

故障排除

控制台显示缩略图生成错误

默认情况下,由于许可证或专利方面的问题,Nemo 不会为某些视频文件生成缩略图,例如使用 AVC 编码的 MP4 和 MKV 文件。因此,控制台中可能出现类似以下的错误:

CinnamonDesktop-WARNING **: Error creating thumbnail for file:///home/username/video.mp4: Unrecognized image file format

此类错误可能出现在 MP4 和其他视频文件中。

要解决此问题,请确保已安装视频文件的缩略图生成器,参阅 文件管理器功能#缩略图预览。同时,还需要确保安装了播放相应视频文件所需的 GStreamer 软件包。

提示:视频文件的缩略图生成功能正常工作后,还可以使用 nemo-preview 预览视频文件。

桌面图标未显示

从 Nemo v3.4.2 开始,桌面由 nemo-desktop 管理。可以将 /usr/share/applications/nemo-autostart.desktop 复制到 ~/.config/autostart/nemo-autostart.desktop,并删除其中的 OnlyShowIn=X-Cinnamon; 行,以配置其自动启动。

(GNOME)打开单个文件时却打开了所有文件

从 Nemo v5.0.1 开始,Nemo 进行了修改,以便在向图像查看器传递多个文件时保留文件的排序顺序。此外,还新增了一项 GNOME 设置,可以启用或禁用此行为。

要解决此问题,请执行:

$ gsettings set org.nemo.preferences image-viewers-with-external-sort "[]"

有关更多信息,请参阅 https://github.com/linuxmint/nemo/issues/2771。