From 5de9af64f18301ca1943ed1e362255f050424fcd Mon Sep 17 00:00:00 2001 From: Johnathan Rabkin Date: Fri, 13 Dec 2013 15:14:45 -0500 Subject: import for initial Savannah tree --- etc/logo/rt-liberation-logo.svg | 126 ++++++++++++++++++++++++++++++++++++++++ etc/rt-dot-el-design | 60 +++++++++++++++++++ 2 files changed, 186 insertions(+) create mode 100644 etc/logo/rt-liberation-logo.svg create mode 100644 etc/rt-dot-el-design (limited to 'etc') diff --git a/etc/logo/rt-liberation-logo.svg b/etc/logo/rt-liberation-logo.svg new file mode 100644 index 0000000..6469400 --- /dev/null +++ b/etc/logo/rt-liberation-logo.svg @@ -0,0 +1,126 @@ + + + + + + + + + RT + + + + + image/svg+xml + + + + + Open Clip Art Library + + + + 2006-12-14T21:25:31 + a frigate bird + http://openclipart.org/detail/2101/frigate-bird-by-ryanlerch + + + ryanlerch + + + + + bird + bird + clip art + clipart + fregatidae + fregatidae + frigate + frigate + frigate bird + frigate bird + fws + fws + fws lineart + fws lineart + image + line art + line art + media + png + public domain + remix + svg + + + + + + + + + + + diff --git a/etc/rt-dot-el-design b/etc/rt-dot-el-design new file mode 100644 index 0000000..01cc3c2 --- /dev/null +++ b/etc/rt-dot-el-design @@ -0,0 +1,60 @@ +-*- outline -*- + +This document outlines *a* design concept for an RT mode for +GNU/Emacs. + +** Functional modules + +* Module "TicketSQL compiler": Symbolic expression domain specific + language to TicketSQL query compiler. Accept as input a sexp + representing a query and output a query in TicketSQL format. For + example: [(:and (:owner "Ben Bitdiddle") (:status "open"))] => + ["Owner='Ben Bitdiddle' and Status='open'"]. + +* Module "TicketSQL runner": Run a TicketSQL query against the server + and return the result. Accept as input a TicketSQL query and return + a list of ticket-id ticket-subject pairs or nil if no matches were + found. + +* Module "ticket retriever": Retrieve all of the data related to a + particular ticket. Accept as input a ticket-id and return a string + containing all of the information and history corresponding to the + ticket with ticket-id. + +* Module "CLI command interface": Send ticket-modifying commands to + the server, receive and process the results. + +* Module "local storage": Store and retrieve arbitrary information + about tickets. The storage is keyed to the RT ticket number. + +** User interface modules + +* Module "ticket browser": (requires "TicketSQL runner") Interactive + interface to choose a ticket out of a list of tickets. The query + which generated the list is displayed at the top, followed by the + number of tickets listed, followed by a list of tickets. Tickets are + displayed according to a modular display function. The tickets are + sorted according to a default sorting function (reverse + chronological order). + +* Module "ticket viewer": (requires "TicketSQL retriever") Interactive + interface to display all of the information and history + corresponding to the ticket with ticket-id. Ticket display provides + a number of convinience functions. The buffer is read-only and + provides font-locking to easily identify section borders. The + keyboard space-bar invokes `scroll-up'. The "n" and "p" keys jump to + the next and previous section borders respectively. + +** Software interfaces + +* Module "rt-liber-Gnus": (requires "ticket viewer") Allows the user + to open the current ticket in a Gnus mail buffer. Fills in the + "Subject:" and "To:" fields appropriately. Has the ability to import + the text of a certain section (automatically quoted). Optionally can + add a "sorry we are late" text if the ticket is old or other + greetings, salutations and signatures. + +* Module "command": (requires "CLI command interface") The user can + send commands to the RT system to change the status of tickets via + this interface. The user interface is updated as needed to reflect + the change. -- cgit v1.2.3