133 comments

[ 2.0 ms ] story [ 186 ms ] thread
As a resident of France, the official and widespread keyboard layout is AZERTY.

https://upload.wikimedia.org/wikipedia/commons/b/b9/KB_Franc... (AZERTY layout screenshot)

It looks similar to QWERTY, but some letters are swapped around[1], and some extra characters are added so that we can type in French easily — well at least that was the intent.

The big problem with this layout is that we can't type proper French with it. A lot of characters are missing, for example you can type « é » but not « É » which is its uppercase counterpart. Same goes with « ç », you need to remember to type the unicode key code with Alt+128 to type « Ç » otherwise you need to cross fingers that the autocorrect will catch it. Oh and those French quotation marks that I'm using? They are not available on AZERTY either! Even though they are the ones that should be used in French.

Another problem is that I'm a programmer and QWERTY is colloquially known as the programmers' Dvorak. Every piece of software in the world and every shortcut is meant for the QWERTY layout. Using another layout is the source of a lot of pain because intuitive shortcuts become awkward, or simply don't work at all and a lot of remapping is required.

In a nutshell, AZERTY is the worst of both worlds — the people who designed it just wanted to see the world burn apparently.

Due to this frustration I've been working on a keyboard layout that does exactly the opposite: bring the best of both worlds. This layout is called qwerty-fr.

https://github.com/qwerty-fr/qwerty-fr/raw/master/qwerty-fr-... (QWERTY-fr layout screenshot)

It can look a bit overwhelming at first, but it's actually really simple. It is a strict superset of QWERTY, which means that anyone who knows QWERTY can type on this layout without even knowing that it's not a real QWERTY layout. Additionally, all the accentuated characters can be typed directly by combining the right Alt and another key, contrary to what it looks this is actually very convenient and doesn't slow down French typing speed noticeably.

Ιt goes further, I've added special dead keys that make it super easy to type greek and currencies (math is coming soon). Just do AltGr + g (g for “greek”) and the layout becomes:

https://i.imgur.com/pCHipNH.png (Greek layout screenshot)

You can then press any letter to type the corresponding greek character — for example “p” for “π”.

For currencies, press AltGr + Shift + 5, and the layout becomes[3]:

https://i.imgur.com/XH6gp6c.png (Currency layout screenshot)

You can then just press the letter “y” for “¥”. Easy peasy.

Next step is adding a math dead key[4], but that's for another release.

[1] Nobody knows why the A and Q were swapped, neither why the Z and W were swapped. Also why on earth is there an entire key exclusively dedicated to « ² »?!

[2] € is on AltGr + 5, which makes it easy to remember.

[3] This rendering of the currency layout is actually outdated, I've switched the positions of the currencies to make them easier to remember. For example, “p” now yields “£”. You can see the current mapping here: https://github.com/qwerty-fr/qwerty-fr/blob/aa44310587f574cb...

[4]

Have you tried the Canadian-French layout? It’s pretty much what you were looking for ;)
I find the Canadian-French layout[1] to be pretty hard to learn, because the placement of characters is confusing. For example:

– ± is on key 1 (?)

– ² is on key 8 (?!)

– can't directly type éèêë, àâä, ùûü, ìîï[2].

– € is not available (big oops for a French keyboard layout).

– œ and æ are not available either.

– no support for no-break space and narrow no-break space (they are mandatory in French around punctuation).

QWERTY-fr aims to be super easy to learn if you know QWERTY thanks to its logical philosophy — you can read about it here[3].

What do you think? :)

[1] http://kbdlayout.info/KBDCA/

[2] You need to press a dead key first, which is awkward and slow. The fact that dead keys are placed seemingly randomly makes it even worse.

[3] https://github.com/qwerty-fr/qwerty-fr#-philosophy-overview

Here's a link to the MacOS version layout for alt-codes, which I believe handles all your points except the last: https://i.stack.imgur.com/v1ZLm.png
Thank you for the clarification. If I understand correctly, one needs to press two keys to print « É ». Do you agree?

If it's right, I believe that it only invalidates point #4.

