When I’m archiving a lot of items on the Mac version I have to stop using the shortcut to archive and select the next item to archive. Is there a way to automatically select the next item in the inbox after I’ve used the shortcut? This way I can keep using keyboard shortcuts to archive without taking my hands of the keyboard.
When you use the command SHIFT+CMD+A a highlighted item in the last o drafts is archived. Using the down arrow refocuses on the list and selects the top item. You do not need to use the mouse to make this happen, but you do need to use the down arrow several times. It is not therefore automatic
but it is a way to
Half way there I reckon.
Thank you. That’s all I need. Sounds like a job for Keyboard Maestro.
For what it’s worth, I was going through a long list of drafts and archiving them (with the goal to clean out Drafts and get to using it more again). I also expected that the item below the archived item would be selected after archiving.
That setting does not apply to the cmd+shift+A keyboard shortcut
This issue is thoroughly confusing me to the point I think I might have a personal bug somewhere.
After I “Archive” action, “Trash” action or do any action that moves a draft out of the currently visible drafts list the draft at the top of the list is selected, but I would prefer that the next draft in the list is selected.
”ACTION “AFTER SUCCESS”“ is set to “Open Next Draft”. Which is half working because it does open another draft (the one at the top of the list), just not the next one. If I select “Create New Draft”, it will do that and create a new draft.
I have tried the default Archive action in the Drafts Action Directory, I have rebuilt it archiving via an Action’s “After Success → Move: Archive”, I have written my own with javascript. I toggled Focus Mode. Sort Order is set to Modified.
No idea is a bad idea. I’m probably overlooking some basic setting.
Update: Actually I got a script to work.
// Make sure current edits are saved
editor.save(); // optional but wise
// Draft currently displayed
let oldDraft = editor.draft;
let oldUUID = oldDraft.uuid;
// Attempt to move to next draft in the list
editor.nextDraft();
// Did we actually move?
let moved = editor.draft && (editor.draft.uuid !== oldUUID);
// Archive the old draft
oldDraft.isArchived = true;
oldDraft.update();
if (!moved) {
// No next draft was available; create a new one
editor.new();
}
And in case you want to select the next draft after any action.
// Select next draft; if none, select previous; if none, create a new draft.
;(() => {
const _uuid = editor.draft ? editor.draft.uuid : null;
// If for some reason there's no draft loaded, just create a new one.
if (!_uuid) {
editor.new();
return;
}
// Try next
editor.nextDraft();
let _moved = editor.draft && editor.draft.uuid !== _uuid;
// If next didn't move, try previous
if (!_moved) {
editor.previousDraft();
_moved = editor.draft && editor.draft.uuid !== _uuid;
}
// If neither moved (e.g. list had only one item), create new
if (!_moved) {
editor.new();
}
})();
