material-shell

授权协议 GPL-3.0 License
开发语言 Java
所属分类 手机/移动开发、 Android UI 组件
软件类型 开源软件
地区 不详
投 递 者 裴实
操作系统 Android
开源组织
适用人群 未知
 软件概览


A modern desktop interface for Linux extending GNOME Shell.

Providing a unique, simple, productivity-oriented, innovative and automated mouse and keyboard workflow which aims to be faster and easier to use and creates a great user experience.

Powered by its unique spatial model, its modern material design interface, its tiling engine and its persistability.

Get notified about updates and join us at ‎‎

WorkflowHotkeysInstallationUninstallationHistory



Workflow

Created to simplify navigation and reduce the need to manipulate windows in order to improve productivity. It's meant to be 100% predictable and bring the benefits of tools coveted by professionals to everyone.

Spatial Model

This is the core of the workflow and what everything is built around and in our case it's one of the simplest: a Grid

 

A Workspace is an applications container that can be visualized as a row and applications as cells.

Every new application is automatically positioned inside this grid at the end of its workspace row and every new workspaces are appended at the bottom which is very predictable and always sorted automatically.

This allows us to provide intuitive navigation by moving the screen around a larger context. Navigating up and down will change the current workspace and navigating left and right changes the current window(s) on screen.

You can organize your applications by use cases as activities or by applications type as categories.

Interface

Designed to represent the state of the workflow and provide navigation capabilities for both a mouse and a touchscreen.

Layout

The interface is divided in two parts:

In the left panel everything pertains to the system: workspaces state, current system status, notifications, etc.

On the right of the left panel everything pertains to the active workspace: the windows on the workspace's row, the layout switcher, and the windows themselves.

 

The two most important components are the system panel (on the left) and the workspace panel (on the top).

System panel

The system panel is the main component of the left side of the interface. It consists of:

  • Workspace list and switcher: This component lists all the workspaces available and the currently selected one. It allows us to navigate to a specific workspace by clicking on its icon.
  • System tray: This component lists all the information about the system, e.g. network status, bluetooth connectivity, volume, battery, and notification icons.

Workspace panel

The workspace panel is the main component of the right side of the interface. It consists of:

  • App switcher: This component lists all the application windows opened in the current workspace's row and the currently focused one. It allows us to navigate to a specific window within the row by selecting its item.
  • Layout switcher: This component displays the current layout of the workspace and can be clicked to switch to the next available layout.

Design

Made by following the Material Design guidelines - a solid baseline that allows us to provide an aesthetically pleasing and highly accessible interface.

Themes

You can choose between 3 different themes:

  • Dark
  • Light
  • Primary (Colorful one)

And there is also a blurry version available for the more fancy ones !

Tiling engine

It's the tool that automatically organize the application's window for you in a predictable and mutually non-overlapping disposition.

 

Choose at any time which tiling layout suit the most for your need:

  • Maximize: Single window at a time
  • Split: 2 windows side by side
  • Simple: All windows evenly split and stacked along horizontal or vertical axis (useful for ultra wide monitor)
  • Half: One master window on the left then others windows stacked to the right
  • Grid: All windows displayed as a grid

Persistence

The best way to configure the desktop layout is to not have to do it.

Material Shell keeps track of every decision relative to the desktop layout: where are windows, in which workspaces, and in which order.

This allows configuration of the layouts on the go while using it.

When opening a new session Material Shell will restore every window previously present with a "window placeholder which allows you to reopen any of the previous windows easily at the same spot you like to have them.

Hotkeys

Some hotkeys might already be used by GNOME Shell - please check your keybindings first.

Desktop navigation

  • Super+W Navigate to the upper workspace/category.
  • Super+S Navigate to the lower workspace/category.
  • Super+A Focus the window at the left of the current window.
  • Super+D Focus the window at the right of the current window.
  • Super+1, Super+2 ... Super+0 Navigate to specific workspace

Window manipulation

  • Super+Q Kill the current window focused.
  • Super+[MouseDrag] Move window around.
  • Super+Shift+A Move the current window to the left.
  • Super+Shift+D Move the current window to the right.
  • Super+Shift+W Move the current window to the upper workspace.
  • Super+Shift+S Move the current window to the lower workspace.

Extra Hotkeys

  • Super+Space Cycle the tiling layout of the current workspace.
  • Super+Escape Toggle the UI of Material-shell, like a Zen mode.

Installation

Get it in two clicks

Get the most up to date version with Git

  1. Check your GNOME Shell version as we only support gnome-shell >= 3.34.0

  2. Download the extension. Depending on your distribution, there are several ways to acquire it:

Distribution Install via Command
Manjaro PACMAN pacman -S gnome-shell-extension-material-shell
Arch Linux AUR From latest master: yay -S gnome-shell-extension-material-shell-git
Arch Linux AUR From latest release: yay -S gnome-shell-extension-material-shell
Fedora DNF sudo dnf install gnome-shell-extension-material-shell
NixOS nix nix-env -i gnome-shell-extension-material-shell
Others source git clone https://github.com/material-shell/material-shell.git && cd material-shell && make install

