URL:
  <http://gna.org/task/?7936>

                 Summary: Submission of Viper C0
                 Project: Gna! Administration
            Submitted by: mtitke
            Submitted on: sab 27 giu 2015 17:16:45 UTC
                  Status: None
         Approval Status: None
         Should Start On: sab 27 giu 2015 00:00:00 UTC
   Should be Finished on: mar 07 lug 2015 00:00:00 UTC
                Category: Project Approval
                Priority: 5 - Normal
                 Privacy: Public
             Assigned to: None
             Open/Closed: Open
         Discussion Lock: Any

    _______________________________________________________

Details:

A new project has been registered at Gna! 
This project account will remain inactive until a site admin approves or
discards the registration.


= Registration Administration =

While this item will be useful to track the registration process, *approving
or discarding the registration must be done using the specific Group
Administration <https://gna.org/siteadmin/groupedit.php?group_id=3606> page*,
accessible only to site administrators, effectively *logged as site
administrators* (superuser):

* Group Administration <https://gna.org/siteadmin/groupedit.php?group_id=3606>


= Registration Details =

* Name: *Viper C0*
* System Name:  *viper*
* Type: Programs
* License: N/A (There is no license right now as I only use licenses when I
get paid and not for private and public "pet" projects. If you force me to
choose a license right now I will consider it to be invalid as there cannot
arise an agreement between me and a picture of a button.

Just get over it as it might become free like a bird if you let it.
)

----

==== Description: ====
I do not have yet any on-line space to show you the code of

 Viper C0 alfa

It's will become a remake of the classical Visual Display Editor and the
infamous Emacs Viper mode. It's currently implemented in Guile/GOOPS 1.8 but
it will need it's own Viper System Interface based on branch of Guile 1.8 in
the future. The current status is alfa, i.e. unfinished and unusable as an
editor. But you might want to look at it as a framework for a modern
programmable editor that is going to replace Emacs for me in the long run.

It's command line interface is already ready for extensions:

(define (command-line-execute)
  (define (R-E-D command-string)
    (display (eval-command-line (read-string command-string))) )
  (define (read-string string)
    (call-with-input-string string read))
  (let ((command (list->string
                  (reverse! command-line-buffer))))
    (set! command (string-append "(" command ")"))
    (cursor-home terminal)
    (my-debug "command-line-execute: " command)
    (cursor-home terminal)
    (R-E-D command)))

(define terminal (make <terminal>
                   #:port (fdopen (port->fdes (current-output-port))
                                  "r+0b")))
(define buffer-view (make <buffer-view> #:terminal terminal))
(define command-line-buffer '())
(define current-event-handler #f)
(define command-line-environment (null-environment 5))

;;
;; Command Line Commands
(define (iconify) (iconify-window terminal))
(module-define! command-line-environment 'e edit-file)
(module-define! command-line-environment 'q clean-exit)
(module-define! command-line-environment 'iconify iconify)

(define (eval-command-line command-line)
  (eval command-line command-line-environment))




==== Other Software Required: ====
Guile 1.8, stty (from Coreutils)






    _______________________________________________________

Reply to this item at:

  <http://gna.org/task/?7936>

_______________________________________________
  Messaggio inviato con/da Gna!
  http://gna.org/


_______________________________________________
Register mailing list
[email protected]
https://mail.gna.org/listinfo/register

Reply via email to