-
-
Notifications
You must be signed in to change notification settings - Fork 543
feat: Add Brazilian ABNT2 keyboard layout documentation and template #1505
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
base: dev
Are you sure you want to change the base?
Conversation
- Added keybindings-abnt2.conf with comprehensive ABNT2 documentation - Created README.md with contribution guidelines for keyboard layouts - Documented that default keybindings work correctly with ABNT2 - Explained how Hyprland captures keys before layout conversion - Provided clear testing instructions for ABNT2 users - Serves as reference template for future keyboard layout contributions Fixes HyDE-Project#1442
|
This PR is targeting According to our Quarterly Release Policy:
Required Action:
If this is an emergency fix, please add a comment explaining why it needs to target This is an automated message enforcing our quarterly release workflow. |
📝 WalkthroughWalkthroughA new ABNT2 keyboard layout keybinding configuration template has been added to HyDE, including comprehensive documentation and a complete keybindings configuration file tailored for the Brazilian ABNT2 layout with conflict resolution guidance. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 minutes Poem
Pre-merge checks❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
Comment |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
🧹 Nitpick comments (1)
.local/share/hyde/templates/hypr/keybindings/keybindings-abnt2.conf (1)
277-277: Clarify the comment syntax.The comment
$d=#! unset the group nameuses#!which typically denotes a shebang in shell scripts. Consider simplifying to$d= # unset the group nameor just# Unset the group namefor clarity, unless#!has special meaning in HyDE's configuration parser.🔎 Suggested clarification
-$d=#! unset the group name +# Unset the group name for subsequent bindings +$d=
📜 Review details
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (2)
.local/share/hyde/templates/hypr/keybindings/README.md.local/share/hyde/templates/hypr/keybindings/keybindings-abnt2.conf
🧰 Additional context used
🪛 markdownlint-cli2 (0.18.1)
.local/share/hyde/templates/hypr/keybindings/README.md
165-165: Bare URL used
(MD034, no-bare-urls)
🔇 Additional comments (6)
.local/share/hyde/templates/hypr/keybindings/keybindings-abnt2.conf (2)
1-58: Excellent documentation quality!The header provides comprehensive information about ABNT2 layout compatibility, clearly explains the technical reason why default keybindings work (Hyprland captures keys before layout conversion), and includes helpful special character references and testing instructions. This educational approach directly addresses the discoverability concerns raised in issue #1442.
89-276: Well-structured keybindings configuration!The keybindings follow HyDE's grouping pattern consistently, with clear descriptions and logical organization into sections (Window Management, Launcher, Hardware Controls, Utilities, Workspaces). The use of variable-driven grouping ($d=[Group|Subgroup]) makes the configuration maintainable and GUI-parseable as intended.
.local/share/hyde/templates/hypr/keybindings/README.md (4)
1-29: Clear and user-friendly setup instructions!The documentation provides two well-explained options (copy vs. symlink) for different user skill levels, with practical bash commands and reload instructions. This makes the template accessible to both beginners and advanced users.
30-131: Outstanding contribution guidelines!This section provides excellent gatekeeping by requiring contributors to test for actual conflicts before creating new layout templates. The step-by-step process, clear DO/DON'T list, and comprehensive header template will help maintain quality and prevent unnecessary template proliferation. The emphasis on testing with
wevand understanding that Hyprland captures physical key codes is particularly valuable.
132-155: Comprehensive ABNT2 reference documentation!The layout-specific section clearly documents special character mappings, dead keys, and explains why the default keybindings are fully compatible. This serves as an excellent reference for ABNT2 users and demonstrates the educational value of this PR in addressing the discoverability concerns from issue #1442.
158-183: Helpful supplementary information and resources!The issue reporting guidance, tips about physical key codes, and additional resources provide users with the knowledge to troubleshoot and understand keyboard layout behavior. The contributors section is a nice touch for recognizing community contributions.
| 1. Test with the default keybindings first | ||
| 2. Document exactly what keybinding conflicts with what symbol | ||
| 3. Provide your keyboard layout details (setxkbmap -query) | ||
| 4. Report at: https://github.com/HyDE-Project/HyDE/issues/1442 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Wrap the bare URL in angle brackets or use markdown link syntax.
The bare URL violates markdown best practices (MD034). Wrap it in angle brackets or convert to a proper markdown link for better accessibility and standards compliance.
🔎 Proposed fixes (choose one)
Option 1: Angle brackets (simpler)
-4. Report at: https://github.com/HyDE-Project/HyDE/issues/1442
+4. Report at: <https://github.com/HyDE-Project/HyDE/issues/1442>Option 2: Markdown link (more semantic)
-4. Report at: https://github.com/HyDE-Project/HyDE/issues/1442
+4. Report at: [GitHub Issue #1442](https://github.com/HyDE-Project/HyDE/issues/1442)📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| 4. Report at: https://github.com/HyDE-Project/HyDE/issues/1442 | |
| 4. Report at: <https://github.com/HyDE-Project/HyDE/issues/1442> |
| 4. Report at: https://github.com/HyDE-Project/HyDE/issues/1442 | |
| 4. Report at: [GitHub Issue #1442](https://github.com/HyDE-Project/HyDE/issues/1442) |
🧰 Tools
🪛 markdownlint-cli2 (0.18.1)
165-165: Bare URL used
(MD034, no-bare-urls)
🤖 Prompt for AI Agents
.local/share/hyde/templates/hypr/keybindings/README.md around line 165: the bare
URL "https://github.com/HyDE-Project/HyDE/issues/1442" should be wrapped to
satisfy MD034; replace the plain URL with either angle brackets like
<https://github.com/HyDE-Project/HyDE/issues/1442> or a markdown link such as
[Report an issue](https://github.com/HyDE-Project/HyDE/issues/1442), keeping the
surrounding text intact.
📝 Note from Issue AuthorHi! I'm the original author of issue #1442. After opening that issue and actually testing HyDE with my ABNT2 keyboard, I discovered something important: the default keybindings work perfectly! The conflicts I was worried about don't actually happen because Hyprland captures key presses BEFORE the keyboard layout processes them. For example:
🎯 Purpose of This PRThis PR provides what ABNT2 users (and future international users) actually need:
🔄 Updating Original Issue ScopeThe original issue was based on my assumption that keybindings would conflict. After testing, I learned:
✅ This PR Fully Resolves the Real ProblemThe real problem was: ABNT2 users don't know if HyDE will work with their keyboard. This PR solves that by:
The original issue scope was based on incomplete understanding. This PR addresses the actual user need discovered through testing. TL;DR: As the issue author, I can confirm this PR provides the solution ABNT2 users need. The original scope was over-engineered based on assumptions. Real-world testing showed documentation is what's actually required. |
📋 Description
This PR adds comprehensive documentation and a template for Brazilian ABNT2 keyboard layout users, addressing issue #1442.
🎯 Problem Solved
Users with ABNT2 keyboards reported conflicts between special characters (@ # $ %) and workspace keybindings. After investigation and testing, I discovered that the default keybindings actually work correctly with ABNT2 because Hyprland captures key presses before the keyboard layout processes them.
✨ Changes Made
keybindings-abnt2.confwith detailed ABNT2 documentationREADME.mdwith contribution guidelines for keyboard layoutsSUPER+SHIFT+numberdoes NOT conflict with special characters🧪 Testing
Tested on:
Test Results:
@with Shift+2 in text editorsSUPER+SHIFT+2correctly moves window to workspace 2📖 Documentation Highlights
For ABNT2 Users:
For Contributors:
🎓 Key Insight
The main contribution of this PR is educational documentation rather than code changes:
This documentation will help future users understand how keyboard layouts work with HyDE/Hyprland and avoid unnecessary customization.
🔗 Related Issue
Closes #1442
📸 File Structure
Summary by CodeRabbit
Documentation
New Features
✏️ Tip: You can customize this high-level summary in your review settings.