iadd support for terminal size for ecl Thanks to pjb on #ecl that wrote the ffi code - 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 ba86c5e114249375116d7d40a5b66bc2e2baa4ce /scm/clic/commit/ba86c5e114249375116d7d40a5b66bc2e2baa4ce.gph bitreich.org 70 1parent c6ebdeef05fc755afb9f9506445026dded37a077 /scm/clic/commit/c6ebdeef05fc755afb9f9506445026dded37a077.gph bitreich.org 70 hAuthor: Solene Rapenne URL:mailto:solene@perso.pw bitreich.org 70 iDate: Sat, 11 Nov 2017 22:06:08 +0000 Err bitreich.org 70 i Err bitreich.org 70 iadd support for terminal size for ecl Err bitreich.org 70 iThanks to pjb on #ecl that wrote the ffi code Err bitreich.org 70 i Err bitreich.org 70 iDiffstat: Err bitreich.org 70 i M clic.lisp | 14 ++++++++++---- Err bitreich.org 70 i Err bitreich.org 70 i1 file changed, 10 insertions(+), 4 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@@ -9,7 +9,7 @@ Err bitreich.org 70 i ;;;; SBCL only Err bitreich.org 70 i #+sbcl Err bitreich.org 70 i (progn Err bitreich.org 70 i- (load-shared-object "./extension.so") Err bitreich.org 70 i+ (load-shared-object #p"./extension.so") Err bitreich.org 70 i (declaim (inline getTerminalHeight)) Err bitreich.org 70 i (sb-alien:define-alien-routine "getTerminalHeight" unsigned-int) Err bitreich.org 70 i (defun c-termsize () Err bitreich.org 70 i@@ -18,9 +18,15 @@ Err bitreich.org 70 i Err bitreich.org 70 i #+ecl Err bitreich.org 70 i (progn Err bitreich.org 70 i- "we don't do C binding with ecl" Err bitreich.org 70 i- (defun c-termsize() Err bitreich.org 70 i- 40)) Err bitreich.org 70 i+ (ffi:clines " Err bitreich.org 70 i+ #include Err bitreich.org 70 i+ #include Err bitreich.org 70 i+ unsigned int getTerminalHeight() { Err bitreich.org 70 i+ struct winsize w; Err bitreich.org 70 i+ return ioctl(1,TIOCGWINSZ,&w)<0?UINT_MAX:w.ws_row;}") Err bitreich.org 70 i+ (ffi:def-function Err bitreich.org 70 i+ ("getTerminalHeight" c-termsize) Err bitreich.org 70 i+ () :returning :unsigned-int)) Err bitreich.org 70 i ;;;; END C binding Err bitreich.org 70 i Err bitreich.org 70 i ;; structure to store links Err bitreich.org 70 .