Skip to content
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

Use custom keyboard layout for entering expressions #23

Open
rillig opened this issue Jul 31, 2022 · 0 comments
Open

Use custom keyboard layout for entering expressions #23

rillig opened this issue Jul 31, 2022 · 0 comments

Comments

@rillig
Copy link
Contributor

rillig commented Jul 31, 2022

In the input field for the mathematical expressions, only very few characters are useful:

  • the digits 0 to 9
  • the decimal point (. in English, , in German)
  • the parentheses (, )
  • the operators +, -, *, /, ^, !, %
  • predefined constants like e, pi
  • predefined functions like C
  • the comma , to separate the function arguments
  • space and newline to make the expression more readable while entering it

The default keyboard layout depends on the input language. These layouts are tailored towards typing text, not mathematical expressions. Since the screen space on small screens is scarce, for entering a mathematical expression, the user has to constantly switch between different keyboard layers: the text layer for C, e and pi; the numeric layer for the digits and operators, the special symbol layer for the operator ^.

In right-to-left writing systems, the parentheses on the default on-screen keyboard may point in the "wrong" direction, see #21. The custom keyboard layout suggested here would always write the parentheses in left-to-right direction mode, avoiding this problem.

On Stack Overflow, there is an easy to follow recipe on adding a custom keyboard layout. That article assumes that a single layout fits all screen sizes.

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

No branches or pull requests

1 participant