Quick Way to Convert Action to Project and Move it to a Folder

Hi. I’m fairly new to OmniFocus. So, if I have overlooked something, please tell me.

A task I often do is to convert an action inside the inbox to a project and move it to a specific folder. On iOS, I can simply tell OmniFocus to convert the action to a project and it asks me in which folder to create the project. This is pretty quick.

On the Mac, however, the quickest way to do that I have figured out is the following:

  1. Press ⌘! to convert the action to a project.
  2. Press ⌥⌘1 to switch to the sidebar.
  3. Press ⌃⌘↑ to move the project below the folder that it shall be added to.
  4. Press ⌃⌘→ to move the project into the folder.
  5. Press ⌥⌘2 to continue editing the project.

This involves 15 key presses on a German keyboard, which is ridiculous in my opinion. Another way would be to drag the project in the sidebar into the folder. However, that can take a really long time because the list scrolls very slowly.

Is there a quicker way to do it, preferably using only the keyboard?

1 Like

You might not like my suggestion but Keyboard Maestro is a must-have for keyboard jockeys.

Well, this is how I did it for a while. Now I do it like that:

  1. Press ⌘! to convert the action to a project.
  2. Press ⌘X to cut the project into clipboard
  3. Press ⌘O and enter a couple of letters for the folder and then return to open
  4. Pree ⌘V to paste the project to the new folder (I do not care too much about the order of projects in a folder)

This works well for me. Just lately, OF crashes on one folder when I paste the project. It works in the other folders though. Thus, I can live with this one exception.

Best regards,

Ralf

1 Like

@wilsonng: Thank you for your suggestion. Would you use AppleScript to use Keyboard Maestro with OmniFocus?

@ralf: Thank you for your answer. I didn’t know about ⌘O. However, if I follow your instructions, the project is inserted outside of the folder. If I press down before pressing ⌘V, this works for some folders. However, one of my folders has a subfolder as its first entry. In this case, the project is created in the subfolder. Could you please clarify which keys you press to achieve this?

You can use Keyboard Maestro to launch Terminal commands, Applescripts, Javascript, and Automator workflows.

However, I’m no programmer. I would just use Keyboard Maestro to create a hot ket that would do all those keyboard commands that you stated in your first post.

A small intro movie is at their web site

http://www.keyboardmaestro.com/main/

or search keyboard maestro in youtube for some demos and reviews.

Thank you for the info. I will look into it.

Hi kocki,

here, it crashes exactly in this case. This happens since one of the last updates. Something went wrong. It is a shame, since I am a keyboard maniac and this was the perfect workaround for me to the problem of dragging and dropping Inbox items into projects much discussed on this forum.

Best regards,

Ralf

I have a way to show here.

See the process:
I am in a project. I then press ⌥⌘T to open the same project in a new tab. Then I use ⌘O and type the name of the folder where I want to move the same. After the folder is open in a new tab, I then go back to the previous tab, and drag the project in the new tab and release it on the folder name in the outline pane.

This is the quickest way for me to move a project into a new folder. However you need to first convert an action into a project using ⌘!.

Hope this helps. Thanks.

Regards,
Dr. Sudeep

Wanted to tickle this thread. For me filing projects really illuminates perspectives. I guess I could use tags instead, but I’d rather have exceptionally quick way of creating projects and filing fast.

@ralf and @kocki - I love your chain here, especially Ralf’s solve. Are there any updates to how you do this today?. I would love to see if there are any plans to make this more of a GUI process in #omnifocus:omnifocus-for-mac.

Thanks all.

-Jarrod

I have switched to using an Omni Automation script to create a project from an action.

I can simply select an action and use a keyboard shortcut. This shows a numbered list of folders. Then, I enter the corresponding number and a new project is created in this folder.

The script I use is based on this script by @rosemaryjayne : https://omni-automation.com/omnifocus/task-to-project.html

Unfortunately, I suspect that due to copyright reasons I am not allowed to publish the full source code of the script. However, here is an explanation how to modify the existing script:

Replace lines 82-84 with:

		})

		formPromise.catch(function(err){
			console.error("form cancelled", err.message)
		})

Between lines 38 and 39, insert:

			project.estimatedMinutes = taskEstimatedMinutes
			project.flagged = taskFlagged

Replace Line 35 with:

			var project = new Project(taskTitle, chosenFolder)

Between lines 13 and 14, insert:

		var folders = flattenedFolders
			.filter((folder) => { return folder.status == Folder.Status.Active })

		var folderNames = folders.map(folder => {
			return folder.name
		})
		var itemIndexes = new Array()
		folderNames.forEach((name, index) => {
			itemIndexes.push(index)
		})
		
		var folderMenu = new Form.Field.String(
			"folder", 
			"Folder", 
			"",
			null
		)

		var folderList = folderNames
			.map((name, index) => { return (index + 1).toString() + ". " + name })
			.join("\n")

		var inputForm = new Form()
		inputForm.addField(folderMenu)
		var formPrompt = "Choose a folder:\n\n" + folderList
		var buttonTitle = "Continue"
		var formPromise = inputForm.show(formPrompt,buttonTitle)

		inputForm.validate = function(formObject){
			return true
		}

		formPromise.then(function(formObject){
			var chosenIndex = formObject.values['folder'] - 1
			var chosenFolder = folders[chosenIndex]

I hope this helps. If @rosemaryjayne does not mind, I will be happy to post the full source code here.

For a similar alternative, I published this a while ago:

1 Like

This post was flagged by the community and is temporarily hidden.