Skip to content

OLPC Keyboard layout changed to modern layout#23

Open
SudoSu-bham wants to merge 1 commit intosugarlabs:masterfrom
SudoSu-bham:layout
Open

OLPC Keyboard layout changed to modern layout#23
SudoSu-bham wants to merge 1 commit intosugarlabs:masterfrom
SudoSu-bham:layout

Conversation

@SudoSu-bham
Copy link
Copy Markdown

Typing-turtle was using the OLPC layout which was not similar to modern keyboards.
I did so because Typing-turtle was using OLPC model's keyboard layout which has ctrl, caps lock, win key misplaced or not written on the buttons. Also the language key button was removed because it is not present on modern keyboards.

Image of old layout

image

Image of new layout

image

Typing-turtle was using the OLPC layout which was not similar to new keyboards
changes made for ctrl, caps lock, win
Language key button was also removed as it is not present on modern keyboards
@chimosky
Copy link
Copy Markdown
Member

Reviewed 838f8fb, not tested.

What keyboard layout are you using as not all keyboards have win and fn where you've placed them, particularly win.

@SudoSu-bham
Copy link
Copy Markdown
Author

I searched on google the most common keyboard layout for Laptops, and most of the images appearing on it was similar to what I have made in my PR. I saw many laptops such as Asus, Lenovo, HP, Dell etc. which has same keyboard layout.

However There is change in position of fn key in desktop computer's keyboard layout.

Should I make changes to win key?

@chimosky
Copy link
Copy Markdown
Member

I searched on google the most common keyboard layout for Laptops, and most of the images appearing on it was similar to what I have made in my PR. I saw many laptops such as Asus, Lenovo, HP, Dell etc. which has same keyboard layout.

However There is change in position of fn key in desktop computer's keyboard layout.

Should I make changes to win key?

What's the change in position of the fn key?

This might be helpful, also test for the utility in the activity.

See if that button is included in the tutorials and it does what's expected, for the win key, running the activity with flatpak would have an unintended effect.

@SudoSu-bham
Copy link
Copy Markdown
Author

What's the change in position of the fn key?

In most of desktop keyboardsfn key is located at right hand side of space bar.

See if that button is included in the tutorials and it does what's expected, for the win key, running the activity with flatpak would have an unintended effect.

Looking at the code of /typing-turtle-activity/layout/olpc.py at line 136 . we can see that fn key can't be utilize in typing lessons. Therefore I included win key which will also act as dummy key. Most probably no touch typing applications use win key in their lesson.

This might be helpful, also test for the utility in the activity.

There are a lot of keyboard layout and we might need to agree to use one of them as our old olpc layout is no longer a standard keyboard layout.

@chimosky
Copy link
Copy Markdown
Member

In most of desktop keyboards fn key is located at right hand side of space bar.

That's true, not the change you've made though.

Looking at the code of /typing-turtle-activity/layout/olpc.py at line 136 . we can see that fn key can't be utilize in typing lessons. Therefore I included win key which will also act as dummy key. Most probably no touch typing applications use win key in their lesson.

I haven't checked to know if it's useful but I'd expect it not to be.

There are a lot of keyboard layout and we might need to agree to use one of them as our old olpc layout is no longer a standard keyboard layout.

The one I shared looks good. @quozl what'd you think?

@quozl
Copy link
Copy Markdown
Contributor

quozl commented Jun 21, 2024

The activity was originally written for a specific laptop and the many keyboard variants available for that laptop. I don't know if the activity would work in the same way for a different keyboard. Perhaps it should only show the typing keys, or use a conventional soft keyboard as laid out by modern Linux. xkb could be the reference source for key positions.

@chimosky
Copy link
Copy Markdown
Member

The activity was originally written for a specific laptop and the many keyboard variants available for that laptop. I don't know if the activity would work in the same way for a different keyboard. Perhaps it should only show the typing keys, or use a conventional soft keyboard as laid out by modern Linux. xkb could be the reference source for key positions.

Agreed, just the typing keys that are used in the lessons should work perfectly.

@SudoSu-bham
Copy link
Copy Markdown
Author

image

This is the Modern QWERTY US layout. I read on Wikipedia and some blogs on medium regarding common layouts and Linux XKB and found out that we may use US Layout (But it doesn't specify location of fn key) What is your thought?

My references
XKB
Keyboard Layout
Wikipedia

@quozl
Copy link
Copy Markdown
Contributor

quozl commented Jun 27, 2024

Why would the Fn key be required for keyboard learning? It isn't used regularly, so is unlikely to be useful for learning.

@SudoSu-bham
Copy link
Copy Markdown
Author

Why would the Fn key be required for keyboard learning? It isn't used regularly, so is unlikely to be useful for learning.

Yes it is not used for typing lessons. But fn key is present in almost all modern laptops. Completely removing the fn key from the layout will create a blank space (void) in last row of the layout. If we want to maintain the look of modern keyboards layout in the typing-turtle activity than we can keep fn key in the last row otherwise we can completely remove it.

@quozl
Copy link
Copy Markdown
Contributor

quozl commented Jun 28, 2024

Fill the void? There's more than laptops to consider, there's also tablet computers with software keyboards, bluetooth keyboards, and desktop computers.

@chimosky
Copy link
Copy Markdown
Member

@SudoSu-bham this is a comment I made earlier;

See if that button is included in the tutorials and it does what's expected,...

It still applies, we want to limit the keys to only what's used in the tutorial as they'll be the only things that'll probably be unchanged across keyboards and devices.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants