Commit 2ed69e31 authored by Eric Timmons's avatar Eric Timmons
Browse files

cli less work: output-translations

parent a67ba65d
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -15,6 +15,7 @@
          #:clpm-cli/commands/hack
          #:clpm-cli/commands/install
          #:clpm-cli/commands/license-info
          #:clpm-cli/commands/output-translations
          #:clpm-cli/commands/sync
          #:clpm-cli/commands/update
          #:clpm-cli/commands/version))
+32 −0
Original line number Diff line number Diff line
;;;; clpm output-translations
;;;;
;;;; This software is part of CLPM. See README.org for more information. See
;;;; LICENSE for license information.

(uiop:define-package #:clpm-cli/commands/output-translations
    (:use #:cl
          #:alexandria
          #:clpm-cli/common-args
          #:clpm-cli/interface-defs)
  (:import-from #:adopt)
  (:import-from #:clpm))

(in-package #:clpm-cli/commands/output-translations)

(defparameter *output-translations-ui*
  (adopt:make-interface
   :name "clpm output-translations"
   :summary "Common Lisp Package Manager Output-Translations"
   :usage "output-translations [options]"
   :help "Print an ASDF output-translations form using the projects installed in a context"
   :contents (list *group-common*
                   *option-context*)))

(define-cli-command (("output-translations") *output-translations-ui*) (args options)
  (declare (ignore options args))
  (when-let ((output-translations (clpm:output-translations)))
    (with-standard-io-syntax
      (let ((*print-case* :downcase))
        (prin1 output-translations))
      (terpri)))
  t)
+2 −1
Original line number Diff line number Diff line
@@ -22,7 +22,8 @@
  ;; From config
  (:export #:config-value)
  ;; From context-queries
  (:export #:find-system-asd-pathname)
  (:export #:find-system-asd-pathname
           #:output-translations)
  ;; From exec
  (:export #:exec)
  ;; From install
+6 −1
Original line number Diff line number Diff line
@@ -7,10 +7,15 @@
    (:use #:cl
          #:clpm/context
          #:clpm/session)
  (:export #:find-system-asd-pathname))
  (:export #:find-system-asd-pathname
           #:output-translations))

(in-package #:clpm/context-queries)

(defun find-system-asd-pathname (system-name &key context)
  (with-clpm-session ()
    (context-find-system-asd-pathname (get-context context) system-name)))

(defun output-translations (&key context)
  (with-clpm-session ()
    (context-output-translations (get-context context))))