Shift + /, when using fr-CA, does return É. Is that what you meant with "two keys". For œ or Œ, I use Option+Q or Option+Shift+Q (Mac Big Sur).
As a French, I consider the Spanish (Spain) keyboard to be the ultimate layout, that one doesn't look bad but way too bloated.
Same here. I've been using the Spanish layout for fifteen years now, and it's so natural to use with a QWERTY layout and diacritics even on uppercase.
Contrary to QWERTY-fr, you can't type accentuated letters directly with the Spanish layout[1]. I find that it considerably lowers my speed when typing French.

I agree that QWERTY-fr looks bloated on the first look, but the position of keys actually make sense so it is super easy to learn. I recommend you to read the philosophy[2] behind this keyboard layout.

What do you think?

[1] https://www.goodtyping.com/teclatESP.png

[2] https://github.com/qwerty-fr/qwerty-fr#-philosophy-overview

> As a resident of France

Yet your keyboard layout does not allow to type the characters needed for all the languages of France. For example, in Catalan we need "í". Unless you add all possible combinations of accent+letter, the asymmetry between the characters that are already composed and the ones that need AltGR is annoying.

I write regularly in many languages, mostly French, and I hate the AZERTY layout, mainly due to it having (some) already composed accented characters.

What about EurKey? https://eurkey.steffen.bruentjen.eu/

It's preinstalled on Linux, and available for macOS and Windows as well. I feel a keyboard based on the US layout which far too often is considered a standard (better for coding and buggy software and games), with dead keys and diacritics is a fantastic idea.

I have migrated all my machines to use it instead of the custom layouts or the US one that's very restrictive when you need to write accents.

> EurKey? https://eurkey.steffen.bruentjen.eu/

> It's preinstalled on Linux

Note that at least on Ubuntu/Debian, the included version is older and a bit different. Not unusable or anything, but not the same as on the website.

> What about EurKey? https://eurkey.steffen.bruentjen.eu/

Not much 'euro', eastern europe is missing as a whole. E.g. polish Ł, czech ř, slovak ô, ... Either use dead keys for all diacritics or somehow add them all to the third and forth layer.

I don't get it. Is Portugal alone in having separate keys for accents? I have a key for ^ and a key for "o". If I type ^ and then o, I get ô. If I want to type a literal ^ i press ^ twice. Same for `,´,~,¨ (which is not ideal for programming, but I'm used to it). I'm missing the inverted ^ because it doesn't exist in Portuguese but you get the point. The only letter than has a dedicated key is ç.

Wouldn't this solve much of the problems of these keyboard layouts by reusing the same letters?

Same in most other language layouts.

