在新的 Ubuntu 上,您通常有这些默认(空)文件夹:
- 下载
- 文件
- 音乐
- 视频
- ...
全部带有特殊标志。
但是,这些徽章是从哪里来的?是什么告诉 Nautilus 显示这些徽章?现在 Nautilus 已经放弃了徽章支持,我无法通过 GUI 检查或更改这些徽章。只是好奇而已……
更新
正如我在 Uri 的回答中发表的评论:这里的每个人都是对的:在这种情况下,我把徽标与文件夹特定的图标混淆了。但是:让我重新表述我的问题:
例如,为什么 Nautilus 知道它必须为这些目录应用特殊图标?实际目录中是否有一些标志、GVFS 中的元数据字段,还是将其硬编码到 Nautilus 中?
(运行 Ubuntu 12.04.1)
答案1
那些不是徽章,在下图中您可以看到徽章位于项目的右下角(在本例中是符号链接/快捷方式)。
用户文件夹的图标通常略微代表了该文件夹的用途。这些文件夹是“特殊的”,与系统上的其他文件夹不同。在此示例中,文件夹是共享/公共文件夹,旁边是常规文件夹。
图标位于两个位置:
- ~/.图标
- /usr/share/图标
根据图标主题,它们将被放置在不同的类别中(大多数在/places)。
这将帮助你更好地理解它:
例如,为什么 Nautilus 知道它必须为这些目录应用特殊图标?实际目录中是否有一些标志、GVFS 中的元数据字段,还是将其硬编码到 Nautilus 中?
这是由 freedesktop 组织制定的标准,称为xdg-用户目录。
来自网站:
xdg-user-dirs 是一款帮助管理“知名”用户目录(如桌面文件夹和音乐文件夹)的工具。它还可以处理文件名的本地化(即翻译)。
其工作方式是 xdg-user-dirs-update 在登录阶段的早期运行。
该程序读取一个配置文件和一组默认目录。然后它在用户主目录中创建这些目录的本地化版本,并在 $(XDG_CONFIG_HOME)/user-dirs.dirs(XDG_CONFIG_HOME 默认为 ~/.config)中设置一个配置文件,应用程序可以读取该文件来找到这些目录。
您可以阅读更多关于XDG 基础目录规范 这里。
答案2
图标由您使用的桌面主题决定 - 您可以在下方找到它们
/usr/share/icons/<ThemeName>/places
和人性那将是/usr/share/icons/Humanity/places
答案3
至少在 13.04 中,它们是徽标,并且可以更改。更改图标会删除文件夹,而这对我来说不是想要的。
我只想对少数几个文件夹执行此操作,所以我觉得不需要 GUI 工具。此外,在 13.04 中,它们都不起作用(我知道您没有这个版本)。下面的方法可以。
gvfs-set-attribute -t stringv file_name metadata::emblems emblem_name default
您可以找到可能的简称和与之一起应用的图像/usr/share/icons/Humanity/emblems
(如果您使用的是默认图标主题,否则请在自定义图标主题中查找。)
例如,我这样做了:
gvfs-set-attribute -t stringv ~/Sites metadata::emblems marketing art
答案4
您可以使用Emblemize
脚本来编辑和检查徽章(适用于 11.10 和 12.04)
安装
sudo add-apt-repository ppa:dr3mro/nautilus-actions-extra
sudo apt-get update
sudo apt-get install nautilus-actions nautilus-actions-extra nautilus-gksu
重新启动 Nautilus...
nautilus -q
结果: