Hacker News new | past | comments | ask | show | jobs | submit login

> In summary, earlier versions of OSX are perfectly fine (my one remaining mac is on 10.10), but Apple has not been doing itself any favors with the dev community in more recent iterations of the OS.

The GNU/Linux community also isn't bending to my will arbitrarily either. Frustrating, to say the least.

In all seriousness, people are all happy to talk about how easy linux is to customize until you broach the subject of changing keybindings to use a mac-like scheme (using command for gui interactions as a rule of thumb, readline bindings everywhere there's text entry), and you find out this is pretty much impossible. In reality software is mostly customizable in the way the creators built it to be customized, including things like windowserver and macos mouse behavior and X11 and gtk and emacs and bash.




It seems like you're using OSes that are trying to cater to a diminishingly technical crowd. I read (somewhere, a year or so ago) that the generation now in their late 20s/early 30s was the last one that actually needed to care about how their computers worked, because their computers occasionally needed to be fixed. Generally speaking, I think that the newer generation has likely never been exposed to a computer that they could try to troubleshoot and fix themselves: everything is iPhone apps and Windows 7 / 10 and Andriod and slick websites. The information age no longer requires technical knowledge.

As a result, I'd guess that most of the purchasers of new computers are in the generations above and below the ones with technical knowlege: the new generation, without the background to even care about being a power user, and the older generation where most aren't power users anyway.

BTW, I'm using i3, and I think it would be (relatively) super easy to change the keybindings around to what you're describing. It sounds like you may need to find an OS that's designed to expose the level of customization that you want.


> > people are all happy to talk about how easy linux is to customize until you broach the subject of changing keybindings to use a mac-like scheme (using command for gui interactions as a rule of thumb, readline bindings everywhere there's text entry)

> BTW, I'm using i3, and I think it would be (relatively) super easy to change the keybindings around to what you're describing.

Really?

How does one go about configuring i3 such that, say, any time you hit ctrl-w it deletes backwards to the previous white space (a common readline binding) in any text entry box in, say, Firefox, IntelliJ, Spotify, VLC, Amarok, Gimp, etc?

Are you quite certain that “readline bindings everywhere there’s a textbox” is really in the scope of i3’s customizations? What OP described goes quite a bit beyond window manager customization.

> It sounds like you may need to find an OS that's designed to expose the level of customization that you want.

On OS X this can be achieved by placing

    {
      "^w"        = "deleteWordBackward:";
    }
in $HOME/Library/KeyBindings/DefaultKeybindings.dict, so I rather think he already is using an OS that exposes this level of pervasive customization.


The Cocoa text input widget supports these keybindings and is used in many applications. Linux does not have one single input widget that is as popular (Gnome apps use a GTK text widget, KDE apps use a Qt text widget, etc.) On Linux, you would need to address this setting on a per widget set basis.

I don't think this supports the argument that Mac OS X is somehow more customizable that Linux. In my opinion it's the opposite: every application is strongly encouraged to use the same text widget. We're lucky in this case that we like this function. In other cases (like virtual desktop management) Apple's decisions have been towards less customizability. I believe that has long been a Hallmark of Apple, back when OS X was released Apple scoffed at the idea that anyone would ever want to change the default theme (which at that time was a bit more extreme). A "gray" theme.was introduced after much pressure from customers.

That said, I seriously doubt that the Apple Computer of today is as interested in ensuring this functionality to the same degree as the Apple of ten years ago. They have made many developer unfriendly decisions in the past decade, I wouldn't count on this feature being present indefinitely.


> Linux does not have one single input widget that is as popular (Gnome apps use a GTK text widget, KDE apps use a Qt text widget, etc.). On Linux, you would need to address this setting on a per widget set basis.

Yes, I clearly already understood that. I was pointing out how absurd ColanR’s claim was that he could do this all through i3 config “super easy”. It isn’t within the domain of the window manager to control the toolkits’ widget bindings, which are all over the map in terms of customizability.

> I don't think this supports the argument that Mac OS X is somehow more customizable that Linux. In my opinion it's the opposite: every application is strongly encouraged to use the same text widget.

Which, in my opinion, strongly increases customizability because I can be sure the things I customize work the way I want them to effectively everywhere; I am not limited by every third application author’s obstinate choice to hardcode some other set of bindings in some deliberately incompatible toolkit.

I’d suggest that our disagreement comes down to the fact that configurability is not a linear gradient, but a fairly complex, multi-dimensional topic with a lot of subtle trade-offs that different people may have different preferences surrounding.

> I wouldn't count on this feature being present indefinitely.

Sure. Similarly I don’t count on however you do this in GTK today still working in 5 years, given how often they CADT their way into new incompatible configuration systems.


How does that work? If i implement my own editor using sdl2, how will it know? Are you sure it's not just cocoa specific? If that's the case it's possible for gtk too.


> If i implement my own editor using sdl2, how will it know? Are you sure it's not just cocoa specific? If that's the case it's possible for gtk too.

Of course it’s system textbox specific; if you reimplement your own, there is no magic involved.

And obviously it’s possible in GTK. And KDE, and one-offs like Firefox, for that matter. I’d suggest that the fact that you have to do it in about 20 different ways to cover your common apps, and a few will not even offer this kind of configuration, is net-worse than the OS which makes this so easy because there’s a standard GUI toolkit that nearly everything uses.

This doesn’t mean “Linux Bad, OS X Good”, but it is indicative of the fact that “Linux is configurable and OS X isn’t” is a very poor descriptor of reality.

Configurability is a complex topic with a lot of different facets, and both OSes offer different ranges of ease of configurability in different areas.

ColanR made the extraordinary claim that, ostensibly because he uses i3, “it would be (relatively) super easy to change the keybindings around to <command for gui interactions as a rule of thumb, readline bindings everywhere there's text entry>”. This is a very typical Linux user’s response in which they very narrowly equate mac keybindings with “window manager configuration”, when the flexibility offered by the system is in reality much broader than that.


Well, the point is all of this problem is there in osx too, since GTK, Qt, sdl2 and custom made windowing toolkit can all run in osx.

I know atleast a few programs that people use on osx which break these conventions, hence it's not as universal as your proclaim.

Unless you run only their store apps on your computer(which most likely no developer does), then maybe what you say makes sense. Otherwise it's not better than linux distros like elementary OS where convention is also to use gtk only apps(similar to cocoa only).


> Unless you run only their store apps on your computer(which most likely no developer does), then maybe what you say makes sense. Otherwise it's not better than linux distros like elementary OS where convention is also to use gtk only apps(similar to cocoa only).

This is, frankly, horseshit.

I run a lot of non-store apps, and absolutely none of them are GTK based, because GTK apps on OS X run through X Windows and look and work like dogshit. Next to nobody is voluntarily running that garbage.

Qt uses native text widgets, and works with the default input customization just fine. I can’t even begin to think of a development app that would be written in sdl2, a bloody games API.

Very, very few apps commonly in use by devs on OS X use anything other than native widgets, and it’s ridiculous to suggest otherwise.

The situation is a far, far, laughable cry from elementary OS, because outside of a small limited set of apps specifically targeted at such a niche distro, most Linux apps are still written in a hodgepodge of inconsistent wheel-reinventing mess of incompatible toolkits. The situation is night-and-day in inconsistency compared to OS X.


> I can’t even begin to think of a development app that would be written in sdl2, a bloody games API

A lot of games do, some even have their built-in editor and it's not about sdl2, it's anything custom widget toolkit. So your thing is a nice convention which often works but not always.

> laughable cry from elementary OS, because outside of a small limited set of apps specifically targeted at such a niche distro

Small limited set? a lot of programs are already written with gtk, distro merely enforce this convention in their app store like apple does.

I am not going to bother commenting on obvious things about how consistent OS X is.




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: