(评论)
(comments)

原始链接: https://news.ycombinator.com/item?id=40792740

作者发现苹果的 QuickLook 功能很有趣,尽管它有缺点。 他们指出,它通过添加边框和圆角巧妙地改变了项目的外观。 虽然设计师可能认为这种改进增强了视觉吸引力,但它无意中删除了演示过程中的信息。 这篇文章强调了 macOS 隐藏的深度,揭示了即使在生产版本中也存在的符号以及操作它们的简便性。 作者回顾了他们尝试 Objective-C 的经验,分享了使用调试器和直接内存编辑控制程序流程的技巧。 尽管使用某些方法会遇到问题,但由于内存补丁的有效性,他们还是提倡使用内存补丁。 总的来说,这篇文章强调了探索者对 macOS 内部工作原理的迷恋,揭示了符号的可用性以及修改符号和元数据。 此外,作者还分享了在分散注意力的情况下集中注意力的策略,并鼓励人们欣赏该系统带来的便利。 他们还提到了对 Smalltalk 的持续探索,并指出与 Objective-C 的相似之处。 最后,他们讨论了有关 macOS 界面的个人偏好,赞扬了可发现性的改进,并表达了对不一致和缺失功能的担忧。

相关文章

原文


This was quite an interesting read, even though I didn't understand some of the details. QuickLook is basically tampering with the accuracy/completeness of the item by using a border and rounded corners. Whoever designed this may have believed that this looks nicer, but there's no good reason to remove information (even if a little bit) while displaying things.



This is lovely.

As someone who doesn't use ObjC in earnest, it's also a good reminder of how nice it is under the hood.



Note that if you're just experimenting you can also use LLDB's breakpoint commands + "thread ret"/reg write to control logic.

But I've had some weird issues using "thread ret" (even when using it as the first instruction in a function when it shouldn't corrupt the stack), so patching memory is probably cleaner.



Cool investigation into the guts of macOS. I had no idea symbols were still present for production builds in macOS and that they are so easily 'hackable'.

I hadn't noticed before, but it is very strange to round corners of images in QuickLook. Apple should revert this change.



Apple provides basic symbols for some of their binaries–particularly older ones. I assume the default setting used to be to not strip those, or some kind soul picked that option and nobody revisited it. Unfortunately a lot of new code is shipped stripped by default :(



You might be thinking of Objective-C metadata, which contains information about classes, protocols and categories. Unlike symbols, metadata can’t be stripped.



I recognized myself in this article, except I usually don't get to the solution at the end. Bravo.

Anyone have a good way to not be distracted by every egregious annoying thing that appears in your daily routine?



be conscious of it, when the shiny thing appears, write it down on a piece of paper and tell yourself you'll come back to it if it's interesting enough. At the end of the day, throw away the paper :)



This was a great article. I've been playing around with Smalltalk for a few weeks, which I understand is like the spiritual ancestor of Objective-C, and this reminded me a lot of that. It's probably mostly down to the oddball calling convention, but I wonder if other GUIs are as easy to introspect and patch.



You have just improved my life significantly. Thank you. I filed it under "good things we had but were taken away", and now it's under "Great things we have". For future travellers: It's not enabled by default in Ubuntu. Gotta apt that thing.



What should I use instead? Windows that that will track me? Or Linux that lacks the apps that I want to run?

I use a Mac and I disable SIP. Why? Because it makes me happier. I spend all day using a computer. I want the computer to work exactly how I tell it to work. I don’t ever want the computer to refuse to do something even when I enter the root password.

Life is about managing risks. Every day we take risks that are much bigger than disabling SIP: e.g. driving a car, crossing a road, riding a bicycle, eating a hamburger, or going outside without sunblock (if you have light skin) are infinitely more risky than disabling SIP.

If you don’t see any benefit from disabling SIP then feel free to leave it enabled. But don’t let fear run your life. We’re not here forever.



The makers of macOS chose to implement and enable SIP. If you are not comfortable with it, you aren’t comfortable with macOS.

> Or Linux that lacks the apps that I want to run?

Emulation exists.



90% of macOS is legacy code and programs that worked well in OS X and even NeXT OS. It's insane that every once in a while, Apple decides to poke around those areas and make some "improvements". When I put that next to what Microsoft is doing with Windows, I can only ask:
    Have we lost the art of OS design?
I mean, surely there must be designers and programmers in those companies who still know what a good OS experience is like. But are marketing and sales people louder in those companies?


Design of macOS since BigSur took such a nosedive.

Buttons are flat text that doesn't look clickable, with the best case of having a very faint border, sometimes only on hover. There are multiple ad-hoc checkbox replacements. There's a jarring cacophony of old macOS and new iPadOS UI elements — old UI elements with small fonts, small padding, and teeensy disclosure indicators share the screen with big fat round blobs lazily transplanted from a touch screen OS. Some elements react to hover, some don't. Some can only be discovered by hovering mouse in a specific location. Menus have varying heights, and varying padding.

Such unpolished inconsistent details used to be a tell-tale of non-native UI toolkits, or skins for other OSes faking a Mac OS X look. Now macOS looks like a hasty unfinished reskin of iPadOS ;(



I much prefer it, fwiw. Since MacOS apps have their settings in-app, I rarely use Settings.app and so I could never remember where to find things in the 2D grid of the old app. Now things are much more discoverable, since it’s a 1D layout that I scroll linearly. Even more so because there’s somewhat of a correspondence with iOS, whose Settings.app I use all the time (since iOS apps don’t have settings in-app). I say this as someone who has used macOS for almost 20 years.



I agree. The new settings app is one of few places where new design/reorganisation is actually better and people are annoyed just because of broken habits. Whats really bad though is how individual settings in the app are gradualy disappearing.



I never even try to find things in the 2D grid of the old System Preferences app. I just use Spotlight, or any number of Spotlight replacements that support searching for prefPanes. I say this as someone who has used macOS for almost but less than 20 years: perhaps my first introduction to OS X was Tiger so I'm more accustomed to Spotlight?



To me, it seems like the spirit of Jony Ive is still around. Seriously, you should email Craig Federighi about this with (any links to) criticisms or images showing comparisons. Sometimes Apple takes action only when people high up are alerted.



There's an accessibility setting to show button borders in toolbars. I turned it on the day I got my current Mac and now keep forgetting that it's not the default.



I'm puzzled someone in the macOS department made it a priority to fiddle with adding some border to QuickLook when there's so much stuff broken in macOS (and QuickLook itself)



My thoughts exactly. There are so many little UX bugs still needing to be fixed, even in Finder, and somewhere somebody does... this instead?

This rounded rectangle doesn't even make sense. I don't know if I'm baffled more that it was prioritized or that it was even approved in the first place.



Well that was an interesting journey. I don’t think rounded corners would bother me enough to go digging that deep, but I appreciate that it bothered someone enough that they went to the trouble and wrote it up.



My main objection to something like this (and cheers this person went to great lengths to fix it) is that as shipped you can't tell the difference between an image with square corners that got rounded off by QuickLook, or an image legitimately with rounded corners that looks like QuickLook. It shouldn't have been necessary to go to such trouble to turn that option off, one which will easily interfere with the workflow of a graphics professional.



Not sure why you were downvoted...

Making buttons that melt into the background is demonstrably bad accessibility.

> Also, the default window background colour now looks like a washed out water colour brown.

That's just a misunderstanding. It isn't a background colour, it's a glassy effect texture. So the "brown" is just from whatever the desktop background image was behind the window. If the second screenshot had the same desktop background and window accent tinting settings then the backgrounds would have appeared the same between screenshots.

联系我们 contact @ memedata.com