63

Here is what the layout of an Italian keyboard looks like:

enter image description here

As you can see, the curly braces, which are absolutely necessary to write code in any of C, C++, JavaScript, Java, Objective-C, and others, appear in purple in this picture. This is because while the other characters can be seen visually as printed characters on most Italian keyboards, these purple characters are actually usually not printed on the keyboard's keys. These characters, found in the upper right corners of the given keys, can usually be generated with the following key combinations:

(RIGHT SHIFT or LEFT SHIFT) + (RIGHT CTRL or LEFT CTRL) + (Alt or AltGR) + ([ or ])

(Actually as the MSKLC application shows, SHIFT + AltGr + [ and SHIFT + AltGr + ] are enough to generate the curly braces.)

Characters such as the at (@) sign (called 'chiocciola' in Italian) and the hash (#) key (called 'cancelletto' in Italian) found in the lower right hand corner of the keyboard can be generated easily as follows (AltGr + @) or (AltGr + #). Such characters are also fundamental to programming as they can, for instance, be found in CSS, namely with media queries and with selectors referring to the id html attribute.

Upon further inspection, we can see that all of the US ASCII keyboard / programmer's keyboard are covered by the keys of the Italian keyboard, except for the following, which are the tilde, which is especially useful on the Linux command line and is used to refer to a user's home directory on such system, as well as the back-tick (`), also known as the back-quote, which is also very useful on the Linux shell when we want to turn the output of a command into a command-line input.

So, here comes the question:

With all those empty upper-right hand corners of keys, why isn't there a better way of generating these characters, perhaps through a CTRL-ALT-SHIFT modifier key combination?

All I've been able to find regarding generation of these characters are the following ALT-codes:

ALT code 96 corresponds to `

ALT code 123 corresponds to {

ALT code 125 corresponds to }

ALT code 126 corresponds to ~

and to generate a character via an ALT code, you make sure that the NumLock key on your keypad is toggled on, hold down the ALT key, enter the keycode, and release the ALT key.

ALT code are documented at: https://www.alt-codes.net/

If someone knows of a better way of inserting these characters from an Italian keyboard without switching the keyboard layout in the Control Panel, then please let me know. Thanks.

12 Answers 12

37

The basic Italian keyboard layout as shipped with Windows 7 has no way of typing the backtick (`) or the tilde (~). I checked this using Microsoft Keyboard Layout Creator (MSKLC), with that layout loaded into it. I presume that this layout is more or less standard in Italy, though of course Microsoft might have its own oddities here.

However, in Windows 7, there is a somewhat different layout called “Italian (142)”. In it, the backtick can be typed using AltGr + and the tilde using AltGr §. Here “+” and “§” refer to the keys labeled so in the picture in the question, i.e. two keys to the right of “P” and three keys to the right of “L”. I suppose this “Italian (142)” might be some kind of “Italian programmer’s keyboard”, or just a variant keyboard, possibly reflecting different physical keyboards.

If you are using Windows (as I guess because you mentioned “Control Panel”), consider downloading MSKLC and using it to create a modified Italian keyboard layout that suits your needs, and use it as the normal layout, with no need for switching between layouts. You could e.g. make AltGr ' produce the backtick and AltGr ^ produce the tilde; these should be relatively easy to remember due to similarity of characters.

As to the “why” question (why basic Italian layout lacks those characters), I would say that keyboards are primarily designed for typing texts in natural languages, and Italian has little use for those characters. The layout has keys for à, è, ì, ò, ù, so there is no need for a backtick key acting as a dead key (diacritic key) for typing vowel + grave accent combinations, as in many other European keyboards. And while other Romance languages have letters with a tilde, like ã and ñ, Italian does not.

4
  • 3
    I suppose setting (AltGr + ') and (AltGr + ^) in MSKLC (Microsoft Keyboard Layout Creator) to produce the characters backquote (`) and tilde (~) is also a good idea since these keys would then match the way the keys are set up on Linux as documented below. Thanks. Oct 31, 2013 at 14:18
  • Following suggestions of Jukka and John, I created a custom layout to solve this uncomfortable behavior of the italian keyboards.
    – Neurone
    Sep 11, 2015 at 10:21
  • 4
    Please note that selecting the keyboard layout Italian (142) breaks existing keys, therefore it is not a solution. Feb 12, 2017 at 12:03
  • The odd stuff of 104key layout is that it remaps ] key to ~, so gets uncomfortable because square brackets will no longer be where are supposed to (also making misleading the key serigraph). Couldn't they just remap it on an empty button (like T, for "tilde")? instead of forcing it on an already useful key.
    – DDS
    Jul 16, 2018 at 13:35
27

On *Nix machines, you can get a tilde ~ by hitting right AltGr + ^ (you have to strike the two characters simultaneously).

By the same token, you can get a backtick ` by hitting right AltGr + '

7
  • 8
    The methods do not work on Italian keyboard layout as shipped with Windows 7. Using a layout called “Italian (142)”, the characters can be typed, but using different keys – perhaps you are using that layout and a physical keyboard (keycaps) different from the one in the picture? Oct 31, 2013 at 6:35
  • 1
    This is my keyboard (Linux): setxkbmap -query rules: evdev model: pc105 layout: it Oct 31, 2013 at 7:40
  • 4
    I'm Italian and in my linux terminal it works.
    – Kyrol
    Jan 6, 2015 at 11:56
  • Also Andrea Scarpino provided the same solution for Windows. github.com/ilpianista/itlinux-win-keyboard
    – isar
    Jul 14, 2017 at 19:17
  • To have the same shortcuts for ` and ~ on both linux (home) and win (office) I installed this software on my windows machine: gryder.org/software/clavier-plus
    – Tilt
    Sep 14, 2020 at 13:12
9

I also had this issue when started using mine. On Mac, You can set tilde by typing option + n + character, such as option + n and then a would produce ã. The same holds for for ´ and ` in this layout:

option + n: ˜

option + 8: ´

option + 9: `

3
  • @ksav: The narrative portion of the answer says that (option)(n)(a) produces ã, so I interpret the table as saying that (option)+(n) produces ~ as a diacritical mark (i.e., as a symbol above a letter). What if I want to type "~a"?  According to your comment, I should type (option)+(n) and then (a).  But according to the answer, that's the sequence that produces ã. Oct 13, 2016 at 20:11
  • option + n space a : ~a
    – ksav
    Oct 14, 2016 at 13:05
  • @LưuVĩnhPhúc In Windows by default the Option + N is mapped to the function Fn key. You will see it works, just the same, given the english or english international keyboard. Jun 7, 2017 at 11:30
6

I made a layout based on Italian plus Linux shortcuts to get tilde and backtick: code and installer are here.

2
  • 1
    If you see multiple identical questions, please flag or vote to close, not post identical answers to all of them
    – Journeyman Geek
    Jan 5, 2017 at 12:45
  • Hi Andrea, many thanks for your tool! Can your keyboard layout be loaded without admin permission? For example, in a company where some common workstations can be used only as normal user? Mar 18, 2019 at 17:35
5

As a programmer this issue will always be extremely irritating for me.

I have never truly used characters like ç or § in my keyboard, so I created and compiled a small script using AutoHotkey, called programmer.ahk, which tries to mitigate the problem:

Capslock::{
+Capslock::}
+SC02B::~
+SC027::`

Once compiled and executed it will do the following things:

  • CAPS LOCK prints {
  • SHIFT + CAPS LOCK prints }
  • SHIFT + ò prints ` instead of ç
  • SHIFT + ù prints ~ instead of §

The CAPS LOCK feature is personal, but I've included it because simplifies extremely the use of curvy brackets while coding.

Hope it can help.

1
  • 1
    This is a great idea! And since there are portable versions of AutoHotkey, then it can be used without admin permissions (for example with common worksations in companies). Deserved upvote! PS How have you determined SC02B and SC027? Is there any map online for this? I am asking because I would like to assign different keys. Mar 18, 2019 at 18:20
2

If you need the tilde ~ when using Putty in Windows (but it also works in a Debian VM) with an Italian keyboard you can also press F12.

2

Starting from the answer by Federico and from the answer by Marius, I wrote this little AutoHotKeys code to map tilde and backtick on Windows in the same way they can be obtained on Unix.

>!SC00C::`
>!SC00D::~

Once the script is loaded on AutoHotKeys, based on the Italian keyboard figure attached by the OP, it will do the following things:

  • RIGHT ALT + ' prints `
  • RIGHT ALT + ^ prints ~

which is the same behaviour you usually have on Unix with Italian layout.

Important note: also runnable with no admin rights. I like this solution because I am using it without admin rights since there exists a portable version of AutoHotKeys from PortableApps.com linked below.

Standard (non-portable) version of AutoHotKeys
Portable version of AutoHotKeys (from PortableApps.com)

1

Game: Fallout 4 - Italian Keyboard and Windows 8 - no tilde right? Couldn't open console.....opened console by using the key right after l: the one with c cediglia ò and chiocciola. You use that, then write your cheats then reuse it: it works :D

the mentioned key

1
  • 2
    in italian language, cediglia="ç", chiocciola=snail="at"="@"
    – netalex
    Jul 30, 2018 at 8:20
1

This is my preferred solution:

https://1drv.ms/u/s!ArqXUvKZFFNH70KlRzmg1fmF4e_K?e=a3eWg9

Install this keyboard, then remove any keyboard in Control Panel except this new keyboard.
Now you can type these chars:

` (AltGr + ')
~ (AltGr + ì)
À (AltGr + shift + a)
È (AltGr + shift + e)
Ì (AltGr + shift + i)
Ò (AltGr + shift + o)
Ù (AltGr + shift + u)
® (AltGr + r) registered
© (AltGr + c) copyright

(source: https://superuser.com/a/598465/225814)

0

I've compiled a keyboard mapping with:

  • ~ (tilde) on AltGr+5
  • ` (backtick) on AltGr+\

It used to work on Windows 7.

Find it here: https://github.com/pierreprinetti/itaqrawl

0

I faced same issue, I built this layout: layout

If you want to try it, it has also dead keys (for ' and `, so inserting Á will never be a pain). To access those you just have to press contrl + 0 for `and control + ' for ', altgr + ù for ~.

I also added some greek letters like αβδ€ψω under alt-gr along with some other symbols: « » ± Ø.

You can download my layout here: here

0

I'm little late but here is my answer. I modified the italian standard layout (on windows) with few useful characters:

• with altgr + .
~ with altgr + - (the one next to right shift)
ÈÀÒÙÌ with altgr + shift + the relative vowel
` with altgr + ì 
± with altgr + '
≈ with altgr + 0
× (times) with altgr + 8
÷ with altgr + 7
∑ with altgr + s
Ø with altgr + D
< on altgr + z (damn to HP Pavilion keyboard with "ansi-like italian keyboard" <> in place of right ctrl)
> on altgr + x
{ altgr + shift + è
} altgr + shift + +

Also I made ' and ` performing as "mute keys" with the same combo as above with also shift.

Here is a Link to my Layout

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .