How do I type accented characters in windows?

43

15

I heard that you can hold alt and type out some cryptic numeric code to get characters like accented letters. Is there a way to do this more like the mac way?

adambox

Posted 2010-02-18T20:37:14.527

Reputation: 905

Answers

7

Windows is such a pain. I've been using copypastechar to grab them and paste in. :P

adambox

Posted 2010-02-18T20:37:14.527

Reputation: 905

5

+1 as it even contains ☃ :-) (How else can one get to http://%E2%98%83.net/ when needed!)

– Arjan – 2010-02-28T03:52:49.007

Yeah, it's super awesome! – trusktr – 2013-09-18T05:38:49.500

19

Native Software Options

Windows Character Map

Windows Character Map

Open the Windows Character Map via one of the following methods:

  • Go to Start → All Programs → Accessories → System Tools → Character Map or Start → Windows Accessories → Character Map.
  • You can type "Character Map" in the Start Menu search box.
  • You can secondary-click on the Start button, click on Run, type "charmap", and click OK (or hit Enter).
  • You can press Win + R, type "charmap" and click on OK (or hit Enter).
  • You can create a shortcut to it on your Desktop or other location.
  • If on Windows 7, you can Pin it to your taskbar, or Start Menu.

When you have the Windows Character Map open,

  1. Find the character you want.
  2. Single click will zoom on the character for a closer look.
  3. Double clicking will append the character into the Characters to copy text box at the bottom, and the contents of Characters to copy will be put on your clip board. You can then paste (Ctrl + V) this where you want to use the characters.

Keyboard Shortcuts

To use the Alt keyboard shortcuts, you have to have a keyboard with a dedicated numberpad, and you have to have Numlock turned on. You also have to know the number of the character you want. For example, if you want to type a lowercase e with an acute accent (é), then you would hold down the Alt key, and type Numpad 0, Numpad 2 , Numpad 3, Numpad 3. Remember that Num Lock must be turned on, and you must use the keys on the number pad. You cannot use the number keys at the top of your keyboard.

A couple of different methods to find out what the number associated with the character is. The easiest is to use the Windows Character Map, if you notice in the bottom right hand corner of Character Map after you click on a character, it tells you the key sequence. There are also a lot of websites that list this such as this one that breaks them down into categories.

Additional Language Services

You can add additional input language services for Spanish, German, Greek, et al.

  1. Go to the Control Panel and click on Change keyboards or other input methods under Clock, Language, and Region
  2. Click on the Keyboard and Languages tab
  3. Click on the Change Keyboards... button
  4. Click on the Add... button
  5. Expand the language that uses the characters you want (e.g. Spanish (Mexico))
  6. Expand Keyboard
  7. Check one of the options (e.g. Latin American)
  8. Click on the OK button
  9. Click on the Apply button

After this, a language selector will be in the system tray. You can then click on this to open a language selection menu.

Input Language Selector

As an example, if you want to type out a lowercase acute e (é) then you would single click on the language selector, select Spanish (Mexico), then press the ´ key, and press e. You should make sure you switch back to English (United States) or whatever your native language is.

Note, you can toggle between input languages by pressing Left Alt + Left Shift, you can also setup hotkeys for specific input languages under the Advanced Key Settings tab in the Text Services and Input Languages dialog you arrived at after step 3 of the last section.

Hardware Options

As others mentioned, you can purchase keyboards that have accented characters available on them such as this $5.00 Latin/Spanish keyboard on eBay.

Third-Party Software Options

These options will get you the closest to the Mac style. In Linux, you can setup what's called a "Compose Key" which behaves similary to the Mac method. For example, to type a lower-case acute e (é) you would do Compose Key, ', e. As a result, you can search for "compose key for windows" and arrive at most of these options.

  1. freecompose: Works on Windows 2000 or better. This is what I personally use and recommend since it lets you add, remove, and change the key sequences.
  2. AutoHotkey in combination with this script that @jay mentioned.
  3. Unichars: also an AutoHotkey solution
  4. AllChars

Personally, I like to set my "Compose Key" to the Caps Lock key. But many people use the Left Alt key.

Drew Chapin

Posted 2010-02-18T20:37:14.527

Reputation: 4 839

17

Ctrl + ', then let them go, and e will give you é

This will work for the vowels, but in my tests, only in certain situations (e.g. MS Office).

Chris Dwyer

Posted 2010-02-18T20:37:14.527

Reputation: 2 185

6This has worked for DECADES, but apparently recently in Windows 10 they removed support for this for no reason.

In my keyboard layout (Finnish) e.g. ñ used to work by pressing Alt Gr + ~ and then n, now it does nothing. – Janne Enberg – 2017-06-03T09:52:38.693

@JanneEnberg You can get the CTRL + Shift + ~ behavior back if you add the United States - International keyboard instead of the normal US one. – Roald – 2018-02-02T08:24:49.740

1@Roald There seems to be no such option as Finnish - International, I never use the US layout – Janne Enberg – 2018-02-03T09:09:02.433

Works for me on Microsoft products on Win 10 with US Keyboard set. – Richard Marskell - Drackir – 2020-01-24T15:20:33.280

1Also works for ñ, by doing CTRL + Shift + ~ and then pressing n haven't tried anything else yet. – Drew Chapin – 2013-09-11T03:56:10.147

10

An alternative would be installing a multilingual keyboard layout (such as Canadian Multilingual) and use the hotkeys (ALT+SHIFT in Vista and 7) to alternate between that and your normal keyboard layout.

MetalMikester

Posted 2010-02-18T20:37:14.527

Reputation: 506

Thanks Ivo - I forgot that I had changed the key sequence on my PC. – MetalMikester – 2010-02-19T12:17:10.863

1@Ivo: Alt+Shift switches input languages, Ctrl+Shift switches keyboard layouts for the currently active input language (by default, at least). Of course, ofttimes switching the input language also switches the keyboard layout, but those two concepts are distinct. Depending on your configuration (one input language, multiple keyboard layouts or multiple input languages, each with its own layout) either one can be correct. – Joey – 2010-02-19T14:33:37.970

1

US International is also a nice one, although not suitable for every European language (Polish for example is lacking). Another alternative would be to create a custom keyboard layout using MSKLC: http://www.microsoft.com/downloads/details.aspx?familyid=FB7B3DCD-D4C1-4943-9C74-D8DF57EF19D7&displaylang=en

– Joey – 2010-02-19T14:35:49.230

The actual short-cuts such as "Right Alt + apostrophe, letter" show up in a Microsoft article support.microsoft.com/en-us/kb/97738#/en-us/kb/97738 that appears in IE but not in Firefox. However, when I removed the plain US keyboard layout and left just US international to avoid random switching back and forth, I observed that only RightWin+apostrophe worked as a prefix, and only in some of the windows, and only after pressing Alt+Shift... Not sure why. – eel ghEEz – 2015-07-30T14:55:09.240

1Ctrl+Shift was driving me crazy, switching to International when I didn't want it. In Windows 8.1, go to Control Panel > Clock, Language, and Region > Language > Advanced settings >

Change Language Bar Hotkeys > Advanced Key Settings > Change Key Sequence.

Set Switch Keyboard Layout to Not Assigned.

Windows+Space will still work, but Ctrl+Shift will no longer switch keyboard layouts. – Christian Long – 2014-01-20T06:54:58.833

7

I've been using this awesome AutoHotkey script from this forum http://www.autohotkey.com/forum/topic570.html by 'jak'. Just set this script to run at startup:

With this you can do stuff like

  • Windows + ` and then e to get è
  • Windows + : and then e to get ë

...etc

;====================================
;accents "top part" - this top part needs to be located at the top part (the 'run' part) of the ahk file
;====================================
;
;============ ----- Send Unicode Character - universal MS word-style accents in any application
;
SendInput:=DllCall("GetProcAddress",UInt,DllCall("GetModuleHandle",Str,"user32"),Str,"SendInput")
VarSetCapacity(SendUbuf, 56, 0) ; INIT SendU data strucure
NumPut(1, SendUbuf, 0, "Char")
NumPut(1, SendUbuf,28, "Char")
NumPut(0x40000, SendUbuf, 6)
NumPut(0x60000, SendUbuf,34)
;-----------------
;

;====================================
;accents "hotkey part" -  (this part can be located anywhere)
;====================================
;



SendU(UC) {                     ; Send Unicode Char, Pressed modifier keys stay active!
   Global                       ; SendUbuf, SendInput
   NumPut(UC, SendUbuf, 6, "Short")
   NumPut(UC, SendUbuf,34, "Short")
   Return DllCall(SendInput, UInt,2, UInt,&SendUbuf, Int,28)
}


a::
if accent=grave
;   sendinput,à
{
SendU(0x00e0)
}
else if accent=acute
{
;   Send,á
SendU(0x00e1)
}

else if accent=circumflex
;   sendinput,â
{
SendU(0x00e2)
}
else if accent=tilda
;    sendinput,ã
{
SendU(0x00e3)
}
else if accent=umlaut
;   sendinput,ä
{
SendU(0x00e4)
}
Gosub,TurnAccentsOff
Return


c::
if accent=cedilla
;    sendinput,ç
{
SendU(0x00e7)
}
Gosub,TurnAccentsOff
Return

e::
if accent=grave
;   sendinput,è
{
SendU(0x00e8)
}
else if accent=acute
;   sendinput,é
{
SendU(0x00e9)
}
else if accent=circumflex
;   sendinput,ê
{
SendU(0x00ea)
}
else if accent=umlaut
;   sendinput,ë
{
SendU(0x00eb)
}
Gosub,TurnAccentsOff
Return


i::
if accent=grave
;   sendinput,ì
{
SendU(0x00ec)
}
else if accent=acute
;   sendinput,í
{
SendU(0x00ed)
}
else if accent=circumflex
;   sendinput,î
{
SendU(0x00ee)
}
else if accent=umlaut
;  sendinput,ï
{
SendU(0x00ef)
}
Gosub,TurnAccentsOff
Return


n::
if accent=tilda
;    sendinput,ñ
{
SendU(0x00f1)
}
Gosub,TurnAccentsOff
Return

o::
if accent=grave
;   sendinput,ò
{
SendU(0x00f2)
}
else if accent=acute
;   sendinput,ó
{
SendU(0x00f3)
}
else if accent=circumflex
;   sendinput,ô
{
SendU(0x00f4)
}
else if accent=tilda
;    sendinput,õ
{
SendU(0x00f5)
}
else if accent=umlaut
;   sendinput,ö
{
SendU(0x00f6)
}
Gosub,TurnAccentsOff
Return


u::
if accent=grave
;   sendinput,ù
{
SendU(0x00f9)
}
else if accent=acute
;   sendinput,ú
{
SendU(0x00fa)
}
else if accent=circumflex
;   sendinput,û
{
SendU(0x00fb)
}
else if accent=umlaut
;   sendinput,ü
{
SendU(0x00fc)
}
Gosub,TurnAccentsOff
Return


+a::
if accent=grave
;   sendinput,À
{
SendU(0x00c0)
}
else if accent=acute
;   sendinput,Á
{
SendU(0x00c1)
}
else if accent=circumflex
;   sendinput,Â
{
SendU(0x00c2)
}
else if accent=tilda
;    sendinput,Ã
{
SendU(0x00c3)
}
else if accent=umlaut
;   sendinput,Ä
{
SendU(0x00c4)
}
Gosub,TurnAccentsOff
Return



+c::
if accent=cedilla
;    sendinput,Ç
{
SendU(0x00c7)
}
Gosub,TurnAccentsOff
Return


+e::
if accent=grave
;   sendinput,È
{
SendU(0x00c8)
}
else if accent=acute
;   sendinput,É
{
SendU(0x00c9)
}
else if accent=circumflex
;   sendinput,Ê
{
SendU(0x00ca)
}
else if accent=umlaut
;  sendinput,Ë
{
SendU(0x00cb)
}
Gosub,TurnAccentsOff
Return


+i::
if accent=acute
;   sendinput,Í
{
SendU(0x00cc)
}
else if accent=grave
;   sendinput,Ì
{
SendU(0x00cd)
}
else if accent=circumflex
;   sendinput,Î
{
SendU(0x00ce)
}
else if accent=umlaut
;   sendinput,Ï
{
SendU(0x00cf)
}
Gosub,TurnAccentsOff
Return


+n::
if accent=tilda
;    sendinput,Ñ
{
SendU(0x00d1)
}
Gosub,TurnAccentsOff
Return


+o::
if accent=grave
;   sendinput,Ò
{
SendU(0x00d2)
}
else if accent=acute
;   sendinput,Ó
{
SendU(0x00d3)
}
else if accent=circumflex
;   sendinput,Ô
{
SendU(0x00d4)
}
else if accent=tilda
;    sendinput,Õ
{
SendU(0x00d5)
}
else if accent=umlaut
;   sendinput,Ö
{
SendU(0x00d6)
}
Gosub,TurnAccentsOff
Return



+u::
if accent=grave
;   sendinput,ù
{
SendU(0x00d9)
}
else if accent=acute
;   sendinput,ú
{
SendU(0x00da)
}
else if accent=circumflex
;   sendinput,û
{
SendU(0x00db)
}
else if accent=umlaut
;   sendinput,ü
{
SendU(0x00dc)
}
Gosub,TurnAccentsOff
Return


TurnAccentsOff:
Hotkey,a,off
Hotkey,e,off
Hotkey,i,off
Hotkey,o,off
Hotkey,u,off
Hotkey,c,off
Hotkey,n,off
Hotkey,+a,off
Hotkey,+e,off
Hotkey,+i,off
Hotkey,+o,off
Hotkey,+u,off
Hotkey,+c,off
Hotkey,+n,off
Return

TurnAccentsOn:
Hotkey,a,on
Hotkey,e,on
Hotkey,i,on
Hotkey,o,on
Hotkey,u,on
Hotkey,c,on
Hotkey,n,on
Hotkey,+a,on
Hotkey,+e,on
Hotkey,+i,on
Hotkey,+o,on
Hotkey,+u,on
Hotkey,+c,on
Hotkey,+n,on
Return



<#'::
keywait, lwin
accent=acute
Gosub,TurnAccentsOn
Return



<#`::
keywait, lwin
accent=grave
Gosub,TurnAccentsOn
Return



<#6::
<#+6::
keywait, lwin
accent=circumflex
Gosub,TurnAccentsOn
Return



<#;::
<#+;::
keywait, lwin
accent=umlaut
Gosub,TurnAccentsOn
Return



<#,::
keywait, lwin
accent=cedilla
Gosub,TurnAccentsOn
Return



<#+`::
keywait, lwin
accent=tilda
Gosub,TurnAccentsOn
Return



Gosub,TurnAccentsOff

There's also a more Mac like approach which I haven't tried here: http://www.autohotkey.com/forum/topic30440.html.

jay

Posted 2010-02-18T20:37:14.527

Reputation: 6 287

I used the second link you gave, http://www.autohotkey.com/forum/topic30440.html and it's rock-and-roll :) thanks!

– adambox – 2010-03-03T17:54:32.757

1

update: the autohotkey scripts are gobbling up my ctrl key, screwing up all sorts of stuff. I just use copypastechar now :P http://www.copypastecharacter.com/

– adambox – 2010-06-22T11:39:19.517

@adambox: gobbling up? – jay – 2010-06-23T00:44:41.670

when it's enabled, I can't do things like ctrl-a to select all :( – adambox – 2010-06-23T14:33:25.507

with the second script at the first link given, it works great for me, no Ctrl-gobbling happening: I can still Ctrl+A et faire accents comme ça. :) – Kev – 2011-10-28T21:55:06.123

+1 one for copypastecharacter.com. It's super simple without having to install and configure anything. – trusktr – 2013-09-18T05:38:00.917

4

I use AllChars on a daily basis. It emulates X-style Compose key, allowing me to quickly type all those annoying characters like ©, ® and °.

Delyan

Posted 2010-02-18T20:37:14.527

Reputation: 323

4

You could try WinCompose, you assign a hot key such as right Alt or right Ctrl, then tap that to activate WinCompose, then enter the required key sequences to create the character you want.

https://github.com/samhocevar/wincompose

e.g. ö is created by doing (=> means next character in the sequence)

WinCompose (right alt for me) => o => "

You can even do unicode symbols etc.

WinCompose => WinCompose => b => i => c => y => c => l => e

peteski

Posted 2010-02-18T20:37:14.527

Reputation: 101

3

A keyboard layout is what you want. If you only need common Western European accented characters, the Microsoft-supplied UK Extended or US International can type these without resorting to Alt-Numpad codes.

Alternatively the Spanish layout is similar to the English layout and has dead keys for Spanish accents.

Finally, for a near-comprehensive solution, consider this Euro keyboard layout:

Created using the official MSKLC, it will type almost every European language, as well as allowing the entry of such things as fractions, ligatures, En-Dash, Em-Dash, circled numbers and so on.

I haven't used this myself yet but I intend to try it this evening.

Ben

Posted 2010-02-18T20:37:14.527

Reputation: 1 406

3

Windows 8 has a Touch Keyboard, which by default only shows if you have a touchscreen, but you can set it to show even if you don't. With Touch Keyboard, you can press and hold a letter, and it will show you its accented variants.

Joey Adams

Posted 2010-02-18T20:37:14.527

Reputation: 2 029

2

I will shamelessly plug a little tool I wrote for entering symbols in Windows as I find any solution usually presented too cumbersome for daily frequent use. My personal use case is typing the Swedish å for example on an international US keyboard without having to switch layouts or resort to (shudder) alt key codes.

It allows the entering of unicode characters through a popup window not dissimilar to how this works in Apple OS X.

See https://github.com/mjvh80/SymWin for details, it's free and open source, but must (currently) be compiled. If there is sufficient interest I could add a pre-built version.

The tool can be configured per key, e.g. by copy/pasting symbols once from a site such as http://copypastecharacter.com.

Marcus

Posted 2010-02-18T20:37:14.527

Reputation: 131

1

Another shameless self-promotion...I wrote an app for Windows 10 - KeyEXT - which emulates what the Mac does natively. You can hold down a key to display options for accented and other foreign characters. The default setup includes most of the characters needed for Latin-based European languages. You can also customize your own setup to include any characters from Unicode you wish - Arabic, Chinese, Sanskrit, Wingdings-style stuff...whatever.

You can find it here: https://www.microsoft.com/store/apps/9P8X3818K9KT

W Carter

Posted 2010-02-18T20:37:14.527

Reputation: 11

Hey, I haven't found any other way to message you. Would you mind fixing a bug on your app, and maybe make a few small changes? – herrmartell – 2019-04-12T16:26:21.403

1

Another plug: Keyferret is a free Windows-based tool which I recently wrote to make entering all these characters easy, e.g.

  • Type “a” then Right Alt+ to get “á”
  • Type “1/2” then Right Alt+Space to get “½”
  • Type “=” then Right Alt+/ to get “≠”
  • While holding down Right Alt, keep pressing d to get “ð” (eth), “°” (degree), “†” (dagger), “‡” (double dagger), or “♦” (diamond), releasing when you have the symbol you want.

It hooks Windows natively rather than being an autohotkey script, gives interactive help by holding RAlt, and you can edit your own layout (although this requires editing a text file).

Andrew

Posted 2010-02-18T20:37:14.527

Reputation: 1

0

Not really, Windows doesn't allow accented input as easily. However, it is generally pretty easy to locate the codes you need by using the 'Character Map' utility.

From the run dialog (Win+R), execute: charmap.exe

In there, you will be presented with a font selection at the top and a grid of characters that font provides. I recommend picking a good standard font (e.g. Times New Roman). Locate the character you want and SINGLE-CLICK on it.

In the bottom right corner of the window there will be a code that correlates to the Alt+### code you use to type that character. Alternatively if you DOUBLE-CLICK on the character, it will append it to the text-box at the bottom left of the application, where you can easily copy & paste it into the program you needed the character.

Some software has a special-characters insert built right in (Word for example, under Insert Special Character). Do note however, that if you use a non-standard font you may get something other than what you expected (Wingdings is a great example of this).

Sam

Posted 2010-02-18T20:37:14.527

Reputation: 848

0

You do not mention the version of Windows you are using.

In Windows 7 this works brilliantly for Irish fada vowels, also used in other languages:

  • Win Key+a types á
  • Win Key+e types é
  • Win Key+i types í
  • Win Key+o types ó
  • Win Key+i types ú

But this does not work for me in Windows 10, Janne Enberg indicated in one of the posts that it was removed in an update :-(

For windows 10 Duolingo have this page: How To Type Accented Characters On An English Keyboard (Windows 10 Tutorial)

boardtc

Posted 2010-02-18T20:37:14.527

Reputation: 254

0

On Windows in Microsoft Word, try this (may also work in Outlook)
ctrl+`
ctrl+'
ctrl+shift+~
ctrl+shift+^
ctrl+/
ctrl+shift+:
then follow these with an appropriate letter like a lower case o to get the accented character.

user3142056

Posted 2010-02-18T20:37:14.527

Reputation: 1

0

I use a lot of odd characters, and actually found it worthwile to create a new keyboard layout using MSKLC, that uses the layout I am used to, but adds a lot of special characters in unobtrusive places. Those I use most are inserted as AltGr combinations, e.g., AltGr+n for ŋ and so on. The idea is that you or anyone using your computer should have everything in its expected place, with all those extra characters available to you if you need them. The only way this can be made to work is if you take pains to put the characters in intuitive places. If you weren't sure whether a character existed or not on your keyboard, which keys would you try? These are generally a great place to keep them.

This does not solve everything, of course. I also set a keyboard shortcut to the insert symbol dialog in word, use the Charmap and separate keyboard layouts for completely different input methods, such as arabic-based alphabets.

That said, I am intrigued by the idea of combination solutions, because they also let you use intuitive paths to the characters you need. Reminds me of old Word Perfect...

Emil

Posted 2010-02-18T20:37:14.527

Reputation: 495

0

keyxpat could be your solution. You get the accents and other diacritics on the keys you expect them to be. The character you get only depends on the time you take to release the key (a metronome helps you determine that moment). I wrote it for myself first and a lot of people appreciated it so I'm proposing it now online.

Nicolas Cadilhac

Posted 2010-02-18T20:37:14.527

Reputation: 184

0

so i searched and searched the web how to type enye ...i accidentally discovered it by myself yesterday ... just hold ctrl+shift+...then press the letter "n" if you wana type it in a small letter just let go ctrl+shift+ before you press "n" ...this hotkey works on windows 8.1 ..

douchebee

Posted 2010-02-18T20:37:14.527

Reputation: 1