Integrating Taskfile with Emacs

This document provides an overview of the taskfile.el included in the root of this repository. The organization of this file mirrors the organization of taskfile.el




Defines the full path to your main taskfile. taskfile-open uses this variable.


Defines the full path to the flow file. taskfile-flow uses this variable.


Defines the make invocation used to rebuild your taskfile. taskfile-compile uses this variable.



This interactive function takes a standard Taskfile task entry (in the source format) and transforms it into a Markdown list-entry prefixed by the string “DONE”. For example, the taskfile-mark-done takes following task:

TODO work on Taskfile Project

and transforms it into:

- DONE work on Taskfile Project

Opens the buffer that holds the default taskfile. Define the full path to your taskfile in taskfile-location.

taskfile-open opens the task list in read-only mode, to prevent unintended editing, and enables Visual Line Mode


Opens the buffer that holds the flow file. Define the full path to this file in taskfile-flow-location.


Runs Emacs’ “compile” command using the make invocation defined in taskfile-compile-command. Use this to open compile-mode [1]


Deft Mode

Deft is a note-taking and notes organization mode for emacs. If you do not have an existing note taking solution, you may find deft useful. The taskfile.el provides a few additional functions on top of deft that you may find helpful either in conjunction with deft, or on their own.


The following variables define aspects of deft operation.


Sets the file extension that Deft uses for its files. Typically this should reflect the value of EXTENSION.


Sets the directory in that Deft looks for files. Typically this should either be the value of SOURCE or a sub-directory of the directory defined by SOURCE.


Specifies a major-mode to use as the default mode for. Typically this should be markdown-mode or rst-mode but any available major-mode in your emacs installation, preferably one that Taskfile’s regular expressions can parse, will work.


Specifies the interval in seconds that deft buffers will automatically write their contents to disk. Typically the best value for this setting is nil to prevent this behavior entirely.



This is a helper function used by tychoish-deft-create to generate a reasonable lower-case and hyphen separated file name.


Prompts the user to enter the name of a new file, with a filneame computed from the user input using deft-file-make-slug.


C-c d o

Calls deft.

Mnemonic: “deft open.

C-c d n

Calls tychoish-deft-create.

Mnemonic: “deft new.

C-c d d

Opens the deft-directory in a dired buffer.

Mnemonic: “deft directory.

C-c t t

Calls taskfile-open.

Mnemonic: “taskfile tasks.

C-c t c

Calls taskfile-compile.

Mnemonic: “taskfile compile.

C-c t f

Calls taskfile-flow

Mnemonic: “taskfile flow.

Occur Customizations

At the end of taskfile.el there are a number of modifications to occur culled from the Emacs Wiki Occur Page that may make occur more easy for you to use. You may choose to omit these customizations if they conflict or disrupt your current workflow.

Taskfile: A Tasklist Compiler

Page Meta


Cyborg Institute

Cyborg Institute is a collective free software/open source publishing, consulting, and services umbrella. The Institute supports individuals working on projects that address technological issues from a cyborg perspective.