mirror of
https://github.com/rabbibotton/clog.git
synced 2025-12-06 02:30:42 -08:00
tab adjust
This commit is contained in:
parent
fd2afcefd9
commit
1faedda116
5 changed files with 286 additions and 14 deletions
2
clog.asd
vendored
2
clog.asd
vendored
|
|
@ -16,6 +16,7 @@
|
|||
#:bordeaux-threads #:trivial-open-browser #:parse-float #:quri
|
||||
#:lack-middleware-static #:lack-request #:lack-util-writer-stream
|
||||
#:trivial-gray-streams #:closer-mop #:mgl-pax #:cl-template #:atomics
|
||||
#:cl-indentify
|
||||
#:sqlite #:cl-dbi #:cl-pass #-(or mswindows win32 cormanlisp) #:cl-isaac)
|
||||
:components ((:module "static-files"
|
||||
:components ((:static-file "js/boot.js")))
|
||||
|
|
@ -96,6 +97,7 @@
|
|||
(:file "clog-builder-repl")
|
||||
(:file "clog-builder-shell")
|
||||
(:file "clog-builder-images")
|
||||
(:file "preferences-tabs")
|
||||
;; clog-builder panels (post-render)
|
||||
(:file "panel-clog-templates")
|
||||
(:file "panel-image-to-data")
|
||||
|
|
|
|||
|
|
@ -116,12 +116,13 @@
|
|||
(m-efrm (create-gui-menu-item m-lisp :content "evaluate form (cmd/alt-[)"))
|
||||
(m-esel (create-gui-menu-item m-lisp :content "evaluate selection"))
|
||||
(m-test (create-gui-menu-item m-lisp :content "evaluate all"))
|
||||
(m-brwsp (create-gui-menu-item m-lisp :content "systen browse at point"))
|
||||
(m-brws (create-gui-menu-item m-lisp :content "systen browse selection"))
|
||||
(m-brwsp (create-gui-menu-item m-lisp :content "system browse at point"))
|
||||
(m-brws (create-gui-menu-item m-lisp :content "system browse selection"))
|
||||
(m-desc (create-gui-menu-item m-lisp :content "describe selection"))
|
||||
(m-doc (create-gui-menu-item m-lisp :content "documentation on selection"))
|
||||
(m-apro (create-gui-menu-item m-lisp :content "apropos on selection"))
|
||||
(m-ppr (create-gui-menu-item m-lisp :content "pretty print"))
|
||||
(m-ppr (create-gui-menu-item m-lisp :content "adjust tabs file"))
|
||||
(m-pprs (create-gui-menu-item m-lisp :content "adjust tabs selection"))
|
||||
(m-help (create-gui-menu-drop-down menu :content "Help"))
|
||||
(m-helpk (create-gui-menu-item m-help :content "keyboard help"))
|
||||
(tool-bar (create-div (top-panel box) :class title-class))
|
||||
|
|
@ -434,14 +435,22 @@
|
|||
:fill-pointer 0 :adjustable t)))
|
||||
(with-output-to-string (s r)
|
||||
(with-input-from-string (n (text-value ace))
|
||||
(let ((*standard-output* s)
|
||||
(*print-case* :downcase))
|
||||
(loop
|
||||
(let ((l (read n nil)))
|
||||
(unless l (return))
|
||||
(pprint l))))))
|
||||
(let ((*standard-output* s))
|
||||
(indentify:indentify n))))
|
||||
(setf (text-value ace) r)
|
||||
(setf is-dirty t))))
|
||||
(set-on-click m-pprs (lambda (obj)
|
||||
(declare (ignore obj))
|
||||
(let ((r (make-array '(0) :element-type 'base-char
|
||||
:fill-pointer 0 :adjustable t)))
|
||||
(with-output-to-string (s r)
|
||||
(with-input-from-string (n (clog-ace:selected-text ace))
|
||||
(let ((*standard-output* s))
|
||||
(indentify:indentify n))))
|
||||
(js-execute ace (format nil "~A.insert('~A',true)"
|
||||
(clog-ace::js-ace ace)
|
||||
(escape-string r)))
|
||||
(setf is-dirty t))))
|
||||
(labels ((eval-form (obj)
|
||||
(let ((p (parse-integer
|
||||
(js-query obj
|
||||
|
|
|
|||
|
|
@ -52,6 +52,7 @@
|
|||
;; Panel Builder
|
||||
|
||||
(defparameter *builder-render-right-margin* 80)
|
||||
(defparameter *builder-render-case* :downcase)
|
||||
|
||||
;; Builder Look and Feel
|
||||
|
||||
|
|
|
|||
|
|
@ -308,6 +308,10 @@ clog-builder window.")
|
|||
(defun on-new-builder (body)
|
||||
"Launch instance of the CLOG Builder"
|
||||
(set-html-on-close body "Connection Lost")
|
||||
(indentify:load-templates +common-lisp-templates+
|
||||
+asdf-templates+
|
||||
+uiop-templates+
|
||||
+alexandria-templates+)
|
||||
(let ((app (make-instance 'builder-app-data))
|
||||
(*menu-bar-class* *builder-menu-bar-class*)
|
||||
(*menu-bar-drop-down-class* *builder-menu-bar-drop-down-class*)
|
||||
|
|
@ -353,16 +357,16 @@ clog-builder window.")
|
|||
(declare (ignore obj))
|
||||
(setf *open-external* (not *open-external*))
|
||||
(setf (text-value exter) (exter-text)))))
|
||||
(create-gui-menu-item file :content "New CLOG Panel Editor" :on-click
|
||||
(lambda (obj)
|
||||
(if *open-external*
|
||||
(on-new-builder-panel-ext obj)
|
||||
(on-new-builder-panel obj))))
|
||||
(create-gui-menu-item file :content "New Source Editor" :on-click
|
||||
(lambda (obj)
|
||||
(if *open-external*
|
||||
(on-open-file-ext obj)
|
||||
(on-open-file obj))))
|
||||
(create-gui-menu-item file :content "New CLOG Panel Editor" :on-click
|
||||
(lambda (obj)
|
||||
(if *open-external*
|
||||
(on-new-builder-panel-ext obj)
|
||||
(on-new-builder-panel obj))))
|
||||
(create-gui-menu-item file :content "New CLOG Panel Popup Editor" :on-click 'on-new-builder-page)
|
||||
(create-gui-menu-item file :content "New HTML Panel Popup Editor" :on-click 'on-new-builder-basic-page)
|
||||
(create-gui-menu-item file :content "New Custom Boot Panel External Editor" :on-click 'on-new-builder-custom-page))
|
||||
|
|
|
|||
256
tools/preferences-tabs.lisp
Normal file
256
tools/preferences-tabs.lisp
Normal file
|
|
@ -0,0 +1,256 @@
|
|||
(in-package :clog-tools)
|
||||
|
||||
; Primary count zero is the default so no need to include those.
|
||||
(defparameter +common-lisp-templates+
|
||||
'((assert :count 2 :sub (nil nil
|
||||
(:style :list)
|
||||
nil))
|
||||
(block :count 1)
|
||||
(case :count 1 :sub (nil nil (:count 0)))
|
||||
(catch :count 1)
|
||||
(ccase :count 1 :sub (nil nil (:count 0)))
|
||||
(cond :count 0 :sub (nil (:count 0)))
|
||||
(ctypecase :count 1 :sub (nil nil (:count 0)))
|
||||
(defclass :count 2 :sub (nil nil
|
||||
(:style :list)
|
||||
(:style :list :sub ((:count 0)))
|
||||
(:count 0)))
|
||||
(defconstant :count 1)
|
||||
(defgeneric :count 2 :sub (nil nil
|
||||
(:style :list)
|
||||
nil))
|
||||
(define-compiler-macro :count 2 :sub (nil nil
|
||||
(:style :list)
|
||||
nil))
|
||||
(define-condition :count 2 :sub (nil nil
|
||||
(:style :list)
|
||||
(:style :list :sub ((:count 0)))
|
||||
(:count 0)))
|
||||
(define-method-combination :count 1)
|
||||
(define-modify-macro :count 2 :sub (nil nil
|
||||
(:style :list)
|
||||
nil))
|
||||
(define-setf-expander :count 2 :sub (nil nil
|
||||
(:style :list)
|
||||
nil))
|
||||
(define-symbol-macro :count 1)
|
||||
(defmacro :count 2 :sub (nil nil
|
||||
(:style :list)
|
||||
nil))
|
||||
(defmethod :count 2 :ignore (:before :after :around) :sub ((:style :list)
|
||||
(:style :list)
|
||||
nil))
|
||||
(defpackage :count 1)
|
||||
(defparameter :count 1)
|
||||
(defsetf :count 2) ; primary is actually 2-3
|
||||
(defstruct :count 1 :sub (nil
|
||||
(:count 0)
|
||||
nil))
|
||||
(deftype :count 2 :sub (nil nil
|
||||
(:style :list)
|
||||
nil))
|
||||
(defun :count 2 :sub (nil nil
|
||||
(:style :list)
|
||||
nil))
|
||||
(defvar :count 1)
|
||||
(destructuring-bind :count 2 :sub (nil nil
|
||||
(:style :list)
|
||||
nil))
|
||||
(do-all-symbols :style :tag :count 1 :sub (nil
|
||||
(:count 0)
|
||||
nil))
|
||||
(do :style :tag :count 2 :sub (nil
|
||||
(:style :list :sub ((:count 0)))
|
||||
(:count 0)
|
||||
nil))
|
||||
(do* :style :tag :count 2 :sub (nil
|
||||
(:style :list :sub ((:count 0)))
|
||||
(:count 0)
|
||||
nil))
|
||||
(do-external-symbols :style :tag :count 1 :sub (nil
|
||||
(:count 0)
|
||||
nil))
|
||||
(dolist :style :tag :count 1 :sub (nil
|
||||
(:count 0)
|
||||
nil))
|
||||
(do-symbols :style :tag :count 1 :sub (nil
|
||||
(:count 0)
|
||||
nil))
|
||||
(dotimes :style :tag :count 1 :sub (nil
|
||||
(:count 0)
|
||||
nil))
|
||||
(ecase :count 1 :sub (nil nil
|
||||
(:count 0)))
|
||||
(etypecase :count 1 :sub (nil nil
|
||||
(:count 0)))
|
||||
(eval-when :count 1)
|
||||
(flet :count 1 :sub (nil
|
||||
(:style :list :sub ((:count 1)))
|
||||
nil))
|
||||
(handler-bind :count 1 :sub (nil
|
||||
(:style :list :sub ((:count 0)))
|
||||
nil))
|
||||
(handler-case :count 1 :sub (nil nil
|
||||
(:count 1 :style :tag)))
|
||||
(if :count 3 :sub (nil
|
||||
(:style :list :sub ((:count 0)))
|
||||
nil))
|
||||
(:import-from :count 1)
|
||||
(labels :count 1 :sub (nil
|
||||
(:style :list :sub ((:count 1)))
|
||||
nil))
|
||||
(lambda :count 1 :sub (nil
|
||||
(:style :list)
|
||||
nil))
|
||||
(let :count 1 :sub (nil
|
||||
(:style :list :sub ((:count 0)))
|
||||
nil))
|
||||
(let* :count 1 :sub (nil
|
||||
(:style :list :sub ((:count 0)))
|
||||
nil))
|
||||
(loop :count 0)
|
||||
(macrolet :count 1 :sub (nil
|
||||
(:style :list :sub ((:count 1)))
|
||||
nil))
|
||||
(multiple-value-bind :count 2 :sub (nil
|
||||
(:style :list)
|
||||
nil nil))
|
||||
(prog :style :tag :count 1 :sub (nil
|
||||
(:style :list :sub ((:count 0)))
|
||||
nil))
|
||||
(prog* :style :tag :count 1 :sub (nil
|
||||
(:style :list :sub ((:count 0)))
|
||||
nil))
|
||||
(progv :count 2)
|
||||
(prog1 :style :tag :count 2 :sub (nil
|
||||
(:style :list :sub ((:count 0)))
|
||||
(:count 0)
|
||||
nil))
|
||||
(quote :count 0 :sub (nil
|
||||
(:style :quote)))
|
||||
(:shadowing-import-from :count 1)
|
||||
(tagbody :style :tag :count 0)
|
||||
(typecase :count 1 :sub (nil nil
|
||||
(:count 0)))
|
||||
(unless :count 1)
|
||||
(unwind-protect :count 1)
|
||||
(when :count 1)
|
||||
(with-accessors :count 2 :sub (nil
|
||||
(:style :list)
|
||||
nil))
|
||||
(with-compilation-unit :count 1 :sub (nil
|
||||
(:style :list)
|
||||
nil))
|
||||
(with-condition-restarts :count 2)
|
||||
(with-hash-table-iterator :count 1 :sub (nil
|
||||
(:count 0)
|
||||
nil))
|
||||
(with-input-from-string :count 1 :sub (nil
|
||||
(:count 0)
|
||||
nil))
|
||||
(with-open-file :count 1 :sub (nil
|
||||
(:count 0)
|
||||
nil))
|
||||
(with-open-stream :count 1 :sub (nil
|
||||
(:count 0)
|
||||
nil))
|
||||
(with-output-to-string :count 1 :sub (nil
|
||||
(:count 0)
|
||||
nil))
|
||||
(with-package-iterator :count 1 :sub (nil
|
||||
(:count 0)
|
||||
nil))
|
||||
(with-simple-restart :count 1 :sub (nil
|
||||
(:count 0)
|
||||
nil))
|
||||
(with-slots :count 2 :sub (nil
|
||||
(:style :list)
|
||||
nil))))
|
||||
|
||||
(defparameter +asdf-templates+
|
||||
'(("defsystem" :count 1)))
|
||||
|
||||
(defparameter +uiop-templates+
|
||||
'(("while-collecting" :count 1 :sub (nil
|
||||
(:style :list)
|
||||
nil))
|
||||
("with-current-directory" :count 1 :sub (nil
|
||||
(:style :list)
|
||||
nil))
|
||||
("with-deprecation" :count 1 :sub (nil
|
||||
(:style :list)
|
||||
nil))
|
||||
("with-enough-pathname" :count 1 :sub (nil
|
||||
(:count 1)
|
||||
nil))
|
||||
("with-fatal-condition-handler" :count 1 :sub (nil
|
||||
(:style :list)
|
||||
nil))
|
||||
("with-input" :count 1 :sub (nil
|
||||
(:count 1)
|
||||
nil))
|
||||
("with-muffled-compiler-conditions" :count 1 :sub (nil
|
||||
(:style :list)
|
||||
nil))
|
||||
("with-muffled-conditions" :count 1 :sub (nil
|
||||
(:style :list)
|
||||
nil))
|
||||
("with-muffled-loader-conditions" :count 1 :sub (nil
|
||||
(:style :list)
|
||||
nil))
|
||||
("with-null-input" :count 1 :sub (nil
|
||||
(:count 1)
|
||||
nil))
|
||||
("with-null-output" :count 1 :sub (nil
|
||||
(:count 1)
|
||||
nil))
|
||||
("with-output" :count 1 :sub (nil
|
||||
(:count 1)
|
||||
nil))
|
||||
("with-safe-io-syntax" :count 1 :sub (nil
|
||||
(:style :list)
|
||||
nil))
|
||||
("with-saved-deferred-warnings" :count 1 :sub (nil
|
||||
(:count 1)
|
||||
nil))
|
||||
("with-staging-pathname" :count 1 :sub (nil
|
||||
(:count 1)
|
||||
nil))
|
||||
("with-temporary-file" :count 1 :sub (nil
|
||||
(:count 1)
|
||||
nil))
|
||||
("with-upgradability" :count 1 :sub (nil
|
||||
(:style :list)
|
||||
nil))))
|
||||
|
||||
(defparameter +alexandria-templates+
|
||||
'(("cswitch" :count 1 :sub (nil nil
|
||||
(:count 0)))
|
||||
("destructuring-case" :count 1 :sub (nil nil
|
||||
(:count 0)))
|
||||
("destructuring-ccase" :count 1 :sub (nil nil
|
||||
(:count 0)))
|
||||
("destructuring-ecase" :count 1 :sub (nil nil
|
||||
(:count 0)))
|
||||
("eswitch" :count 1 :sub (nil nil
|
||||
(:count 0)))
|
||||
("if-let" :count 1 :sub (nil
|
||||
(:style :list :sub ((:count 0)))
|
||||
nil))
|
||||
("named-lambda" :count 2 :sub (nil nil
|
||||
(:style :list) nil))
|
||||
("once-only" :count 1 :sub (nil
|
||||
(:style :list) nil))
|
||||
("switch" :count 1 :sub (nil nil
|
||||
(:count 0)))
|
||||
("when-let" :count 1 :sub (nil
|
||||
(:style :list :sub ((:count 0)))
|
||||
nil))
|
||||
("when-let*" :count 1 :sub (nil
|
||||
(:style :list :sub ((:count 0)))
|
||||
nil))
|
||||
("with-gensyms" :count 1 :sub (nil
|
||||
(:style :list)
|
||||
nil))
|
||||
("with-unique-names" :count 1 :sub (nil
|
||||
(:style :list)))))
|
||||
Loading…
Add table
Add a link
Reference in a new issue