Emacs 和 Trac 集成

Emacs 和 Trac 集成

有没有办法集成 Trac 和 Emacs?例如,在 org 模式下编辑 Wiki 页面,在 emacs 中编辑和管理票证?

答案1

有一个Emacs 的 Trac Wiki 页面编辑模式。它应该可以简化 Trac Wiki 页面的编辑,但也有助于比较、合并、突出显示和完成。

也提到了Emacs维基并在一篇博文

答案2

就我个人而言,对于票证管理,我在 org-babel-python 中使用了一个脏脚本,它将检索内联票证列表到我的组织页面中:

#+begin_src python :results output
base_url = "http://your.trac.site.url"
ticket_list_url = "http://your.trac.site/query?..."
headers = {"Cookie": "trac_form_token=token-from-browser-session; trac_auth=your-auth-from-browser-session"}

import requests
tasks_html = requests.get(ticket_list_url, headers=headers)

from HTMLParser import HTMLParser

class MyHtmlParser(HTMLParser):
  in_link = False
  link_href = None

  def handle_starttag(self, tag, attrs):
    attrs = dict(attrs)
    if tag == "a" and attrs["href"].startswith("/ticket"):
      self.in_link = True
      self.link_href = attrs["href"]
    else:
      self.in_link = False

  def handle_data(self, data):
    data = data.strip()
    if self.in_link and data and not data.startswith("#"):
      ticket_num = self.link_href[8:]
      print "*** #" + ticket_num + " [[" + base_url + self.link_href + "][" + data + "]]"

MyHtmlParser().feed(tasks_html.text)

#+end_src

该脚本需要pip install requests加上 org-babel 并启用 python。另外,您需要*_url从浏览器会话中设置& set auth 标头。

Org-babel 脚本可以运行C-c C-c

以防万一有人需要一个肮脏的解决方案来在组织页面中列出来自 trac 的票证。

相关内容