Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

【工具自荐】Peninsula:基于macOS刘海的窗口管理器和消息中心 #5641

Open
Celve opened this issue Dec 3, 2024 · 4 comments
Labels

Comments

@Celve
Copy link

Celve commented Dec 3, 2024

Overview

Repo Link: GitHub - Celve/Peninsula: A macOS notch app.
Download: Release v0.0.1 · Celve/Peninsula
iPhone的灵动岛出现之后,我就很期待着 Apple 能为 macOS 上的刘海设计一些类似的功能,很可惜并没有发生,于是近几个月间抽时间为自己写了一个基于刘海的工具。既然 iPhone 叫做 Dynamic Island,我不如就叫这个工具Peninsula(半岛)好了。毕竟 Dynamic Island 四面环像素,而刘海只有三面。
对我来说最重要的是一个窗口切换软件,毕竟 macOS 上的相关体验比较糟心:在多显示器的情况下,打开某个窗口,将会在所有屏幕同时打开这个程序的相关窗口。https://github.com/lwouis/alt-tab-macos很完美地解决了这个问题,但是我不太喜欢他的设计风格。相比之下,[Contexts - Radically simpler & faster window switcher for Mac](https://contexts.co/) 显得更加的简洁且易于查找,不过也已经挺多年没有更新了,且它的设计依旧差了点意思。
与此同时,我还想要一个消息提醒软件。我不希望所有的消息都在屏幕右上方突兀地弹出来——这很干扰我的工作流。我也不想要错过一些重要的信息,直接打开勿扰模式并不现实。我希望在我一段注意力集中的时间结束之后对各种即时信息软件/邮件进行轮询,看看是否漏掉了一些重要的消息。
我想把这两个功能全都集成到刘海上,消息提醒模仿 iPhone 上的即时消息,窗口切换则是基于刘海创造一个更流畅的动画。于是有了:

https://github.com/user-attachments/assets/d58ce0d5-c685-44df-9a50-4afe99a710db

点击刘海会出现 Peninsula,再次点击刘海可以切换其中的窗口。这是我想到的比较好的切换方式,后续可以集成触控板手势进行切换。
总共有五个窗口,前两个对应着我想实现的程序切换以及消息中心。当有人给我发送信息时:

notification.mp4

我很喜欢这个设计,视觉占比不大,认真做事时影响不到;闲了下来看向刘海就能知道有没有信息了。你可以把任何程序放到消息中心里,只要它的通知方式是基于 dock 的即可(即 dock 上会出现消息的总条数)。
接下来是替换掉macOS难用的cmd + tab:

overview.mp4

如果你喜欢的话,欢迎来repo点个 star!限于时间,我只将 Peninsula 实现到了这里,但基于刘海的设计显然远不止于此。欢迎大家基于Peninsula二次开发!如果你嫌弃 Peninsula 过于笨重,想在更简洁的框架上定制刘海,请参考(Peninsula同样基于这个repo开发):GitHub - Lakr233/NotchDrop: Use your MacBook's notch like Dynamic Island for temporary storing files and AirDrop

Reference

Peninsula 的开发基于以下三个 projects:
GitHub - lwouis/alt-tab-macos: Windows alt-tab on macOS
GitHub - Lakr233/NotchDrop: Use your MacBook's notch like Dynamic Island for temporary storing files and AirDrop
GitHub - xiaogdgenuine/Doll: A mac app to help monitor your app badges!
Peninsula 采用 MIT 协议,欢迎大家使用!

@u-Sir
Copy link

u-Sir commented Dec 4, 2024

这个可以切换同一个应用的不同窗口吗?

@Celve
Copy link
Author

Celve commented Dec 4, 2024

这个可以切换同一个应用的不同窗口吗?

暂时没实现,因为目前是自用功能不太完善,不过实现起来不难。我会加到 todo-list,在下一个 release(v0.0.2) 添加这个功能。

@ruanyf ruanyf added the weekly label Dec 4, 2024
@zenstoneWX
Copy link

大佬 消息通知好像没提醒呀

@Celve
Copy link
Author

Celve commented Dec 10, 2024

大佬 消息通知好像没提醒呀

你有在notification center中加入你想要被提醒的app嘛?切换到Peninsula中的notification center,点右上角的加减号来添加或减少app
另外,欢迎到repo下提issue。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants