[HN Gopher] Invisible Characters ___________________________________________________________________ Invisible Characters Author : 0xbkt Score : 55 points Date : 2022-12-04 17:58 UTC (5 hours ago) (HTM) web link (invisible-characters.com) (TXT) w3m dump (invisible-characters.com) | orbital-decay wrote: | My favorite is U+202E Right-to-Left Override, which doesn't | appear to be listed there. A surprising amount of UIs (apps, | sites) can be broken with it as they were never tested with | right-to-left writing direction in mind. Even a Unicode reference | website that I just used to recall the code is broken by it. [0] | Entering RLO into arbitrary input forms for fun can bend | spacetime, I swear. | | [0] https://unicode-table.com/en/202E/ | interroboink wrote: | This is another good reason to have a text editor you really | trust, which can show you these things. Whether it's different | line-endings or weird invisible space stuff, I know I can just | open it in Vim and figure out what's really going on pretty | quickly. Wasted a lot of time earlier in my life on that nonsense | (: | TacticalCoder wrote: | I agree with you. | | I've got my Emacs set up to display in "bold, fluo foregound | and a dark background underlined by a pink line" (yes, | literally that obnoxious) any character which is not part of a | list of characters I consider to be acceptable. And it's | configured to show any "zero width" character as if it had a | width. So any "invisible character" as well as any "invisible | zero width character" does appear as a black square, underlined | with a pink line. | | And that for any buffer/file. | enchiridion wrote: | Can you share that config? Sounds useful! | TacticalCoder wrote: | Sure... For a start I have my _scratch_ buffer showing a | few Unicode characters, one trailing spacing character on | purpose (to be sure I can see it 's highlighted), a zero- | width-non-joiner 0x200C and an Hangul filler 0x3164 (may | add some from TFA btw). This helps me quickly verify, upon | startup, that my setup is working. | | I configured all that literally years ago so I don't | remember where's what but here's what I've got: | ;; probably cargo-culted from somewhere (update- | glyphless-char-display 'glyphless-char-display-control | '((format-control . empty-box) (no-font . empty-box))) | ;; See https://emacs.stackexchange.com/questions/65108 | (set-face-background 'glyphless-char "purple") | | And then I've got this too (requires _markchars.el_ ): | (markchars-global-mode) | | With: (defface markchars-heavy | '((t :underline "magenta")) "Heavy face for | `markchars-mode' char marking." :group | 'markchars) | | It should get you started. | | (and, yup, I know it's overkill but I like it that way) | saliagato wrote: | abrudz wrote: | Great for doing tacit programming[1] in JavaScript: | avg==>.reduce((,)=>+)/.length avg([3,1,4,1,5]) 2.8 | | [1] https://en.wikipedia.org/wiki/Tacit_programming | csswizardry wrote: | https://csswizardry.com/2014/01/use-zero-width-spaces-to-sto... | Minor49er wrote: | numlock86 wrote: | hamiltonians wrote: | usefull for impersonation scammers , like on twitter | franky47 wrote: | [1] | | [1] https://twitter.com/fortysevenfx/status/1599483273864187904 | 30minAdayHN wrote: | back in 90s on windows, our secret directory used to be alt+255 | (it looks like a space but not space i think) | lifthrasiir wrote: | Which is a non-breaking space (U+00A0), which is mapped to 0xFF | in the code page 437. (You need to put a leading zero to access | to Unicode code points, like alt+0255 for U+00FF y.) | dezen0ts wrote: | A great way for QA's to mess with developers | squaredot wrote: | The problem is maybe more when QA doesn't mess with developers, | than when it does. | bombcar wrote: | If QA doesn't do it malicious users and crackers will. | 8n4vidtmkvmk wrote: | yeah.. please do eff around with the staging environment so | that i can get traces and poke at it. prod is too locked | down. ___________________________________________________________________ (page generated 2022-12-04 23:00 UTC)