The last proposed designs from ED, _wb_, ible and grench look fine, except there is no possibility to quickly alter the states of the wireless connections, one button should suffice for this (either by just toggeling through all combinations from "all off" to "all on" or the more clever version Grench proposed).
If you want a dedicated button for that, you can let USR1 or USR2 do that. I personally don't want a quick wifi toggle. My laptop has one, and all I 'use' it for is... accidental disconnects.
On a serious note : as a Froggy myself, I think we can live with only dead keys. What we need as dead keys for common French is : " ´ ", " ` ", " ¸ ", " ¨ " and " ^ ".
Please note that AZERTY is not a good indicator for French language as it is completely flawed. As a Windows user, I
have to thank Microsoft for at least one thing : the Alt+Unicode.
This is the only way I know of to get Ç and É on this layout, because we can't just shift the letter as it's getting us the numbers. And we only get " ` ", " ¨ " and " ^ " as dead letters (the two latter ones being less commonly used).
It's even more worrying as some people actually believe that because of this fact, capital letters in typed French shouldn't be accentuated.
So don't worry about giving us dedicated letters, just give us dead diacritics and we'll do fine, as we've been through way worse.
If you thank Microsoft for Alt+number codes, then you should certainly thank *nix for the Compose key, which is much easier (Compose , C for Ç for example).
Layout I'm referring to:
http://www.keyboard-layout-editor.com/#/layouts/6cba5957453accdc87e90713d2aa5f35
Let's discuss dead diacritics. It is a good mechanism, since it is more efficient than Compose sequences (two thumb presses instead of three). It is less efficient than a direct precomposed character though (one thumb press).
Acute ´
For French you don't really need dead acute, just éÉ suffices (and by having é on Fn+Q, obviously that implies that Shift+Fn+Q does É). It is good to have this as a special key too, because é is very common in French. Also in several other languages and in many loan words like "café" it is used. So having a dedicated éÉ is useful. Still, there is
also a dead acute on Fn+R, because it is essential for a.o. Spanish, which puts acutes on all vowels. There are also Eastern European languages that put acutes on consonants, e.g. the Polish ć ń ś ź.
Grave `
For French you need à and è commonly, and ù in the word "où" (
where), to distinguish it from the word "ou" (
or). In most other languages (notable exception: Italian), à and è are also the most commonly used ones. I suggest to not have an explicitly labeled dead grave and to have Fn+B produce a backtick (`) immediately. However, if you need other graves than à and è, you could let Fn+B be dead grave (so you need to type Fn+B followed by space to get a backtick symbol). For Italians that makes sense. If you only rarely need other graves (e.g. French, which needs ù every now and then for the word "où"), then Compose is probably good enough. Also, Fn+Shift+B could be a dead grave by default, for those 'in the know'.
Diaeresis / Umlaut ¨
For German you need äöü. The ä and ö are also used in Swedish and Finnish. They are pretty common letters (especially in the Scandinavian languages), so having them available directly (in one thumb press) is practical. Other languages (e.g. French, Dutch) also need ë and ï, though typically not frequently. The Compose method (e.g. Compose " e for ë) is good enough. Also, Fn+" (so Fn+Shift+') could be mapped to dead umlaut by default, for those 'in the know'.
Circumflex ˆ
Quite important for French and several other languages. Fn+T is a dead circumflex.
Cedilla ¸
Mostly needed for the French and Portuguese çÇ. In Turkish you also need şŞ, and the Eastern European ogonek ąĄęĘ could also be considered as a sort of dead diacritic. However, I think it suffices to have just the çÇ.
Tilde ~
Spanish needs ñÑ, Portuguese needs ãÃõÕ. I suggest to let Shift+~ be a dead tilde by default (Fn+Shift+H), for those 'in the know'. Those who frequently need tildes (Iberians and Latin Americans) can either let ~ be dead by default, or directly map Fn+N to ñÑ (for Spanish) or remap öä to õã (for Portuguese).
Caron ˇ
This one is heavily used in Eastern European languages, mostly for čČ šŠ žŽ. I suggest to let Shift+Fn+C and Fn+< (Shift+Fn+,) map to dead caron, for those 'in the know'. The others can use the standard Compose sequences: Compose C [letter] and Compose < [letter].
Stroke /
Mostly used in the Danish/Norwegian ø Ø and the Polish ł Ł (but also for đ Đ and ħ Ħ). Those who need it, will probably want to map the letters they need as precomposed direct letters somewhere. I propose to let Shift+/ (so Fn+Shift+.) be dead stroke, for those 'in the know'.
Overdot
Mostly used in Eastern European languages, e.g. Polish żŻ and Lithuanian ėĖ. Also dotless i (ıİ) is often grouped with this. I don't think a dead diacritic is useful here. Compose will have to do. Those who need it, will probably want to map the letters as precomposed direct letters (e.g. using the AltGr layer, which is still completely available).
Macron ¯
Mostly used in Eastern European languages (in particular, Baltic languages) and in transcriptions of non-Latin languages. The Compose method (Compose - [letter]) will have to do, especially since dash (-) is a primary key so it's a relatively easy Compose sequence.
Ring °
Only needed for the Scandinavian åÅ and the Czech ůŮ. Does not really make sense to make a dead diacritic for this. We could make Shift+° (so Fn+Shift+K) a dead ring.
Double acute (Hungarumlaut) ˝
Only needed for the Hungarian őŐ űŰ. Hungarians also need öÖ üÜ, so remapping those is not an option for them. I propose to let the dead acute on Fn+R turn öü into őű.
Breve ˘
Mostly needed for the Turkish ğĞ and the Romanian ăĂ. Not useful to have as a dead diacritic. Turkish and Romanian will have to do specific remappings anyway (e.g. on the AltGr layer).
So I think we have it all covered in terms of dead diacritics.