Giter Club home page Giter Club logo

komorebi-application-specific-configuration's Introduction

Komorebi Application-Specific Configuration

A community-driven repository for users to share application-specific komorebi configuration options, with the goal of creating an tiling window management experience on Windows that "just works" for as many applications as possible.

komorebi-application-specific-configuration's People

Contributors

carl-robert avatar cirehtheterrible avatar coffeefedora avatar cubedhs2017 avatar cynosphere avatar d3ezy avatar ericreeves avatar es183923 avatar fydon avatar gaussianwonder avatar h4m5ter avatar jbillson avatar jurienhamaker avatar lgug2z avatar naraenda avatar nilzen avatar nirebryce avatar okayno14 avatar omark96 avatar psoewish avatar raymondkroon avatar rickywu avatar rp1231 avatar sitiom avatar starise avatar tetra-fox avatar tgharib avatar thesobercoder avatar urob avatar vbarrancos avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

komorebi-application-specific-configuration's Issues

Steam: popup window not filtered

I'm quite new to komorebi so I apologize if I'm wrong or missing something. Fwiu this part of the file should filter out some "Steam" windows, I suppose popups looking the id vguiPopupWindow.

- name: Steam
identifier:
kind: Class
id: vguiPopupWindow
matching_strategy: Legacy

This isn't happening to me: right clicking on Steam's system tray icon, I see a giant window managed by komorebi. I'm not sure how/where I can find the Class.id specified: vguiPopupWindow, but I suppose with AHK spy, because looking at the popup with it I found this:

ahkspy

That's the same id of the "Steam Beta" filter (nb: I'm not using the beta). Also, the popup window looks like it has the same id of the main application window.

- name: Steam Beta
identifier:
kind: Class
id: SDL_app
matching_strategy: Legacy
options:
- tray_and_multi_window
float_identifiers:
- kind: Title
id: notificationtoasts_
matching_strategy: Legacy

Not sure how to proceed from here. Thanks to #56 I quite understood matching_strategy, but still not sure about options available and on what float_identifiers does exactly.

mpv doesn't tile/stays floating (on purpose?)

I saw mpv is already added to the application specific configuration (actually it seems the PR adding mpv and mpv.net is partly reverted, because I see no mpv in my applications.yaml), so not sure if others deem this as the right way to handle it. For me I'd very much prefer it to be tiled normally.

If it is done on purpose, I petition to revert that.

Outlook needs to be force managed?

I found that I have to add Run, komorebic.exe manage-rule exe OUTLOOK.EXE, , Hide to my komorebi.ahk or else Outlook doesn't get managed.

Before I go through the trouble of doing a PR, is there anyone else that has this issue or just me?

Replace all `Legacy` matchers with new `matching_strategy`

There are still many rules using Legacy as a matching strategy. In most cases, the rule is fuzzier than it needs to be, risking matching unintended windows. All existing Legacy matching strategies should be replaced with one of the following:

  • Equals
  • OpensWith
  • EndsWith

To facilitate the conversion, I will keep an updated list of remaining Legacy matchers in the comments below.

How to partial/regex match on title for a float rule?

When Teams is minimized and a meeting is in progress, there is a floating widget that appears. Screenshot of the widget here.

Currently it is treated like a full window but it's only roughly 100px by 100px, creating a lot of wasted space, so it needs to be treated as floating. Here is the info from AHK's window spy:

Microsoft Teams Call in progress Teams Echo
ahk_class Chrome_WidgetWin_1
ahk_exe Teams.exe
ahk_pid 16812

I tried matching by class Chrome_WidgetWin_1 but unfortunately the main MS Teams window uses the same class so the main window is also treated as floating. The title Microsoft Teams Call in progress Teams Echo is dependent on the meeting/call. Here I am in a call with Teams Echo but that part of the title string is variable. I tried to match on title Microsoft Teams Call in progress but it seems komorebi expects a full title.

Adding Matching Strategies to Existing Entries

Hello everybody, you'll be happy to know that in the next version of komorebi (v0.1.19), a complete refactor of matching rules will be shipped. ๐ŸŽ‰

Each identifier object will now take an optional matching_strategy, which if not set, will default to Legacy in order to avoid breaking changes for existing users.

The matching_strategy options available will be:

These will be available to use both here in applications.yaml, and in your own personal komorebi.json files.

If you would like to contribute to the komorebi ecosystem, this issue is a great place to start! You can work on PRs adding simple matching strategies like Equals for exes, or more complex rules using regexes which have not been possible to build until now.

We will hold off on merging any of these PRs until v0.1.19 has been out for a week or so to give people time to upgrade, so don't worry if you don't see your PRs merged immediately!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.