EEVblog Electronics Community Forum
General => General Technical Chat => Topic started by: ataradov on March 08, 2023, 12:28:47 am
-
Here is an abstract question that came to mind. I've been looking at European keyboard layouts and they are all over the place. But one thing that stood out is that special characters (!@#$%^&*) are not as easily accessible on all layouts as they are on the US layout.
So I have a question for users of those keyboards and especially programmers that might need to type those characters a lot depending on the programming language used. Do some character choices by the language designers make it more annoying to use? Or it makes no difference and you just get used to type on whatever keyboard you have?
For example, Pascal uses ^ for pointers, and this specific character seem to be on random combinations of keys on different layouts. Does this make it harder to use Pascal? And XOR in C, but I guess you don't use XOR as much.
How do you even type ^ on a German keyboard? Wiki says it is an accent key used for combing with other characters.
Also, it looks like Polish people though about that a lot and have separate layouts for typists and programmers. They also have some nightmarish expanded layout, which is a bit much.
-
Never really thought about this, but aren't most programming languages in English? So when programming would it be too much hassle to switch the keyboard to US layout, or whatever is most comfortable? 'Course, could be a drag to keep switching back and forth as you send off emails or whine on Facebook when you're meant to be programming ;)
-
How do you even type ^ on a German keyboard? Wiki says it is an accent key used for combing with other characters.
With the German keyboard in Windows, I type "3^2" by typing "3", then the [~/`] key (right above Tab) and then 2.
Not much call for the circumflex (^) in modern German, although it comes in handy for typing medieval German (Mittelhochdeutsch) :)
ich saz ûf eime steine
und dahte bein mit beine
dar ûf satzt ich den ellenbogen
ich hete in mîne hant gesmogen
daz kinne und ein mîn wange.
dô dâhte ich mir vil ange
wie man zer welte solte leben
deheinen rât kond ich gegeben
-
So it does not combine when no valid combination possible? But it would hard to type "b^a"?
-
Italian layout.
The only difficult symbol to use is ~: alt+5 on OSX or Press alt + type 126 on numpad + release alt on windows, on some IDEs like Qt Creator i have to remap a bunch of stuff because they decided to use Alt + Number
-
Wow, that is bad. Also, separate keys for pound and #, but no ~?
It looks like no matter what, some layout would be missing some special character.
-
Italian layout.
The only difficult symbol to use is ~: alt+5 on OSX or Press alt + type 127 on numpad + release alt on windows, on some IDEs like Qt Creator i have to remap a bunch of stuff because they decided to use Alt + Number
I hate the Italian layout (Windows - Linux is a different beast) so much, that I started using the Swedish one even before moving here, on Italian keyboards.
Why does it have a ç key? Which Italian word is it needed for? And, IIRC, it is not possible to directly type È.
OTOH, we have two € sign - that's probably due to inflation.
È proprio una stronzata, ça va sans dire! ;)
With the Swedish layout there's a number of dead/compose keys, working as pdenisowski described.
If you want the naked `´ ~ ^ or ¨ just type a space after the key and it works as expected: the diacritic is composed with space.
Braces and brackets are on AltGr 7890 {[]}, not bad and logically placed. ^ and ~ on the same key.
I personally use a slightly modified Swedish layout, where I added some common symbols and Greek letters on AltGr combination: β γ Γ φ Φ θ Θ ω Ω × ÷ √ ¹²³⁴⁵⁶⁷⁸⁹⁰⁻ ≤≥ ≈ etc.
-
I imagine trying to program in C (or other similar languages) on a French AZERTY keyboard layout is a pain, as a lot of the commonly used syntax characters ({} [] | ^) are only accessible via modifier key Alt Gr. Although not dissimilar to using shift, probably doesn't really lend itself to touch typing, due to awkward placement of the key.
First time I was presented with a French keyboard - trying to help someone with a problem with their laptop - took me a while to figure out how to type a backslash for a filename path in Windows because the tertiary characters were not labelled on that particular keyboard. :)
-
Why does it have a ç key? Which Italian word is it needed for? And, IIRC, it is not possible to directly type È.
OTOH, we have two € sign - that's probably due to inflation.
È proprio una stronzata, ça va sans dire! ;)
I know right? one of the things i always liked about OSX is that you have all sorts of otherwise inaccessible characters using ALT (you use that on OSX to print È - which by the way i copy/pasted right now, i will not look into the combination to print that on windows. I hoped that by windows 10 they would catch up and use the otherwise useless AltGr for something)
I only know of AltGr+E to make €, i don't recall any other way to print the euro symbol
All in all, i am used to our layout, muscle memory and all :-//
Wow, that is bad. Also, separate keys for pound and #, but no ~?
It looks like no matter what, some layout would be missing some special character.
After all we require accents :) would certainly live without ç and §, now that i think of it i could replace the keymap from § to ~
-
The english keyboard is a little more convenient for programming, but at least the German one is not that bad either. The main thing is "^" that is a bid odd and if in doubt, e.g. for a 2^a use the keys for ^ and space to get just the ^.
It is still not very practical to switch keyboard layouts just for a different task (maybe Ok if you switch to something completely different, like Arabic of Japanese). It causes too much confusion.
-
Not sure if there even is a specific Dutch keyboard layout. I have always bought US type keyboards, so no problems when programming.
The only difference I might have is the extra euro sign on the 5 key, but can't recall ever having used it.
-
The main difference (apart from layout) is the presence of the AltGr key, which is used to access the special characters. It can normally be emulated with Ctrl+Alt if you have a US keyboard running a European layout.
-
Space is always a problem here and keyboard is old, classic Keytronic stylish something, typing errors are also a very standard issue.
This I wrote with left hand to notepad, corrections were ctrl+shift+arrow and shift+Ins/Del stylish.
Normal letters and extras are not really a problem but missing Insert I can't stand, for obvious reasons.
I'm still occasionally using ctrl+Q and stuff with Delphi and Builder, nowadays less elsewhere.
Switching between Latin layouts is more pain than gain for extras only.
Even more than that if you've never really memorized that other layout.
Back in the day we used fall back scands, means Ä->A and Ö->O.
I'm still occasionally reversing them, seems to be a keyboard positioning thing.
Our layout has more brackets behind AltGr so when I start missing them too much I know the room is too dark.
Double action keys are ´` left from Backspace and ¨^~ up-left from Return so óòöôõ are pretty easy.
Anything extra below or under side of a latin letter seems to be missing, like C and something.
We had once a letter for double-s but that's from lantern era so not implemented.
Euro sing is AltGr-E, AltGr-5 is free.
Anybody still using Field/Enter/Rctrl?
-
The english keyboard is a little more convenient for programming, but at least the German one is not that bad either. The main thing is "^" that is a bid odd and if in doubt, e.g. for a 2^a use the keys for ^ and space to get just the ^.
It is still not very practical to switch keyboard layouts just for a different task (maybe Ok if you switch to something completely different, like Arabic of Japanese). It causes too much confusion.
Australians use the US keyboard with English spelling ---shown as English (Australia).
Unfortunately, sometimes W10 "gets its Knickers in a twist" & reverts to the UK keyboard layout, which is all OK, till the time you try to type ", & get @ instead.
You then just reset it, knowing it will happen again, right in the middle of something you are posting on line.
-
Wow, that is bad. Also, separate keys for pound and #, but no ~?
It looks like no matter what, some layout would be missing some special character.
i ended up installing the microsoft tool to create keyboard mappings, and added backticks and tilde. Could/should probably add accented vowels, too...
Turns out there is also a "Italian (142)" layout. Italian layout, but parentheses backtick and tilde present but placed elsewhere. weird
-
I've not found it to be a particular issue. The major difference between British English keyboard and US English keyboard is the 3 is the number (#) sign on US, and GB pound on UK (£), However, the # key is mapped elsewhere. Also I believe the at (@) and double quote symbols are swapped. You can usually tell within a few minutes if the keyboard layout is wrong.
-
I use modified Finnish keyboard layouts. Mapping and customizing them is trivial (in Linux), so I never paid any attention; the exact customizations depend on the physical layout and spacing. Even exact key response isn't too important to me; all I require is that keypresses are correctly registered even if you don't hit them exactly on center, and they don't squeak.
What does throw me off, is the key spacing (and therefore size). Switching between laptop-sized keyboards and desktop keyboards leads to lot of typos for me, which is a bit annoying.
-
It is true that with the French azerty keyboard, you often have to use the AltGr key... For example: € ~ # { [ \ @ ] } are not with direct access! If your keyboard doesn't have a numeric keypad, the numbers aren't direct either! |O
It is largely the fault of our accents... é è ç à ù which take direct places :scared:
-
It is largely the fault of our accents... é è ç à ù which take direct places
Ouch. Finnish only has three, Å (right of P), Ö (right of L), and Ä (right of Ö).
é is compose-grave/acute, followed by e.
è is Shift + compose-grave/acute, followed by e. (Similarly for à and ù.)
ç is AltGr + compose-grave/acute, followed by c.
(I can also get ä and ö via compose-¨^~ followed by a or o. I often use it for ï as in naïve.
Compose-grave/acute is a single key on the number row just left of backspace, and compose-¨^~ is just left of Enter on the Q..P row.
"Compose" just means the keypress by itself does not produce a visible output, and combines with the next keypress, almost always space or a letter.)
Compare to ~, which is AltGr + compose-¨^~ followed by a space, and ^, which is Shift + compose-¨^~ followed by a space. I use both quite comfortably, although they are less frequent (in text or source code I write) than accented letters are in French.
Because of the stuff I do, I often end up using accented letters, though. Because grave and acute accents are not used in Finnish, I do have difficulty remembering the difference between them, e.g. è vs. é, for example when writing Bézier (curve or surface). Other than that, I do not need to think what to press when I want a è or é, or á or à; only which one I actually want.
-
How do you even type ^ on a German keyboard? Wiki says it is an accent key used for combing with other characters.
I simply press the ^ key. :-//
-
I do have difficulty remembering the difference between them, e.g. è vs. é, for example when writing Bézier (curve or surface).
A tip for accent aigu or accent grave (back from my high school days) the word:
élève (as in pupil).
The accents point to the top of the "l" like an 'up' arrow. Easy to remember, I use it at least once a week although I don't write in French, but for names as you mention.
-
The english keyboard is a little more convenient for programming, but at least the German one is not that bad either. The main thing is "^" that is a bid odd and if in doubt, e.g. for a 2^a use the keys for ^ and space to get just the ^.
It is still not very practical to switch keyboard layouts just for a different task (maybe Ok if you switch to something completely different, like Arabic of Japanese). It causes too much confusion.
You can get used to it if you commit to it. But yes, initially it is frustrating.
Much easier to just buy a different keyboard with some custom keys or something.
-
Much easier to just buy a different keyboard with some custom keys or something.
Buy? No, just change the keyboard mapping to suit yourself better. For some keyboards, you can even get replacement or compatible key hats without anything printed on them.
For Windows, use the Microsoft Keyboard Layout Creator application.
I'm sure Macs have one as well, might be 3rd party though.
For Linux, your Desktop Environment has a Keyboard control applet that should let you do most things.
If you want to modify or create a new one, usable on GUI-less direct console also, just copy and modify or create a standard Linux keyboard translation map as described in man 5 keymaps (https://man7.org/linux/man-pages/man5/keymaps.5.html). All these are defined in human-readable text files, with all tools needed for their manipulation included in all Linux distributions by default.
If one starts by duplicating the nearest equivalent with a new unambiquous name, and makes sure they can switch between the two layouts, and after reboot the original one is selected by default, then one can just go ahead and experiment.
-
Much easier to just buy a different keyboard with some custom keys or something.
Or use stickers - I've done this plenty of times when trying to learn a new keyboard layout.
-
Yeah, stickers or remap is of course the first best option.
What seemed to be implied above was that the keyboard being used did not have enough keys for these special characters.
-
So, what I gather from this is that it is fine to use any characters in a language design.
Also, I just realized something. In the Russian layout I can't type ~`@#^ either. But this was never even remotely a problem because all Russian keyboards are marked with Russian and US layout characters. Most of the time the keyboard is in the US layout only when typing in Russian it is switched into the Russian layout. So, programming was never a problem and I don't remember struggling with those characters when typing text, so I guess they are not that common.
It never even came to mind to try that on the keyboard I have right in front of me before now :)
-
Ah, I love that question. First of all - yes, coding in C is a tad simpler on an American layout. However - one gets used to different layouts.
Check out this picture of my Fujitsu KB521's, one with German, the other with Japanese keyboard layout. The Japanese version is designed for usage with an Input Method Editor (there are other types of Japanese keyboards available, with different special function keys). The base layout is U.S.. When I switch input languages, my brain somehow switches the keyboard layout. I simply know that, e.g. Y-Z are in different positions.
All over the world the older computer guys, who were active during the DOS-era, should be able to remember the U.S. layout, since that is what came up as default on a virgin computer.
When I dabbled with the standard Hebrew keyboard layout, I ran into a problem: How does one input lower case Roman characters? Simple thing, just change the input language. So surfing the web simply involves switching languages all the time.
-
In non-US layouts you often have to use key modifiers to get some basic symbols, such as #, \, @...
With AZERTY layouts, we have a modifier key called "Alt Gr", that I think has no equivalent in US layouts, or maybe even QWERTY layouts in general? Not sure.
You can always use a US layout if you're uncomfortable with that, or even define your own layout. Why not.
I've never found that a big issue, it's just a matter of habit. As I have often said, if typing is really your concern while programming, you're focusing on the wrong problem.
-
Yes, this is a part of why I did not have issues having used Russian most of my life - the character set is so different that there is no way to just replace a few characters with different letters, you have to have a full new layout and active switch. This leaves the US layout alone. For languages where most of the characters are Latin, it makes way less sense, so you are reducing special character set to accommodate just a few extra characters.
-
I have been coding with different programming languages and at different levels since early 90s. If I was a programmer and equally lets say a Spanish writer, I would definitely get two keyboards, one US and other Spanish. I definitely think it is easier to code (and use some programs as well) with US layout. It is also not difficult with another layout, but it is just easier with US layout. My native language is Turkish which has its share of a few difference characters (or same chars with different accents) in addition to English (and also omits a few English ones too), and at the moment I am in Switzerland where you can find I think 3 different keyboard layouts (German, French, Italian). On the other hand, I mostly use the keyboard with English, either for programming or for writing mostly in English. So I decided to use a physically US layout keyboard 5+ years ago, and happy with the decision. I used US layout before as well, so it was not difficult to adapt. Because I need to use particular characters of Turkish or German time to time, I created a custom keyboard map in Windows and mapped Alt-Gr (which I dont use) + char to its Turkish or German variant (luckily there is no conflict). For example, this happens when I press the key and then alt-gr + key: o ö, u ü, i ı, g ğ, c ç, b ß.
-
…and at the moment I am in Switzerland where you can find I think 3 different keyboard layouts (German, French, Italian).
Oh, it’s way weirder than that. I think that the Italian part of Switzerland uses Italian keyboards, but I’m not sure; I’ve spent practically no time there. (Edit: wiki says they just use the Swiss French layout.)
The French and German parts of Switzerland does not use the French, Italian, or German keyboards at all. They use the Swiss keyboard layout(s). I put the s in parentheses because it’s one physical layout and keycap labeling, but two key mappings in software. Basically, it’s two closely related variants of one layout. There are three keys that aren’t mapped identically: the Swiss German keyboard outputs ä/ö/ü on those keys by default, and à/é/è shifted. The Swiss French layout is the reverse: it outputs à/é/è by default and ä/ö/ü shifted.
(This is reminiscent of how cinema subtitles worked here in Switzerland back when they used film: they didn’t use the subtitled prints from France and Germany, but rather a custom print that had the German (with Swiss orthography) and French subtitles simultaneously. Usually German in plain, French in italics.)
-
The only one I need to go looking for the is the € Symbol. It's mapped under iso-8859-15 as the Euro extension to iso8859-1 western-latin. It's often on R.Alt + 4. € <-- hey it works! Sometimes.
The shift number keys gives:
!"£$%^&*()_+
The difference between this (UK105) is the " on 2 and £ on 3 replace the @ and # Those exist on the two keys beside enter as lL ;: '@ #~
The other one that can be hard to find is the | and both / and \ . These I lose particularly on nonUK euro keyboards.
In work I know when the admins have been noisying around my work machine. They tend to forget to set my keyboard local back to UK.
-
…and at the moment I am in Switzerland where you can find I think 3 different keyboard layouts (German, French, Italian).
Oh, it’s way weirder than that. I think that the Italian part of Switzerland uses Italian keyboards, but I’m not sure; I’ve spent practically no time there. (Edit: wiki says they just use the Swiss French layout.)
The French and German parts of Switzerland does not use the French, Italian, or German keyboards at all. They use the Swiss keyboard layout(s). I put the s in parentheses because it’s one physical layout and keycap labeling, but two key mappings in software. Basically, it’s two closely related variants of one layout. There are three keys that aren’t mapped identically: the Swiss German keyboard outputs ä/ö/ü on those keys by default, and à/é/è shifted. The Swiss French layout is the reverse: it outputs à/é/è by default and ä/ö/ü shifted.
(This is reminiscent of how cinema subtitles worked here in Switzerland back when they used film: they didn’t use the subtitled prints from France and Germany, but rather a custom print that had the German (with Swiss orthography) and French subtitles simultaneously. Usually German in plain, French in italics.)
It is fun to be in a quadlingual country :)
Yes you are right, I meant Swiss German not German layout but I saw now it has also French keys, I didnt know French speaking part uses the shifted keys by default.