如何自定义 Nemo 文件管理器?

如何自定义 Nemo 文件管理器?

在我的 Ubuntu 18.04 LTS 系统上,我用 Nemo 4.2.3 替换了 Nautilus,因为它具有更多有用的功能。但是,当我使用 Ambiance 主题时,我不得不承认 Nautilus 的“皮肤/主题”对我来说更漂亮。

我想定制 Nemo 皮肤,使其类似于 Nautilus,包括灰色侧边栏。

我做了一个比较:

在此处输入图片描述

答案1

  1. 打开终端窗口Ctrl++Altt
  2. cd ~/.config/gtk-3.0/
  3. gedit gtk.css (若不存在则创建)
  4. 添加以下代码:
/*.nemo-places-sidebar .view { */ 
.nemo-window .sidebar .view {
  background-color: @theme_fg_color;
  color: @theme_bg_color;
}
  1. 保存文件并关闭 gedit
  2. 退出/关闭所有 nemo 窗口nemo -q
  3. 启动 nemo 文件资源管理器nemo

修改前修改后

  1. 关闭 Nemo 窗口后,您会注意到终端窗口中启动的进程仍处于活动状态。它将在 30 秒后自动关闭,或者您可以使用Ctrl+强制关闭它c
  2. 按您的喜好调整...

在此示例中,我参考了我的主题定义的颜色,并反转了它们的“正常用法”,但如果您愿意,您可以直接输入 html 颜色代码:

.nemo-window .sidebar .view {
  background-color: #605e54;
  color: #e5e5e5;
}

这种方法主题独立除非你参考主题颜色。如果您不想让它覆盖“默认”设置,您可以注释掉文件/* .... */中的内容,或者直接删除该文件。gtk.css


其他 CSS 属性:

首先通读一下GTK+ 中的 CSS 概述了解这些风格是如何形成的。

我建议调查主题的源代码,看看它们是否有任何 Nemo 特定的部分,例如这里或[此处]。(https://github.com/linuxmint/mint-themes/blob/712039deb45e465c28dd4c27f65745e7dfb09c9a/src/Mint-Y/gtk-3.0/sass/_applications.scss#L241

GtkStyleContext类常数定义列出代码中将作为常量的属性。可能有助于解读特定感兴趣区域中的一些内容。

很多可能是继承的名称,因为它们将从常见的主题名称中获取分类器,但搜索gtk_style_context_add_class在 github 存储库中带来了几个“新”名字。

src/nemo-config-base-widget.c --> `view`, `primary-toolbar`
src/nemo-properties-window.c --> `primary-toolbar`, `raised`
libnemo-private/nemo-places-tree-view.c --> `places-treeview`
src/nemo-trash-bar.c --> `nemo-cluebar-label`
src/nemo-floating-bar.c --> `floating-bar`
src/nemo-desktop-window.c --> `nemo-desktop-window`,
libnemo-private/nemo-icon-container.c --> `nemo-desktop`
src/nemo-pathbar.c --> `slider-button`
src/nemo-window-pane.c --> `nemo-inactive-pane`
libnemo-private/nemo-icon-canvas-item.c --> `nemo-canvas-item`, `dim-label`
libnemo-private/nemo-tree-view-drag-dest.c --> `treeview-drop-indicator`
src/nemo-window.c --> `nemo-window`
src/nemo-places-sidebar.c --> `nemo-places-sidebar`

例子:

https://github.com/linuxmint/nemo/blob/master/gresources/nemo-style-fallback.css https://github.com/linuxmint/nemo/blob/master/gresources/nemo-style-fallback-mandatory.css https://github.com/linuxmint/nemo/blob/master/gresources/nemo-style-application.css

我的调查:

我看了一些来自 Nemo 的代码发现它正在调用 css-providers。然后“duckling”(不知道如何称呼通过 duckduckgo 进行的“谷歌搜索” xD)找到类似搜索词这段代码其中有评论:

... 初始化 GTK+ 时将读取某些文件。

首先,如果文件$XDG_CONFIG_HOME/gtk-3.0/gtk.css存在,则加载它。

然后,GTK+ 会加载XDG_DATA_HOME/themes/THEME/gtk-VERSION/gtk.css$HOME/.themes/THEME/gtk-VERSION/gtk.css和中的第一个现有文件,其中是当前主题的名称(请参阅设置),是编译 GTK+ 时配置的前缀(除非被环境变量覆盖),是 GTK+ 版本号。如果未找到当前版本的文件,GTK+ 会尝试从 3.0 开始的旧版本。$XDG_DATA_DIRS/themes/THEME/gtk-VERSION/gtk.cssDATADIR/share/themes/THEME/gtk-VERSION/gtk.cssTHEMESettings:gtk-theme-nameDATADIRGTK_DATA_PREFIXVERSION

所以我去~/.config/gtk-3.0/只找到一个名为bookmarks

经过进一步的搜索,我发现这个要点并继续搜索以下所有资源:

AbCdFGH

相关内容