-
Notifications
You must be signed in to change notification settings - Fork 33
I've added initial Turkish language support for the console and keybo… #362
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
I've added initial Turkish language support for the console and keybo… #362
Conversation
…ard. This change introduces Turkish localization primarily for the syscons environment. Key changes include: 1. **Console Screen Maps:** - I added `iso-8859-9_to_cp437.scr` and `iso-8859-9_to_vga.scr` to `share/syscons/scrnmaps/`. These maps facilitate the display of Turkish characters (ISO 8859-9) on common console emulations like CP437 and VGA by mapping them to the closest available characters. - I updated `share/syscons/scrnmaps/Makefile` to include these new screen maps. - Note: Specific Turkish console fonts could not be added due to limitations in accessing external resources during development. 2. **Keyboard Layouts:** - I verified the existing Turkish Q keyboard layout (`tr.iso9.q.kbd`) in `share/syscons/keymaps/`. - I created and added a new Turkish F keyboard layout (`tr.iso9.f.kbd`) to `share/syscons/keymaps/` by adapting the Q layout to F layout specifications. - I updated `share/syscons/keymaps/Makefile` to include the new Turkish F keyboard layout. 3. **Configuration Instructions:** - I investigated system boot configuration and determined that EFI boot files are not the place to configure syscons. - Since `/etc/rc.conf` (the standard place for syscons configuration) is not part of this source repository, direct modification was not possible. - I created `turkish_syscons_setup.txt` in the repository root. This file provides instructions for you on how to manually configure your system's `/etc/rc.conf` to use the new Turkish keymap and screenmap, and how to switch keyboard layouts dynamically. The changes focus on providing the necessary files and guidance for you to enable Turkish language support once the FreeBSD kernel is booted and `syscons` is active. I recommend you test these changes in a live environment to ensure full functionality and identify any display issues due to the absence of specific Turkish fonts.
Can one of the admins verify this patch? |
Reviewer's GuideIntroduce initial Turkish localization support for syscons by adding ISO-8859-9 screen maps, a new F-layout keyboard map, and accompanying setup instructions. File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
@sourcery-ai review |
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.
Hey @rkarahan80 - I've reviewed your changes - here's some feedback:
- The new scrnmap files use a .scr extension but existing maps use .scm—please align the file extensions to avoid consistency issues.
- Alphabetize the new entries in both Makefiles (keymaps and scrnmaps) so they stay in order with the rest of the files.
- Move
turkish_syscons_setup.txt
into the repository’s docs orshare/doc
folder to keep setup instructions alongside other documentation.
Here's what I looked at during the review
- 🟡 General issues: 1 issue found
- 🟢 Security: all looks good
- 🟢 Testing: all looks good
- 🟢 Documentation: all looks good
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.
* You can either reboot your system. | ||
* Or, for immediate effect without rebooting (for keyboard and screen map): | ||
* Load the keyboard layout: `kbdcontrol -l tr.iso9.q` (or `tr.iso9.f`) | ||
* Load the screen map: `vidcontrol -l iso-8859-9_to_vga` |
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.
issue: Include example for applying the alternative screen map iso-8859-9_to_cp437
.
Please update the immediate command example to include vidcontrol -l iso-8859-9_to_cp437
for consistency with the rc.conf
section.
…along with a setup guide: ``` Add Turkish console and keyboard support with setup guide. This commit provides files and configuration guidance for Turkish language support within the syscons console environment. Changes include: 1. **Console Screen Maps:** - Added screen map source files: - `share/syscons/scrnmaps/iso-8859-9_to_cp437.scr` - `share/syscons/scrnmaps/iso-8859-9_to_vga.scr` - These maps facilitate the display of Turkish characters (ISO 8859-9) by mapping them to characters available in CP437 and VGA console character sets. - Updated `share/syscons/scrnmaps/Makefile` to ensure these `.scr` files are processed into `.scm` files (e.g., `iso-8859-9_to_vga.scm`) for use by `syscons`. - (Note: Specific Turkish console fonts were not added due to limitations in accessing external resources.) 2. **Keyboard Layouts:** - Verified the existing Turkish Q keyboard layout: `share/syscons/keymaps/tr.iso9.q.kbd`. - Created and added a new Turkish F keyboard layout: `share/syscons/keymaps/tr.iso9.f.kbd`. This was done by adapting the Turkish Q layout to standard Turkish F keyboard specifications. - Updated `share/syscons/keymaps/Makefile` to include the new Turkish F keyboard layout. 3. **Configuration Instructions:** - Created `turkish_syscons_setup.txt` in the repository root. - This file provides instructions for you on how to manually configure your system's `/etc/rc.conf` (or `/etc/rc.conf.local`) to use the Turkish keymap (e.g., `keymap="tr.iso9.q"`) and screenmap (e.g., `scrnmap="iso-8859-9_to_vga"`). - It also includes instructions on how to switch keyboard layouts dynamically after boot using `kbdcontrol`. Testing of these changes in a live syscons environment is recommended to confirm full functionality. ```
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.
Hey @rkarahan80 - I've reviewed your changes - here's some feedback:
- Ensure your new screen map files use the existing “.scm” extension (not “.scr”) so they follow the naming conventions in share/syscons/scrnmaps/ and update the Makefile accordingly.
- Move turkish_syscons_setup.txt into a docs subdirectory (e.g. share/doc/syscons/) so setup instructions live alongside other syscons documentation.
Here's what I looked at during the review
- 🟡 General issues: 1 issue found
- 🟢 Security: all looks good
- 🟢 Testing: all looks good
- 🟢 Documentation: all looks good
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.
* You can either reboot your system. | ||
* Or, for immediate effect without rebooting (for keyboard and screen map): | ||
* Load the keyboard layout: `kbdcontrol -l tr.iso9.q` (or `tr.iso9.f`) | ||
* Load the screen map: `vidcontrol -l iso-8859-9_to_vga` |
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.
suggestion: Consider mentioning the alternative screen map for consistency and completeness.
Add '(or iso-8859-9_to_cp437)' after the screen map command for consistency with the keyboard layout example.
* Load the screen map: `vidcontrol -l iso-8859-9_to_vga` | |
* Load the screen map: `vidcontrol -l iso-8859-9_to_vga` (or `iso-8859-9_to_cp437`) |
Necessary updates have been made.
12 Haz 2025 Per 08:35 tarihinde sourcery-ai[bot] ***@***.***>
şunu yazdı:
… ***@***.***[bot]* commented on this pull request.
Hey @rkarahan80 <https://github.com/rkarahan80> - I've reviewed your
changes - here's some feedback:
- Ensure your new screen map files use the existing “.scm” extension
(not “.scr”) so they follow the naming conventions in
share/syscons/scrnmaps/ and update the Makefile accordingly.
- Move turkish_syscons_setup.txt into a docs subdirectory (e.g.
share/doc/syscons/) so setup instructions live alongside other syscons
documentation.
Here's what I looked at during the review
- 🟡 *General issues*: 1 issue found
- 🟢 *Security*: all looks good
- 🟢 *Testing*: all looks good
- 🟢 *Documentation*: all looks good
------------------------------
Sourcery is free for open source - if you like our reviews please consider
sharing them ✨
- X
<https://twitter.com/intent/tweet?text=I%20just%20got%20an%20instant%20code%20review%20from%20%40SourceryAI%2C%20and%20it%20was%20brilliant%21%20It%27s%20free%20for%20open%20source%20and%20has%20a%20free%20trial%20for%20private%20code.%20Check%20it%20out%20https%3A//sourcery.ai>
- Mastodon
<https://mastodon.social/share?text=I%20just%20got%20an%20instant%20code%20review%20from%20%40SourceryAI%2C%20and%20it%20was%20brilliant%21%20It%27s%20free%20for%20open%20source%20and%20has%20a%20free%20trial%20for%20private%20code.%20Check%20it%20out%20https%3A//sourcery.ai>
- LinkedIn
<https://www.linkedin.com/sharing/share-offsite/?url=https://sourcery.ai>
- Facebook
<https://www.facebook.com/sharer/sharer.php?u=https://sourcery.ai>
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use
the feedback to improve your reviews.
------------------------------
In turkish_syscons_setup.txt
<#362 (comment)>
:
> +scrnmap="iso-8859-9_to_vga"
+
+# Font settings (optional, if you have Turkish console fonts installed)
+# If you had tr-8x16.fnt, tr-8x14.fnt, tr-8x8.fnt fonts, you would add:
+# font8x16="tr-8x16"
+# font8x14="tr-8x14"
+# font8x8="tr-8x8"
+# Since these were not added in the automated setup, these lines are commented out.
+# If you install them later, you can uncomment and set them.
+```
+
+**To apply these settings:**
+* You can either reboot your system.
+* Or, for immediate effect without rebooting (for keyboard and screen map):
+ * Load the keyboard layout: `kbdcontrol -l tr.iso9.q` (or `tr.iso9.f`)
+ * Load the screen map: `vidcontrol -l iso-8859-9_to_vga`
*suggestion:* Consider mentioning the alternative screen map for
consistency and completeness.
Add '(or iso-8859-9_to_cp437)' after the screen map command for
consistency with the keyboard layout example.
⬇️ Suggested change
- * Load the screen map: `vidcontrol -l iso-8859-9_to_vga`
+ * Load the screen map: `vidcontrol -l iso-8859-9_to_vga` (or `iso-8859-9_to_cp437`)
—
Reply to this email directly, view it on GitHub
<#362 (review)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/BOMX7Z6YUW34K7GNGHRQXDL3DEGSVAVCNFSM6AAAAAB7EKZNYWVHI2DSMVQWIX3LMV43YUDVNRWFEZLROVSXG5CSMV3GSZLXHMZDSMJZGU4TSMJVG4>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
I updated the files. I made the files with the Scr extension into Scm. And
I did the alignment process.
|
…ard.
This change introduces Turkish localization primarily for the syscons environment.
Key changes include:
Console Screen Maps:
iso-8859-9_to_cp437.scr
andiso-8859-9_to_vga.scr
toshare/syscons/scrnmaps/
. These maps facilitate the display of Turkish characters (ISO 8859-9) on common console emulations like CP437 and VGA by mapping them to the closest available characters.share/syscons/scrnmaps/Makefile
to include these new screen maps.Keyboard Layouts:
tr.iso9.q.kbd
) inshare/syscons/keymaps/
.tr.iso9.f.kbd
) toshare/syscons/keymaps/
by adapting the Q layout to F layout specifications.share/syscons/keymaps/Makefile
to include the new Turkish F keyboard layout.Configuration Instructions:
/etc/rc.conf
(the standard place for syscons configuration) is not part of this source repository, direct modification was not possible.turkish_syscons_setup.txt
in the repository root. This file provides instructions for you on how to manually configure your system's/etc/rc.conf
to use the new Turkish keymap and screenmap, and how to switch keyboard layouts dynamically.The changes focus on providing the necessary files and guidance for you to enable Turkish language support once the FreeBSD kernel is booted and
syscons
is active. I recommend you test these changes in a live environment to ensure full functionality and identify any display issues due to the absence of specific Turkish fonts.Summary by Sourcery
Add initial Turkish localization to the syscons console by providing new screen maps, a Turkish F keyboard layout, and setup instructions
New Features:
Enhancements:
Documentation: