You can type Chữ Nôm using Cangjie5 Chinese input.
Examples using http://chinesecj.com/ime/cj5.php (cutt.ly/oiar):
喃 (jnjnd rjbj)
From https://en.wikipedia.org/wiki/Chinese_characters#/media/File:Tale_of_Kieu_parallel_text.svg
揆些才命窖恄饒
(madd jboq yuob2 qnok aio ypmm jdjnd dh jdjnd omrl jchgr wlk pgr oiggu)
You can download http://chinesecj.com/ime/cj5.php (cutt.ly/oiar) and use the IME offline, too.
fcitx-table-cangjie5 should contain all these characters, but I couldn't type with it.
(Generally, linux cangjie inplementations seem to lack some rare variants. But, of the linux implementations, fcitx seems to be most complete.)
Cangjie5, generally, can type around 70000+ characters including:
- Traditional Chinese characters
- Simplified Chinese characters
- Cantonese characters
- Ancient / rare variants
- Japanese variants and kana
- And, it seems, Chữ Nôm, though I've not used it for that until just now.
Once you learn the basic rules, you can type any character your can visualize or see, quickly and accurately.
With fcitx, you can also use "?" if you're unsure of part of a code, too. For instance, 喃 (rjbj) could be searched for using "rj??".
If you're wanting to type Vietnamese and get Chữ Nôm in return, I'm not sure how to set that up. But I do know you can setup a lot of custom user phrases in fcitx.
Anyway, hope that helps.