But I'm talking about the euro-layout, there are keys for ý, ä, ü, ö, é, .... All of these are 'western' special characters, no eastern europe (slavic language letters) or greek letters. So users of _these_ languages, need to use dead keys or some other method (I don't know to get greek letters with this layout) for at least some of their 'special' glyphs that are not, by chance, also used in another language (for slovak and czech that's for example ä, ú, á, é, ý and í).

https://eurkey.steffen.bruentjen.eu/pics/layout.png

It does in fact include the polish Ł, czech ř, slovak ô, check the Layout page and the shift and Altgr tabs, they are made using the diacritic dead keys
I wanted to post the same. I am German and I am using it for my daily tasks. It combines the easy to program US layout with easy access to German Umlauts Ä, Ö, Ü, ß.

Highly recommended. No idea though for any other languages other than German.

It works very well for Norwegian too.
Does it not lack a proper æ?
Sorry for late response, but no. RightAlt+q gives æ, RightAlt+w gives å and RightAlt+l gives ø.
Isn’t the same as US-International?
As a french and a developer and a resident of Germany, I have a lot of special characters to write :p

I found my peace using qwerty + compose key to make cedilla, accents, umlauts and more.

Same here. I'm Dutch, but write English (obviously) and occasionally German and a little Frisian (for place and street names on OpenStreetMap). Once you get used to the compose key all keyboards sold with the basic US layout suddenly just work fine, which incidentally — as a programmer — suits me just fine.

Any new layout is basically dead on arrival except for a few keyboard geeks. Commercial viability (as in, keyboards sold with that layout and correct keycaps) is essentially zero unless a government mandates its use. The latter is not likely in countries like France.

Making the compose-key (usually assigned to the right alt) more popular and better supported is probably the most effective way of enabling the input of letters like É, —, œ, Å, ç, ß, and € on desktop operating systems.

I wonder why CAPS isn't used more as a compose key. It is easier to reach than Alt+gr.
I am french speaking person and a programmer. I switched a year ago to qwerty and wish I had done so decades ago because the shortcuts in programs are conceived for qwert keyboards. I use karabiner and goku under macOS to produce accented characters. It is sufficiently fast to be usable.
I miss using Linux as my daily driver because its compose key support was unsurpassed. Easy to set up and to add sequences if the mood strikes you. Beyond simple accent marks, it could handle arrows, basic smileys, and even the Greek letter pi.

Meanwhile on macOS Big Sur, Karabiner seems to no longer work correctly (and was a royal pain to set up besides), the US International layout doesn't include a proper compose key (it just turns all punctuation keys into dead keys), and the dead keys don't even make all basic combinations (e.g. Polish "ć" or Esperanto "ĉ").

Seriously, Apple had to go out of their way to screw this up! Just tack the Unicode modifier character (e.g. U+0301) onto the end and run Unicode normalization! I get that you don't want this when you have dead keys doubling as normal keys, but dedicated dead keys (e.g. Alt+E) should just always create the character you're asking of them.

Just let me set one of my modifier keys to a proper extensible compose key!!

Interesting. Years ago, I made a very similar custom Dvorak layout for French accents. The main benefit was that all vowels are located on the left side of the middle row.

With that said, I don’t think I’ve typed a French accent on a physical keyboard in almost a decade. For the most part (99%), I’ve stopped reading and writing in French. On the rare occasions I need to write French formally, I usually copy and paste the accents missed by the spell checker.

It's not the same idea because it doesn't try to make it look like querty, but the colemak layout allows typing characters from most languages with a modifier key and sometimes (for the less common characters) a combo. In this link it illustrates this https://colemak.com/Multilingual

And linux (or at least Ubuntu) includes it by default. For spanish and german it's great.

You seem to be trying to solve a problem that could easily be solved by using a Compose key: https://en.wikipedia.org/wiki/Compose_key
I recently switched from compose key to this layout (and suggested to the developer to update the Linux release ;-) and it is much nicer to type eg AltGr+a for à instead of Compose+` then a. (I keep compose on PrtSc for extra characters like arrows.)
Swiss layout is the best layout for French speakers
Can you type « Ç » and « É » with the Swiss layout[1]? What about the French quotation marks (« »)?

[1] https://www.goodtyping.com/teclatSWI.htm

At least on Linux Swiss Standard layout you'll get all of those if you know the right keys. You basically choose the accent, then the letter and get what you want.

I wasn't even aware that this seems to be a common problem in other layouts / oses

Given how everybody has a different answer (use the Canadian/Spanish/Swiss keyboard, use the Compose key, go for Colemak/Dvorak...) that seems to overlook how, like it or not, the US Qwerty keyboard is the standard for programmers, I think you're on to something!

Good luck to you!

One question though: the French seem to enjoy using different standards, for some reason. Besides the keyboard, I've also noticed they have a lot of WIFI channel exclusions.

I'm not saying it's good or bad, but do you think this might impede the success of your project?

Thank you! :)

The fact that most people ask “Why shouldn't I use alternative <x> instead?” means that I need to improve my README file to show better why QWERTY-fr is truly different from all the other keyboard layouts, and what makes it stick out!

Colloquially, I already planned to update the website[1] with a tutorial guiding the user step by step through the philosophy. Hopefully this will help users understand its value proposition!

[1] https://qwerty-fr.org

With regards to the different standards, I agree that French people tend to reinvent the wheel. I have nothing against that but the big issue is that they never look well at the previous attempts, which leads to crappy alternative standards. This project aims to reinvent the wheel but in a good way!

I plan to get this keyboard layout standardized by a standardization organization once it's stable. It should help adoption because I could then convince OS maintainers to add it as an available layout. :)

> With regards to the different standards, I agree that French people tend to reinvent the wheel. I have nothing against that but the big issue is that they never look well at the previous attempts

Well not everything as to be from America and in English language. Different attempts are made in different countries and it's true that US attempts tend to stick, not necessarily because they are superior, but because of the general US influence.

It's true that AZERTY is an annoying layout but only because everything is made as if the only existing layout was QWERTY.

> I agree that French people tend to reinvent the wheel.

If their wheel is better, why not?

> I have nothing against that but the big issue is that they never look well at the previous attempts, which leads to crappy alternative standards. This project aims to reinvent the wheel but in a good way!

Great answer, I totally agree!!

I wish you a lot of luck, as I'm a bit irked to have to provide support for weird keyboards! (I hope someone from Germany will do as you did so QWERTZ can also die :-)

> I plan to get this keyboard layout standardized by a standardization organization once it's stable.

Even better! Using standards is a great way to work around many issues.

One last thing: if I may suggest, you should replace the default picture by one with fewer characters: the german β, the spanish Ñ, and the scandinavian character (oslash, ae) may be nice to have, but they may play against you: French users may see them as irrelevant, and cluttering the keyboard.

Trim everything you can, to only have as little extra characters as necessary to support french.

For similar reasons, you may want to unify the blue and the red overlays. I've figured out that the right Alt did toggle the blue overlay, but I still don't understand how to get the red one.

Given that blue and red do not coexist on any key, merging the red keys into the blue overlay may be for the better: you want what you offer to be extremely clear and simple to understand

> One last thing: if I may suggest, you should replace the default picture by one with fewer characters: the german β, the spanish Ñ, and the scandinavian character (oslash, ae) may be nice to have, but they may play against you: French users may see them as irrelevant, and cluttering the keyboard.

This is a very good suggestion! I should definitely show a simplified screenshot, and only introduce the extra characters in an advanced section. This should make it look less overwhelming.

> For similar reasons, you may want to unify the blue and the red overlays. I've figured out that the right Alt did toggle the blue overlay, but I still don't understand how to get the red one.

For other readers, you're referring to https://qwerty-fr.org/. Blue means that it's accessible with AltGr, and red means that the key is a dead key.

In a nutshell:

– Lower left corner: no modifier.

– Upper left corner: Shift.

– Lower right corner: AltGr.

– Upper right corner: AltGr + Shift.

I agree that this is confusing, especially since the keyboard widget doesn't highlight the layer when you press e.g. AltGr + Shift so it's hard to know what's going to happen.

Oh, I see! What about you replace red by purple or some darker shade of blue?

Given the difference in color, I thought it was a separate layer activated by another key!!!

This would help readability a lot!

This widget I'm using is x-keyboard[1]. It has several shortcomings (including the one you mentioned). I'm trying to get in touch with the author to see if they are still interested in maintaining it, otherwise I'll do a fork.

[1] https://github.com/fabi1cazenave/x-keyboard

> the scandinavian character (oslash, ae) may be nice to have

Those are Danish or Norwegian characters, they are not "the Scandinavian characters" as they are not used in Sweden (using ö/ä).

> the French seem to enjoy using different standards

I chuckled :). How dare they use the metric system and degree Celsius? You got me curious about the WiFi channels though, but it looks like there is nothing specific to France: https://www.lairdconnect.com/support/faqs/what-channels-are-...

>> the French seem to enjoy using different standards

> How dare they use the metric system and degree Celsius?

Judgements about what they dare to do aside, isn't it fair to call those French? The metric system is based on the meter, a French unit. The International Prototype Kilogram (obsoleted only recently) was stored in France. While Celsius wasn't invented in France, a Frenchman flipped the scale (originally, freezing was 100 and boiling was 0). etc.

Not Invented Here syndrome doesn't mean that what you do invent here can't be good, that you can't sometimes get the rest of the world to agree with you, or that you abandon anything that's successful.

> Given how everybody has a different answer (use the Canadian/Spanish/Swiss keyboard, use the Compose key, go for Colemak/Dvorak...)

I'd advise the author to go one step further and adopt the ANSI layout instead of ISO. So you can just get the US version with most of the keys already etched with the correct symbol, no matter where you are in the world.

> One question though: the French seem to enjoy using different standards, for some reason.

Not French, but here's an observation: the French world has great engineering schools like the Polytechniques (Paris, Montreal, Lausanne) or Mines. And the French government historically had military procurement and R&D done inside the country as well. They are, for instance, the only country outside of the United States to have built and operate a nuclear aircraft carrier.

> I'd advise the author to go one step further and adopt the ANSI layout instead of ISO. So you can just get the US version with most of the keys already etched with the correct symbol, no matter where you are in the world.

Totally. I once had to use a UK keyboard with this weird vertical ISO enter key - it's a pain.

I think I might live with a smaller space bar, as I got a rare IBM SK-8835 keyboard in JP locale before I could source a US one ( see: http://www.komotch2.com/junk/kj/sk8835lj.htm ): the true dealbreaker was the ISO enter key.

The carveout from the spacebar were actually pretty handy, to map with AutoHotKey extra keys staying right by my thumbs :)

> They are, for instance, the only country outside of the United States to have built and operate a nuclear aircraft carrier.

I love that a lot of countries do a lot of things: we need more alternatives to avoid duopolies (MIPS to avoid AMD64 vs ARM64, Firefox OS to avoid Android vs iOS)

And it's even better when the 3rd alternative offers unique advantages!

But using a different keyboard layout for no reason at all... sorry, I don't get that. It makes life harder for everyone, with 0 practical benefit.

It's like if some country mandated a square USB-C connector: breaking a standard, just for the pleasure of breaking it, to make things more expansive, create more e-waste, etc.

> But using a different keyboard layout for no reason at all... sorry, I don't get that. It makes life harder for everyone, with 0 practical benefit.

It originally appeared in the 19th century for typewriters, so it's not exactly new.

That's even more in favor of this qwerty-fr project then: let's fix the mistakes of the past!
> I think I might live with a smaller space bar

On typical keyboards, the spacebar is just about the width of 6 keys. -- Comparing what's allocated to the thumb vs to the pinky: the thumb is strong, the pinkies are weak, but the thumb is only used for the spacebar, and the pinkies for a bunch of other keys.

I've enjoyed using these niche ortholinear or split ergonomic keyboards. It's good to be able to use the thumb for more keys.

I use my thumbs just as much for the control key for keyboard shortcuts, which I move [using xkb on Linux] to the keys left and right of space. I got used to it there as a Mac user (where it's the command key). I can't imagine trying to use control with my pinky in the corner.
Spacebar is what I dislike about US ANSI layout. I don't need such big spacebar but I need a Spacekey and useful thumb keys.
I don’t think you’re right about the US layout being standard for programmers. It might be in some countries, but I’ve meet maybe two Danish prograamers that uses US layout.

The weird part about this layout is that you can use it for English, French, German and Swedish (maybe more), but leave out exactly one Danish characther making it useless for Danish. Why leave even add æ and ø if you leave out å?

I don't think we've met. I'm Danish. I use the US keyboard layout.
I buy hardware for new staff in Copenhagen, and none of the Danish people ask for the US or UK layout.

People from other countries are more likely to ask for an English layout, generally UK if they're from Europe (it keeps the ISO enter key shape) or US otherwise.

Wouldn't say it's that rate, but I'm pretty sure less than 10% of German programmers use US intl, maybe 5%?

I switched like 10 years ago and it's really a lot better, even if I have to customize it a bit to be able to type äöüß (via caps+aous).

But I'm peculiar anyway as only my Linux/work machines have that, I still use a German qwertz on Windows on my gaming machine so I generally switch layouts once per day, which only works with different physical keyboards so it feels different ;)

Bear in mind I'm in Denmark, I'm sure Germans-in-Germany are different.

Danish keyboards are obviously the default here, but it's usually not much hassle to get UK/US keyboards for laptops. Buying a laptop with a German keyboard is more complicated.

No idea about ø but æ is used (very rarely, to be fair) in French. Famously, it's used in the name Lætitia. We enjoy having characters that are important but comparatively rare, such as ù, which has a key of its own in the French keyboard even though it is used in a single word, "où" (meaning where), to differentiate it from "ou" (meaning or). I've always felt the key might as well say "où" on it :-)
(comment deleted)
Hm. I switched to US QWERTY twice. Both times my wrist started hurting after half a year. The special characters feel badly spread out.

Never had any issues with Belgian AZERTY. Much prefer the useless number row to be behind the shift (there's a numpad for those anyway), and having special characters readily available on that row.

> One question though: the French seem to enjoy using different standards, for some reason. Besides the keyboard, I've also noticed they have a lot of WIFI channel exclusions.

Each country has its own standards, especially with radio channels, but France seems pretty similar with other west-european countries (Wifi channels, FM radio, digital TV...).

Regarding physical keyboard layouts, mostly all the world is using the ISO layout but US are stuck with the ANSI keyboard missing one key.

> the US Qwerty keyboard is the standard for programmers

Is anyone using the us keyboard outside the US? I am actually curious, it never came to my mind before.

(comment deleted)
Looks interesting. Definitely a step up from AZERTY which when I've looked at it seems to have been put together by someone who insists on holding French programmers back.

This still puts a lot of emphasis on right-most part, which makes this quite unbalanced for programmers I think.

Personally I would never go back to any layout that doesn't have a numpad and all special chars a programmer needs without moving the fingers 1 row up or down.

Once one gets used to this everything else seems archaic.

I wish all keyboards had dedicated cut/copy/paste buttons.
Get yourself a macro pad. I have a KeebIO BDN9 rev2: https://keeb.io/collections/frontpage/products/bdn9-rev-2-3x... - It requires some soldering, but there's other versions and types of macropad that don't need assembling.

Here's mine, top left: https://imgur.com/gallery/Pa51o8c

(apologies, that was the image I had immediately available)

  Top row is volume, Emacs save (ctrl-x ctrl-s), scroll/zoom
  Middle row is layer change, Meta-x (command palette in Emacs), Ctrl-g (quit/escape in Emacs)
  Bottom row is Meta, Super, Esc-c (in my zsh, it runs "fd --type directory" in the fzf tool, which lets me type a few characters of a directory to cd to it, however deep it is)
Macro pads can be controlled by QMK firmware (which I use) which is reconfigured by editing c code. There's also VIA firmware which is also very flexible. Other manufacturers will have their own proprietary systems.
I wish all keyboards had rotary encoders for volume control. It is so much nicer to use than spamming vol+/vol- buttons
I've also been experimenting with my Ploopy mouse, which uses QMK firmware. One layer has my side buttons mapped to volume up and down. It works really well!

Next step is to add a "paste plain" macro for Mac OS. (Option + Command + Shift + v)

This is actually a pretty good idea. I speak 2 languages besides English so this covers one of them completely. Sure, it doesn't cover Cyrillic, which is the second most frequently used but even so, this would completely eliminate the necessity to switch between English and Spanish whenever needed. Cyrillic annoyingly can't be solved easily but I guess it's still a good deal. I'm willing to re-map my keyboard and give it a shot and see if that would make sense as a daily driver.
I was about to say why do we need another layout but this appears to solve real problems that I've never encountered as an English speaker.
Don't feel bad, this is pretty common to hear for us with other languages than english :-)

My go to solution for this always used to be compose keyboards on my Atari. I only recently found out (from hackernews) that there is something for windows too. [1]

[1] http://wincompose.info/

Try the Canadian Multilingual French layout on a standard QWERTY keyboard.

à is \

è is '

é is /

ç is ]

accent grave is right-alt+[+letter

and

"specials" are right-alt+num (±@£¢¤¬{}[]) but for any glyph used in programming, I usually switch back to US keyboard using alt+caps-lock. Ça fonctionne très bien pour moi!

On a ISO layout (with the inverted-L "enter" key), you also get ù between left shift and z.

Accolades ({}) and brackets ([]) are on alt-7-8 and alt-9-0. A bit annoying to type, but manageable. At least it's somewhat logical (pairs are next to one another).

What's nice is that this is the default French layout for Apple computers in Canada, so you can order one with the correct keys printed on it: https://www.apple.com/ca/shop/product/MK2C3LL/A/magic-keyboa...

Unfortunately this layout seems mostly unavailable with PC keyboards (I only seen a Lenovo model).
The CSA layout is pretty nice, I use it everywhere (writing French and writing code) and don't have problems with {}[]() because these characters are juxtaposed (unlike the french AZERTY).
Tested on Windows 10 with no issues.

I use QWERTY for coding but sometimes need to document other things in French. This is a pain killer.

i like the idea of using a keyboard layout thats more efficient for typing common characters, less finger travel. But the thought of having to relearn muscle memory and not being able to just grab any old keyboard are both huge turnoffs for me.

i assume for #2 i could programmatically remap keys with no effect in input latency? which then would require merely changing a few keycaps around... can anyone confirm if this would be the case?

I personally use the bépo layout which, to me, feels better than qwerty or azerty layouts. Have you tried to use the bépo layout?

https://en.m.wikipedia.org/wiki/B%C3%89PO https://bepo.fr/wiki/Accueil

Yes I did! I actually used to have bépo as my primary keyboard layout.

My main problem with it is that it only optimizes French, and it (implicitly) deoptimizes everything else. For example “W” is awkwardly placed at the very edge of the keyboard, which makes typing English pretty annoying. Keyboard shortcuts are pretty inconvenient as well.

Imho bépo is great if you write pages of raw text every day in French — for example journalists and writers. But apart from this it's not pragmatic for other usages — and I want my keyboard layout to be good enough everywhere, not just at typing French.

How about just using Qwerty + US International?

áéàèçæöäëïüî ÁÉÀÈÇÆ...

You can even do «» with Alt Gr+[ and ] and € with Alt Gr+5

Yes! As a French Canadian, that's my preferred layout.

Its advantage is that it uses dead keys to add diacritic.

For instance (Alt Gr+i then [normal vowel key]) will give îôêâ... You just have to know the diacritic position and press the normal letter to apply it.

aka us-altgr-intl. Sounds to me like the author may not be aware of it, as it addresses all their major motivations
Are you referring to "US International with AltGr dead keys"? I use it too for programming, English text and sporadic Italian text -- so I'm not annoyed by the dead keys unless I actively look for them.

FWIW, growing up in Italy I have the same complaint as the OP about not being able to type È in the italian keyboard -- it comes up somewhat often in prose.

My only complaint is that I occasionally write to colleagues named Paweł or Michał which are not typable

That's funny, the swedish keyboard can handle éèÉÈúùóò and so on, with deadkeys but we don't need much of them. Also üîñ on top of the native ÅÄÖ. The keyboard has five deadkeys concentrated on two buttons with shift and altgr alternatives. The only special keys we realy need is åäö and é. Very seldom à or á, forget which one. And then usually it's a borrowed word from french or italian.

Currencies also: €£$

The annoying part as a programmer is the way to get to {[]} with altgr button and right pinkie finger, that takes dexterity... Oh, and <> that are bottom left beside z on the same button with shift.

> FWIW, growing up in Italy I have the same complaint as the OP about not being able to type È in the italian keyboard -- it comes up somewhat often in prose.

I always get a bit confused by those namings - maybe? On the one I'm talking about I'm realizing now it's actually two presses rather than one for É (E -> altgr+').

Other commentor mentioned EURKEY, which has it but is otherwise quite similar

https://eurkey.steffen.bruentjen.eu/

As a French Belgian that's what I use too. "US International with AltGr dead keys" Find it easier for programming. Haven't got much success in converting others though.
As someone who started to learn French just a few years ago, I was really shocked that you couldn't easily type certain characters on a standard French keyboard.

I discovered the "voluntary" AZERTY Z71-300 standard since then and I've been using it since on Windows.

https://norme-azerty.fr/

Does anyone make a small auxiliary keyboard, similar to a freestanding numpad, that can be programmed for various characters and functions? I would love to be able to setup a custom keyboard for special characters that I need repeatedly but don’t want to have to force them onto the regular keyboard.
Search the web for "macropad", you should find what you need. If you go for something QMK-based, you can program it any way you want.
As a francophone, I've always used Canadien Multilingue Standard, it's perfect if your goal is to write english and french.
Seconded! I taught French in the US, and Canada multilingual was the most ergonomic way to switch between languages without switching keyboard layouts.
Hmm, why is the Greek layout not the same as the el keyboard layout? I know it's geared towards the French language, but it seems needlessly complicated to map the Greek letters differently from the Greek layout...