anchor.diff:         (gtk:gtk-list-store-set
           (completion-model self)
           (gtk:gtk-list-store-append (completion-model self))
  -        element)))
  +        (write-to-string element))))
   
  -(defun initialize ())
  +(defmethod get-input ((self minibuffer-view))
  +  (gtk:gtk-entry-text (input-entry self)))
  +
  +(defmethod process-set-completions ((self minibuffer-view))
  +  "Process and set completions for the minibuffer"
  +  (with-slots (completion-function completion-model completion-viw) self
  +    (when (completion-function self)
  +      (completions-clear self)
  +      (completions-add self (funcall completion-function (get-input self))))))
  +
  +(defun initialize ()
  +  (setf (gethash #\Return *character-conversion-table*) "RETURN")
  +  (setf (gethash #\- *character-conversion-table*) "HYPHEN"))
   
   (defun start ()
     (gtk:within-main-loop
  
positive.code: (in-package :interface)
  
  (defparameter *next-interface* nil)
  
  (defclass next-interface ()
    ((window :accessor window :initarg :window)
     (minibuffer-view :accessor minibuffer-view :initarg :minibuffer-view)))
  
  (defclass minibuffer-view ()
  
negative.code:       (lambda (window event)
          (declare (ignore window))
          (process-event event)))
       (gobject:g-signal-connect
        entry "changed"
        (lambda (widget)
          (declare (ignore widget))
          (process-set-completions (minibuffer-view *next-interface*))))
       (gtk:gtk-widget-show-all window))))
  
  (defun kill ()
    (quit))
  