about summary refs log tree commit diff
path: root/README.org
blob: 423dfc21ae873b1f2c538587feea172523419e7c (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
#+TITLE: Org-Clubhouse

Simple, unopinionated integration between Emacs's [[https://orgmode.org/][org-mode]] and the [[https://clubhouse.io/][Clubhouse]] issue tracker

* Install

** [[https://github.com/quelpa/quelpa][Quelpa]]

#+BEGIN_SRC emacs-lisp
(quelpa '(org-clubhouse
          :fetcher github
          :repo "urbint/org-clubhouse"))
#+END_SRC

** [[https://github.com/hlissner/doom-emacs/][DOOM Emacs]]

#+BEGIN_SRC emacs-lisp
;; in packages.el
(package! org-clubhouse
  :recipe (:fetcher github
           :repo "urbint/org-clubhouse"
           :files ("*")))

;; in config.el
(def-package! org-clubhouse)
#+END_SRC

** [[http://spacemacs.org/][Spacemacs]]
#+BEGIN_SRC emacs-lisp
;; in .spacemacs (SPC+fed)
   dotspacemacs-additional-packages
    '((org-clubhouse :location (recipe :fetcher github :repo "urbint/org-clubhouse")))
#+END_SRC

* Setup

Once installed, you'll need to set three global config vars:

#+BEGIN_SRC emacs-lisp
(setq org-clubhouse-auth-token "<your-token>"
      org-clubhouse-team-name "<your-team-name>"
      org-clubhouse-username "<your-username>")
#+END_SRC

You can generate a new personal API token by going to the "API Tokens" tab on
the "Settings" page in the clubhouse UI.

Org-clubhouse can be configured to update the status of stories as you update
their todo-keyword in org-mode. To opt-into this behavior, set the
~org-clubhouse-mode~ minor-mode:

#+BEGIN_SRC emacs-lisp
(add-hook 'org-mode-hook #'org-clubhouse-mode nil nil)
#+END_SRC

* Usage

In addition to updating the status of stories linked to clubhouse tickets,
org-clubhouse provides the following commands:

- ~org-clubhouse-create-story~
  Creates a new Clubhouse story from the current headline, or if a region of
  headlines is selected bulk-creates stories with all those headlines
- ~org-clubhouse-create-epic~
  Creates a new Clubhouse epic from the current headline, or if a region of
  headlines is selected bulk-creates epics with all those headlines
- ~org-clubhouse-create-story-with-task-list~
  Creates a Clubhouse story from the current headline, making all direct
  children of the headline into tasks in the task list of the story
- ~org-clubhouse-push-task-list~
  Writes each child element of the current clubhouse element as a task list
  item of the associated clubhouse ID.
- ~org-clubhouse-update-story-title~
  Updates the title of the Clubhouse story linked to the current headline with
  the text of the headline
- ~org-clubhouse-update-description~
  Update the status of the Clubhouse story linked to the current element with
  the contents of a drawer inside the element called DESCRIPTION, if any exists
- ~org-clubhouse-headlines-from-query~
  Create org-mode headlines from a clubhouse query at the cursor's current
  position, prompting for the headline indentation level and clubhouse query
  text
- ~org-clubhouse-claim~
  Adds the user configured in ~org-clubhouse-username~ as the owner of the
  clubhouse story associated with the headline at point

* Configuration

Refer to the beginning of the [[https://github.com/urbint/org-clubhouse/blob/master/org-clubhouse.el][~org-clubhouse.el~]] file in this repository for
documentation on all supported configuration variables