iAdd current page size in Kb and the whole bandwidth usage at the end - clic - Clic is an command line interactive client for gopher written in Common LISP Err bitreich.org 70 hgit clone git://bitreich.org/clic/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/clic/ URL:git://bitreich.org/clic/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/clic/ bitreich.org 70 1Log /scm/clic/log.gph bitreich.org 70 1Files /scm/clic/files.gph bitreich.org 70 1Refs /scm/clic/refs.gph bitreich.org 70 1Tags /scm/clic/tag bitreich.org 70 1README /scm/clic/file/README.md.gph bitreich.org 70 1LICENSE /scm/clic/file/LICENSE.gph bitreich.org 70 i--- Err bitreich.org 70 1commit 1f6eeef4e3b769c19b558f9218d618b59383a54d /scm/clic/commit/1f6eeef4e3b769c19b558f9218d618b59383a54d.gph bitreich.org 70 1parent e621aa67e792e7fa10c602cdf2820d652b3afe3e /scm/clic/commit/e621aa67e792e7fa10c602cdf2820d652b3afe3e.gph bitreich.org 70 hAuthor: Solene Rapenne URL:mailto:solene@perso.pw bitreich.org 70 iDate: Mon, 13 Aug 2018 12:33:37 +0200 Err bitreich.org 70 i Err bitreich.org 70 iAdd current page size in Kb and the whole bandwidth usage at the end Err bitreich.org 70 i Err bitreich.org 70 iDiffstat: Err bitreich.org 70 i M clic.lisp | 17 ++++++++++++++--- Err bitreich.org 70 i Err bitreich.org 70 i1 file changed, 14 insertions(+), 3 deletions(-) Err bitreich.org 70 i--- Err bitreich.org 70 1diff --git a/clic.lisp b/clic.lisp /scm/clic/file/clic.lisp.gph bitreich.org 70 i@@ -63,6 +63,10 @@ Err bitreich.org 70 i ;;; array of lines of last menu Err bitreich.org 70 i (defparameter *previous-buffer* nil) Err bitreich.org 70 i Err bitreich.org 70 i+;;; bandwidth usage counter Err bitreich.org 70 i+(defparameter *total-bandwidth-in* 0) Err bitreich.org 70 i+(defparameter *last-bandwidth-in* 0) Err bitreich.org 70 i+ Err bitreich.org 70 i ;;; a list containing the last viewed pages Err bitreich.org 70 i (defparameter *history* '()) Err bitreich.org 70 i Err bitreich.org 70 i@@ -303,6 +307,7 @@ Err bitreich.org 70 i :fill-pointer 0 Err bitreich.org 70 i :initial-element nil Err bitreich.org 70 i :adjustable t)) Err bitreich.org 70 i+ (setf *last-bandwidth-in* 0) Err bitreich.org 70 i Err bitreich.org 70 i (let ((real-time (get-internal-real-time))) Err bitreich.org 70 i ;; we prepare informations about the connection Err bitreich.org 70 i@@ -319,11 +324,15 @@ Err bitreich.org 70 i count line into lines Err bitreich.org 70 i while line Err bitreich.org 70 i do Err bitreich.org 70 i+ ;; count bandwidth usage Err bitreich.org 70 i+ (incf *total-bandwidth-in* (length line)) Err bitreich.org 70 i+ (incf *last-bandwidth-in* (length line)) Err bitreich.org 70 i ;; increase array size if needed Err bitreich.org 70 i (when (= lines (- (array-total-size *buffer*) 1)) Err bitreich.org 70 i (adjust-array *buffer* (+ 200 (array-total-size *buffer*)))) Err bitreich.org 70 i (vector-push line *buffer*))) Err bitreich.org 70 i Err bitreich.org 70 i+ Err bitreich.org 70 i ;; we store the duration of the connection Err bitreich.org 70 i (setf *duration* (float (/ (- (get-internal-real-time) real-time) Err bitreich.org 70 i internal-time-units-per-second))))) Err bitreich.org 70 i@@ -707,13 +716,14 @@ Err bitreich.org 70 i Err bitreich.org 70 i (defun display-prompt() Err bitreich.org 70 i (let ((last-page (car *history*))) Err bitreich.org 70 i- (format t "~agopher://~a:~a/~a~a (~as) / (p)rev (r)edisplay (h)istory : " Err bitreich.org 70 i+ (format t "~agopher://~a:~a/~a~a (~as, ~aKb) / (p)rev (r)edisplay (h)istory : " Err bitreich.org 70 i (if *kiosk-mode* "KIOSK " "") Err bitreich.org 70 i (location-host last-page) Err bitreich.org 70 i (location-port last-page) Err bitreich.org 70 i (location-type last-page) Err bitreich.org 70 i (location-uri last-page) Err bitreich.org 70 i- *duration*)) Err bitreich.org 70 i+ *duration* Err bitreich.org 70 i+ (floor (/ *last-bandwidth-in* 1024.0)))) Err bitreich.org 70 i (force-output)) Err bitreich.org 70 i Err bitreich.org 70 i (defun shell() Err bitreich.org 70 i@@ -769,7 +779,8 @@ Err bitreich.org 70 i ;; to look it here Err bitreich.org 70 i (when (not (eq 'end (visit destination))) Err bitreich.org 70 i ;; we continue to the shell if we are in a terminal Err bitreich.org 70 i- (shell)))) Err bitreich.org 70 i+ (shell))) Err bitreich.org 70 i+ (format t "~a kB in.~%" (floor (/ *total-bandwidth-in* 1024.0)))) Err bitreich.org 70 i (pipe-to-stdout destination))))) Err bitreich.org 70 i Err bitreich.org 70 i ;; we allow ecl to use a new kind of argument Err bitreich.org 70 .