;;; -*- lexical-binding: t -*- ;; ;; ----------------------------------------------------------------------------- ;; this file: ;; https://dataswamp.org/~incal/emacs-init/draw/draw.el ;; ----------------------------------------------------------------------------- (require 'cl-lib) (cl-pushnew "." load-path :test #'string=) (cl-pushnew (file-name-concat ".." "ll") load-path :test #'string=) (require 'luki-lisp) ;; ----------------------------------------------------------------------------- (let ((dm "draw.so")) (load dm nil t) (declare-function sdl2_init dm) (declare-function draw_init dm) (declare-function draw_quit dm) (declare-function draw_draw dm)) ;; ----------------------------------------------------------------------------- (defun buffer-substring-no-properties-in-window () (when-let* ((beg (or (win-beg) (point-min))) (end (or (win-end) (point-max))) (str (buffer-substring-no-properties beg end)) (fbk "No data") (fnl (or (& (su str) str) fbk))) (replace-regexp-in-string "\\(.+\\)$" "\\1\n" fnl))) ;; (buffer-substring-no-properties-in-window) ;; ----------------------------------------------------------------------------- (defun sdl2-draw-init () (draw_init)) ;; (sdl2-draw-init) (defun sdl2-draw-quit () (draw_quit)) ;; (sdl2-draw-quit) (defun sdl2-draw-draw () (draw_draw)) ;; (sdl2-draw-draw) ;; ----------------------------------------------------------------------------- (defun sdl2-init () (sdl2_init "SDL2 & GNU Emacs")) ;; ----------------------------------------------------------------------------- (<- 'draw) ;; -----------------------------------------------------------------------------