[{"data":1,"prerenderedAt":480},["ShallowReactive",2],{"project-16754987":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":10,"maker":11,"posted_at":12,"year":13,"points":14,"comments":15,"rank_in_year":16,"shown_in_year":17,"top":18,"tier":19,"category":20,"subcategory":21,"format":22,"keywords":23,"reception":28,"sentiment":29,"stance_mix":30,"scored_comments":35,"aspects":36,"strip":44,"post_text":45,"what":46,"said":69,"maker_in_thread":168,"shape":179,"grid":183,"attempts":442,"same_week":443,"maker_shows":33,"maker_hidden":472,"reader_version":473,"card":474},"16754987","zero-width-chrome-extension","A Chrome extension to reveal zero-width characters","title","Show HN: I made a Chrome extension to reveal zero-width characters","https:\u002F\u002Fgithub.com\u002Fchpmrc\u002Fzero-width-chrome-extension","github.com","chpmrc",1522852111,2018,385,96,44,2155,3,"legend","dev_tools","browser extension for text inspection","browser_extension",[24,25,26,27],"zero-width characters","unicode","chrome extension","invisible characters","curious",-0.093,{"positive":31,"neutral":32,"mixed":33,"critical":34},2,23,1,5,31,{"design":37,"idea":39,"performance":40,"docs":41,"execution":42,"privacy":43},{"positive":38,"critical":33},0,{"positive":33,"critical":31},{"positive":38,"critical":38},{"positive":33,"critical":33},{"positive":38,"critical":38},{"positive":38,"critical":38},[38,38,38,38,38,38,38,38,38,18,34,18,33,18,38,33,38,18,38,38,38,38,18,38,18,34,33,18,18,18,38,18,18,38,18,33,18,31,18,18],null,{"problem":47,"audience":45,"pricing":45,"motivation":59,"time_to_build":45,"stack":66,"openness":67,"stage":68,"team_size":67},{"value":48,"source":49,"evidence":50},"zero-width characters are invisible in text and hard to spot","inferred",[51,55],{"id":52,"by":53,"text":54},"16756456","boramalper","The project is clearly motivated by Be careful what you copy: Invisibly inserting usernames into text[0] (posted 12 hours ago on HN), and many people here might think zero-width…",{"id":56,"by":57,"text":58},"16756333","ballenf","It's starting to seem like the universe has some fundamental order for things that we can escape temporarily, but that are inescapable in the long run. 1. Photo and video…",{"value":60,"source":61,"evidence":62},"learn how to build and publish a Chrome extension","maker",[63],{"id":64,"by":11,"text":65},"16756789","Yep, but it was also a way to learn how to build and publish a Chrome extension.",[],"unknown","launched",{"praise":70,"objections":83,"requests":103,"questions":126,"alternatives":146},[71],{"value":72,"source":73,"evidence":74},"useful for seeing hidden characters, would use it","commenter",[75,79],{"id":76,"by":77,"text":78},"16761289","Torn","Please do, and publish as a real extension - I'd definitely use it",{"id":80,"by":81,"text":82},"16755562","gervase","It would be a nice enhancement to do so automatically (rather than on-click), but at least for me, this serves the purpose.",[84,92],{"value":85,"source":73,"evidence":86},"clicking a button means users will forget to use it; should be automatic",[87,91],{"id":88,"by":89,"text":90},"16755668","kerkeslager","I agree with other users who said that it would be nice if this happened automatically instead of on click--I think after the initial novelty wore off, I'd probably forget to…",{"id":80,"by":81,"text":82},{"value":93,"source":73,"evidence":94},"automatic stripping could hurt performance on dynamic pages",[95,99],{"id":96,"by":97,"text":98},"16758343","needToSay","But that would be a performance killer or what?",{"id":100,"by":101,"text":102},"16758492","jannes","How would you analyse content that's asynchronously loaded and inserted into the DOM? I think DOM mutation observers would be a huge hit on performance.",[104,115,119],{"value":105,"source":73,"evidence":106},"support Firefox",[107,111],{"id":108,"by":109,"text":110},"16755718","IloveHN84","What about Firefox?",{"id":112,"by":113,"text":114},"16756592","srebalaji","firefox ?",{"value":116,"source":73,"evidence":117},"automatic detection rather than on click",[118],{"id":88,"by":89,"text":90},{"value":120,"source":73,"evidence":121},"reveal other invisible spaces like non-breaking and thin spaces",[122],{"id":123,"by":124,"text":125},"16757441","kragen","Have you thought about revealing things like non-breaking space, thin space, hair space, and so on? I think at least Fecebutt replaces non-breaking spaces with regular spaces in…",[127,142],{"value":128,"source":73,"evidence":129},"does it handle ZWJ emoji sequences",[130,134,138],{"id":131,"by":132,"text":133},"16755774","lainga","OP, does this mess up ZWJ emoji (like any of the skin-tone-modified emoji)?",{"id":135,"by":136,"text":137},"16756213","jedanbik","Meaning, does it mess this up? https:\u002F\u002Femojipedia.org\u002Fzero-width-joiner\u002F",{"id":139,"by":140,"text":141},"16760974","tenryuu","So does it show the ZWJ within emoji combinations?",{"value":143,"source":73,"evidence":144},"does it work on Firefox",[145],{"id":108,"by":109,"text":110},[147,154,161],{"value":148,"source":73,"evidence":149},"unix tools like vis, cat -e, hexdump, od",[150],{"id":151,"by":152,"text":153},"16756114","TheAceOfHearts","A bit tangential, here's a few unix utils you can use to inspect text: `vis`: display non-printable characters in a visual format `cat -e`: Display non-printing characters and…",{"value":155,"source":73,"evidence":156},"Highlight Bad Chars VSCode extension",[157],{"id":158,"by":159,"text":160},"16758126","iyrkki_odyss","There is an extension called Highlight Bad Chars. I installed it after reading this",{"value":162,"source":73,"evidence":163},"Firefox FoxReplace addon with regex rule",[164],{"id":165,"by":166,"text":167},"16760773","chanz","You can use this addon: https:\u002F\u002Faddons.mozilla.org\u002Fde\u002Ffirefox\u002Faddon\u002Ffoxreplace\u002F?src=search Apply an autoload rule with these settings: ``` Name: zero length replacement HTML:…",{"comments":34,"answered":31,"key":169},[170,173,176],{"id":171,"text":172},"16755766","I like the adblock analogy, might work on it, thanks.",{"id":174,"text":175},"16755836","Thank you! I appreciate it.",{"id":177,"text":178},"16756181","Sorry I'm afraid I don't understand the question.",{"commenters":180,"max_depth":181,"maker_replies":34,"first_comment_mins":32,"lifespan_hours":182},71,8,42,[184,186,190,192,195,198,201,203,205,208,211,214,216,218,221,224,226,228,231,234,237,240,243,246,248,250,252,254,256,257,259,263,267,270,273,276,278,281,285,287,290,293,296,299,300,303,306,309,312,315,318,320,323,326,328,329,332,335,338,342,343,345,349,351,355,358,360,362,364,365,367,370,373,377,380,382,386,388,391,394,397,399,400,403,407,412,414,417,420,423,427,431,432,436,438,440],[151,38,38,185,152,38],"other\u002Fneutral\u002Fnone",[187,38,38,188,189,38],"16756171","commenter\u002Fneutral\u002Fnone","pavelbr",[191,38,38,188,132,38],"16756606",[193,38,38,188,194,38],"16756798","dotancohen",[196,38,38,188,197,38],"16758599","gkya",[199,38,38,188,200,38],"16761457","na85",[202,38,38,188,197,38],"16764790",[204,38,38,188,200,38],"16765729",[206,38,38,188,207,38],"16756817","cyphar",[209,38,38,185,210,38],"16757098","logicallee",[212,38,38,185,213,38],"16757165","scbrg",[215,38,38,188,210,38],"16757286",[217,38,38,185,197,38],"16758583",[219,38,38,188,220,38],"16761325","Volt",[222,38,38,188,223,38],"16763114","B1FF_PSUVM",[225,38,38,188,197,38],"16763768",[227,38,38,188,223,38],"16771731",[229,38,38,185,230,38],"16757039","agumonkey",[232,38,38,185,233,38],"16757063","LVB",[235,38,38,185,236,38],"16757180","sharpercoder",[238,38,38,185,239,38],"16761758","peteretep",[241,38,38,185,242,38],"16757264","wpietri",[244,38,38,185,245,38],"16763126","Flimm",[88,33,18,247,89,38],"project\u002Fneutral\u002Fdesign",[171,33,38,249,11,33],"maker\u002Fneutral\u002Fidea",[76,33,34,251,77,38],"project\u002Fpositive\u002Fidea",[96,33,18,253,97,38],"project\u002Fneutral\u002Fperformance",[255,33,38,188,89,38],"16758476",[100,33,18,253,101,38],[258,33,38,188,89,38],"16758786",[260,33,33,261,262,38],"16761333","project\u002Fcritical\u002Fidea","Aditya_Garg",[264,31,18,265,266,38],"16755671","project\u002Fneutral\u002Fidea","Someone1234",[268,31,18,265,269,38],"16755702","tomerico",[271,31,38,188,272,38],"16755771","enzanki_ars",[274,31,38,188,275,38],"16755838","MereInterest",[277,31,38,188,272,38],"16755880",[279,31,38,188,280,38],"16761972","irrational",[282,31,33,283,284,38],"16755800","project\u002Fcritical\u002Fdesign","Alex3917",[286,31,38,188,266,38],"16756388",[288,31,38,188,289,38],"16756785","teolandon",[291,31,38,185,292,38],"16756826","EamonnMR",[294,31,18,265,295,38],"16760400","fouc",[297,31,38,185,298,38],"16768118","roel_v",[56,18,38,185,57,38],[301,18,38,188,302,38],"16756572","dctoedt",[304,18,38,188,305,38],"16756733","andrewmcwatters",[307,18,38,188,308,38],"16756806","heartbreak",[310,18,38,188,311,38],"16757242","goldenkey",[313,18,38,185,314,38],"16756745","stouset",[316,18,38,185,317,38],"16757156","jonahhorowitz",[319,18,38,188,236,38],"16757199",[321,18,38,188,322,38],"16761650","hrktb",[324,18,38,185,325,38],"16759057","bllguo",[123,327,18,265,124,38],4,[52,34,38,185,53,38],[330,34,38,188,331,38],"16756656","zuminator",[333,34,38,185,334,38],"16757293","jaclaz",[336,34,38,185,337,38],"16769720","beautifulfreak",[339,340,18,265,341,38],"16757347",6,"jacquesc",[158,340,38,185,159,38],[344,340,38,188,341,38],"16760444",[346,347,34,348,292,38],"16755817",7,"project\u002Fpositive\u002Fdocs",[174,347,38,350,11,33],"maker\u002Fpositive\u002Fnone",[352,347,33,353,354,38],"16756921","project\u002Fcritical\u002Fdocs","laumars",[356,347,18,357,292,38],"16758280","project\u002Fneutral\u002Fnone",[359,347,38,188,354,38],"16759365",[131,181,18,361,132,38],"project\u002Fneutral\u002Fexecution",[177,181,38,363,11,33],"maker\u002Fneutral\u002Fnone",[135,181,18,361,136,38],[366,181,18,361,132,38],"16756261",[368,181,38,188,369,38],"16758086","ascorbic",[371,181,18,361,372,38],"16757317","ubernostrum",[374,375,38,185,376,38],"16757010",9,"username223",[378,375,38,185,379,38],"16760321","yuchi",[381,375,38,185,376,38],"16766173",[383,384,18,265,385,38],"16758924",10,"sam1902",[108,387,18,361,109,38],11,[389,387,38,185,390,38],"16756562","inetknght",[392,387,38,185,393,38],"16756615","overcast",[395,387,38,185,396,38],"16756668","patrickaljord",[398,387,38,185,334,38],"16757248",[165,387,18,357,166,38],[401,387,38,188,402,38],"16763573","ric2b",[404,405,38,185,406,38],"16761775",12,"flashman",[408,409,33,410,411,38],"16755235",13,"maker\u002Fcritical\u002Fnone","gormz",[413,409,38,363,11,33],"16755829",[80,415,18,416,81,38],14,"project\u002Fmixed\u002Fdesign",[418,415,18,247,419,38],"16755678","kawsper",[421,415,18,247,422,38],"16759786","thrownaway954",[424,425,18,265,426,38],"16761445",15,"SuperGoodJared",[428,429,33,261,430,38],"16756634",16,"kbd",[64,429,38,363,11,33],[433,434,18,435,337,38],"16770127",17,"project\u002Fneutral\u002Fprivacy",[139,437,18,361,140,38],18,[112,439,18,361,113,38],19,[441,439,18,357,166,38],"16760779",[],[444,449,453,458,463,468],{"id":445,"name":446,"points":447,"category":448},"16706666","text2mindmap",323,"productivity",{"id":450,"name":451,"points":452,"category":448},"16743030","“Who is hiring",255,{"id":454,"name":455,"points":456,"category":457},"16742492","Alpaca My Bags",238,"consumer_social",{"id":459,"name":460,"points":461,"category":462},"16721831","Auditus",146,"creative",{"id":464,"name":465,"points":466,"category":467},"16719648","ShivyC",120,"languages",{"id":469,"name":470,"points":471,"category":467},"16743476","Diamond",106,false,"v2",{"id":475,"name":5,"line":6,"ai":472,"cat":20,"year":13,"points":14,"comments":15,"rec":28,"s":476,"top":18,"kw":477,"maker":11,"domain":10,"tier":19,"attempts":38,"strip":478,"url":9,"mix":479,"praise":72,"objection":85,"sub":21},16754987,-0.09,[24,25,26,27],"0000000003531301030000303513330330313233",[31,32,33,34],1793990972449]