lassik / emacs-cowsay

Port of cowsay to pure Emacs Lisp
https://melpa.org/#/cowsay
MIT License
13 stars 4 forks source link

MELPA #5

Closed OrionRandD closed 3 years ago

OrionRandD commented 3 years ago

Is this in MELPA already?

chuwy commented 3 years ago

It seems it is https://melpa.org/#/cowsay. I managed to install it in Doom yesterday.

OrionRandD commented 3 years ago

It seems it is https://melpa.org/#/cowsay. I managed to install in Doom yesterday. Could you share your config? I also use doom.

chuwy commented 3 years ago

Sure.

In packages.el I have:

;; Animals saying things
(package! cowsay)

Then in config.el:

(require 'cowsay)

;; I have to clone cows files locally
(setq cowsay-directories '("/path/to/cows"))

;; Below is to replace doom splash screen with cows saying random things at start, stolen from vim-startify
(defvar cowsay-fortune-phrases (list "For a successful technology, reality must take precedence over public relations, for Nature cannot be fooled. -- Richard Feynman"
                                     "If programmers were electricians, parallel programmers would be bomb disposal experts. Both cut wires. -- Bartosz Milewski"
                                     "Configure, don't integrate. Implement technology choices for an application as configuration options, not through integration or engineering."))

(defun cowsay-dashboard-ascii ()
  (progn (cowsay-load-cows)
         (cowsay-string (seq-random-elt cowsay-fortune-phrases))))

(defun cowsay-dashboard ()
  (let* ((banner (split-string (cowsay-dashboard-ascii) "\n"))
         (longest-line (apply #'max (mapcar #'length banner))))
    (put-text-property
     (point)
     (dolist (line banner (point))
       (insert (+doom-dashboard--center
                +doom-dashboard--width
                (concat line (make-string (max 0 (- longest-line (length line)))
                                   32)))
               "\n"))
     'face 'doom-dashboard-banner)))

(setq +doom-dashboard-ascii-banner-fn #'cowsay-dashboard)

I also had to run doom sync

OrionRandD commented 3 years ago

It seems it is https://melpa.org/#/cowsay. I managed to install it in Doom yesterday.

Great. I managed to install it and had only to change the default cow dir. I use debian here. Should be great to adapt it to call xcowsay as well...

;; cowsay ;; https://github.com/lassik/emacs-cowsay/

(use-package! cowsay)

(setq cowsay-directories '("/usr/share/cowsay/cows"))

lassik commented 3 years ago

Yes, https://melpa.org/#/cowsay is the one. Added /usr/share/cowsay/cows to the default path.

lassik commented 3 years ago

Closing since it seem you were able to solve your problem. Feel free to open new issues if needed.