diff options
| author | Yoni Rabkin <yoni@rabkins.net> | 2020-07-23 16:48:16 -0400 | 
|---|---|---|
| committer | Yoni Rabkin <yoni@rabkins.net> | 2020-07-23 16:48:16 -0400 | 
| commit | dd92e884a698b28d353759fc66c08ab8c668d60e (patch) | |
| tree | e692e271bf2e4b56bdaae568bf2c39a82ed41b34 /etc/rt-dot-el-design | |
| parent | bab09f7f38f26eeebc2b37b2c84490fd5a71cc97 (diff) | |
* more upgrade work
Diffstat (limited to 'etc/rt-dot-el-design')
| -rw-r--r-- | etc/rt-dot-el-design | 60 | 
1 files changed, 0 insertions, 60 deletions
| diff --git a/etc/rt-dot-el-design b/etc/rt-dot-el-design deleted file mode 100644 index 01cc3c2..0000000 --- a/etc/rt-dot-el-design +++ /dev/null @@ -1,60 +0,0 @@ --*- 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. | 
