Archive for June 27, 2022

Monday, June 27, 2022

OmniFocus Plug-Ins for Deferring Actions

Nicholas Riley:

There must be a word for procrastinating by building tools that aid in deferring tasks.


The idea is that when the defer/due dates have passed, it’s easier to say “I want to do this starting tomorrow, or due tomorrow” rather than “I want to do this starting a week after the prior due date”.

Most of my OmniFocus projects are parallel or single action lists, so I prioritize and hide actions that I don’t want distracting me by setting defer dates. I’ve long used an AppleScript to defer actions to the next day or week.

Riley has created some Omni Automation plug-ins to do this sort of thing. This means that they can work on iOS, too. It’s neat how the plug-in can tell OmniFocus when its action should be enabled. It can also use a form to ask the user for input, and this works appropriately on both macOS and iOS.


WorldWideWeb App

Craig Hockenberry (Hacker News):

About a decade ago, things started to change. Since then it’s gotten harder and harder to start a simple web server for testing HTML, CSS, and JavaScript. I eventually found a way to do it using AppleScript, but as Apple continues to remove open source components from its standard macOS distribution, this workaround isn’t likely to last.

So I decided to write my own web server app.

Alex Guyot:

Solidly developer-focused in scope, the app serves files from a local directory to an automatically generated URL, making these files available to any device on your local network.


WorldWideWeb enables developers to easily open their in-development website on an actual smartphone- or tablet-sized device rather than using a simulator. They can then make changes to their files and simply reload the browser tab to see those changes live.


The story here is quite a bit different for the iPad and iPhone. These devices have previously had no well-known way to achieve the functionality that WorldWideWeb is providing, and certainly not with all the ease and elegance of an app by The Iconfactory. Now, alongside the excellent code editor Runestone (which I covered here last month), WorldWideWeb completes a potential end-to-end pipeline for web development on Apple’s mobile platforms.

I wonder how iOS multitasking treats this. I’ve certainly had problems using VLC’s Web server, because simply tapping a notification or going into Settings puts the app in the background, killing the HTTP connection. I guess that shouldn’t be an issue when serving small files, though, and it doesn’t support PHP or CGI scripts that might run for a while, though the new version does use WebSockets:

Craig Hockenberry:

The main improvement in version 1.0.1 is “auto refresh”. As you edit the text files in your Website Folder, the app watches for changes. When an update is detected, a web socket is used to send a notification to the browser that causes a refresh.

A small bit of JavaScript is injected into every HTML page to make this happen, and the feature can be disabled if that causes a problem.


Update (2022-06-30): WorldWideWeb plays audio in the background in order to keep the network connection alive.


Exporting/Archiving E-mail From Apple Mail

Miles Wolbe:

Mail’s built-in export (and import) methods suffer from various limitations and bugs; the following tests were run under macOS 12.4 and Mail 16.0[…]

Of course, I recommend EagleFiler for this, which offers a variety of ways of importing from Apple Mail.

1. Mailbox → Export Mailbox...

I’m not sure what’s causing the importing problem that he mentions, but historically the Export Mailbox… command has not generated valid mbox files. I have not seen the “some messages could not be imported” error when importing properly formed mbox files, such as those generated by EagleFiler.

2. Click and drag multiple messages from Mail to Finder

You can also do this to export messages from EagleFiler, if you want to convert them from mbox to .eml format. Unlike Mail it doesn’t fail for messages with long subjects.

3. AppleScript

Many scripts, such as the mentioned Export Selected Mail Messages, will corrupt message data because they don’t properly handle a bug/oddity in Mail’s AppleScript support. Mail types the source AppleScript property as text when really it should be treated as raw data. If the script retrieves the source as a Unicode string and then writes it to a file, the non-ASCII bytes will be altered.

EU and Possibly US to Require USB-C for Phones

European Parliament (via Hacker News):

By autumn 2024, USB Type-C will become the common charging port for all mobile phones, tablets and cameras in the EU, Parliament and Council negotiators agreed today.


Under the new rules, consumers will no longer need a different charging device and cable every time they purchase a new device, and can use one single charger for all of their small and medium-sized portable electronic devices. Mobile phones, tablets, e-readers, earbuds, digital cameras, headphones and headsets, handheld videogame consoles and portable speakers that are rechargeable via a wired cable will have to be equipped with a USB Type-C port, regardless of their manufacturer.

Jon Porter:

The single biggest impact of this legislation is likely to land on Apple’s iPhone. While the rest of the smartphone industry has gradually converged around USB-C as a single, standardized wired charging port, Apple has steadfastly stuck with Lightning, the proprietary connector it introduced with the iPhone 5 way back in 2012. The EU’s legislation could finally force it to move on.

The EU’s rules are just a provisional agreement for now and will need to be approved by both the European Council and European Parliament before they become official. That’s expected to happen after summer recess, which ends on September 1st.

Rosyna Keller:

Of course, even with such mandates, Type C would still have the same major flaw Type B, Mini USB, and Micro USB all suffer from: the “male” connector is on the device, not the cable, and that tiny little part can break of or become misaligned, requiring port replacement.

I’m less worried about that than I used to be because I now use primarily wireless charging. I’m more likely to use a cable when travelling, and that’s when it’s frustrating to need separate cables for Lightning. With newer iPads using USB-C, too, Lightning is not even ubiquitous among Apple devices.

Chance Miller:

Now, a group of senators in the United States is looking to follow suit, calling on the US Commerce Department to adopt a similar policy to address the “lack of interoperability standards for charging and other device accessories.”


According to the senators, proprietary charging standards such as Apple’s Lightning port are an example of “planned obsolescence” that is “expensive and frustrating for consumers, and drives the proliferation of electronic waste.”

I don’t think it’s “planned obsolescence.” Switching now would generate more waste in the short term, as customers discard their Lightning stuff. Maybe it would reduce waste in the long term, though it’s not clear to me how these proposals address the long term, i.e. how we will ever move beyond USB-C after it’s been mandated.

Juli Clover:

The next-generation AirPods Pro could come with a long list of new features that include heart rate detection, the ability to function as a hearing aid, and a USB-C port according to a report from 52Audio.

Granted, I think a USB-C AirPods case has been rumored ever since the first version.