Feature: holistic profile comparison #362
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR introduces a more-holistic profile comparison that is based on the following criteria:
match_asterisk
closeness of EDID patterns,These three criteria are weighted identically. Profiles that have better overall EDID pattern matches and output overlaps with the current RandR configuration are preferred.
Additionally, this PR extends EDID matching to all outputs in a profile, rather than just the last output (where "last" means "final element in
profile["config"].keys()
").Motivation: when my laptop is docked, I would like
autorandr
to automatically select a profile that includes my external monitors. I suspect that I am not alone in this; however, I would be happy to update this PR to gate the new behavior behind a CLI flag if you'd like to default to the current profile-sorting behavior.Note that both of these are breaking changes, as explained in the corresponding commit messages.
Thanks in advance for your consideration!