(We appreciate package maintainers! If you would like to make a package available for your distro please submit a PR so it can be added here!)

  1. Reload GNOME Shell:
  • On X.org: Hit Alt+F2 and type the command r
  • On Wayland: Log out and back in
  1. Open gnome-tweaks and activate the Material Shell extension OR enable it using
gnome-extensions enable material-shell@papyelgringo

Recommended Additional Configuration

Reset Material Shell

Reset the Material Shell persistent state

If you have some weird behavior or a degradation over time, it can be a good idea to try to reset the Material Shell state.

  1. Open Looking Glass tool by pressing Alt + F2 and type lg
  2. Copy and paste the command global.set_persistent_state('material-shell-state',new GLib.Variant('s', '{}'));
  3. Reload the shell

Reset the Material Shell settings

If you want to discard all the changes of Material Shell settings and reset to default (Including keybindings)

  1. Open a terminal and copy/paste dconf reset -f /org/gnome/shell/extensions/materialshell/

Uninstallation ��

We're sad to see you go. Before you uninstall, leave us some feedback by opening an issue - it will be very helpful in improving Material Shell.

  1. Open gnome-tweaks and disable the Material Shell extension OR disable it using
gnome-extensions disable material-shell@papyelgringo
  1. Delete the extension directory.
rm -rf ~/.local/share/gnome-shell/extensions/material-shell@papyelgringo

History

The project is based on my earlier work on Material Awesome.

  • 重定向符号 在 Linux 中,常用的重定向符号有以下几种: >: 将标准输出重定向到一个文件中,如果文件已经存在,则会覆盖原文件。 >> : 将标准输出重定向到一个文件中,如果文件已经存在,则会在原文件末尾追加内容。 < : 将标准输入重定向到一个文件中。 2> : 将标准错误输出重定向到一个文件或设备中。 &> : 将标准输出和标准错误输出重定向到一个文件中。 | : 管道符号,将前面命令的输

  • 1 example 1: remote visitor servers == $ cat rsh.sh pool=$1 echo $pool while read line do # Skip comments if [ "${line%%\#*}" = "" ] then continue fi

  • 01、 安装gnome3 tweak tool工具 fedora 15 采用gnome3之后,gnome-tweak-tool为配置桌面必不可少的工具。 终端中输入命令:$ sudo yum install gnome-tweak-tool 安装完成。 02、 修改标题栏的宽度 GNOME3 为了适应平板触屏的要求,默认的标题栏太宽了,如果想是标题栏变窄,请用下面的命令去修改: sed -i "/

  • Shell:~/tmp >: rpm -qi ipython Name        : ipython                      Relocations: (not relocatable) Version     : 0.8.2                             Vendor: Fedora Project Release     : 1.fc9     

  • [shell] some command > /dev/null 2>&1 >/dev/null redirects the command standard output to the null device, which is a special device which discards the information written to it 2>&1 redirects the sta

  • Shell script notes I used this tutorial to learn shell scripting: Shell Scripting Tutorial-Steve Parker. I given my executing result for almost every program, and sometimes I alternated the original p

  • Parallel GPF Solution: A GPU-CPU-Based Vectorization Parallelization and Sparse Technique for NR Implementation The attached mainly includes code used in this paper and a figure used to describe the f

 相关资料
  • Material Design for AngularJS Apps Material Design is a specification for aunified system of visual, motion, and interaction design that adapts across different devices. Ourgoal is to deliver a lean,

  • 材料拥有确定不变的特性和固定的行为。了解这些特性将有助于你在一定程度上熟悉材料,这与 Material Design 的构想是一致的。 物理特性 材料具有变化的长宽尺寸(以 dp 为计)和均匀的厚度(1dp)。 (上图)可取 材料的高度和宽度是可变的。 (上图)不可取 材料总是 1dp 厚。 材料会形成阴影。 阴影是由于材料元件之间的相对高度(Z 轴位置)而自然产生的。 (上图)可取 阴影描述材料

  • Material ScrollTop 是轻量级的回到页面顶部按钮,特点: 轻量级 Material Design inspired 涟漪效应 平滑的动态效果 定制化   一些实用的选项 CSS3 (Sass) + jQuery

  • Vue Material 是一个实现 Google 的像素材料设计的 Vue 组件库,它提供了适合所有现代Web浏览器的内置动态主题的组件,它的 API 也简单明了。 安装和使用: 通过 npm or yarn 安装 npm install vue-material@beta --saveyarn add vue-material@beta 像 JSPM and Bower 暂时还不支持 在代码中

  • Material-Animations 是一个很好过渡动画库, 可以应用于 Activity 与 Activity 之间的跳转, Fragment 与 Fragment 之间的跳转, 以及各个 View 变化前后的过渡动画。 效果图: