reddit / emacs

[ANN] fancy-compilation (available on MELPA)

ideasman_42 · 2022-07-17 22:59
ispinfx · 2022-07-18 01:30
What's the font in the screenshot?
ideasman_42 · 2022-07-18 01:33
The font is [agave](https://github.com/blobject/agave), the theme is [inkpot](https://melpa.org/#/inkpot-theme).
ispinfx · 2022-07-18 01:49
Thanks!
FluentFelicity · 2022-07-18 05:05
Hmm, for some reason I get this error when using `M-x compile`: ``` comp--native-compile: Native elisp load failed: "file does not exists", "/home/krisbalintona/.emacs.d/eln-cache/29.0.50-86311442/subr--trampoline-7075742d746578742d70726f7065727479_put_text_property_0.eln" ``` Something with the eln-cache? Happens with `emacs -Q` as well. If it helps, `emacs-version` returns ``` GNU Emacs 29.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.34, cairo version 1.17.6) of 2022-06-29 ```
ideasman_42 · 2022-07-18 09:12
I had this error once, then the error went away, not sure whats going on.
github-alphapapa · 2022-07-18 14:48
This looks very cool. Have you considered upstreaming some of the features? e.g. I use this code that I got from Artur Malabarba's blog to support terminal color codes in the output, and it would be nice if Emacs did this by default: (use-package compile :config (progn ;; Apply ANSI terminal color escape codes. <http://endlessparentheses.com/ansi-colors-in-the-compilation-buffer-output.html> (require 'ansi-color) (defun endless/colorize-compilation () "Colorize from `compilation-filter-start' to `point'." (let ((inhibit-read-only t)) (ansi-color-apply-on-region compilation-filter-start (point)))) (add-hook 'compilation-filter-hook #'endless/colorize-compilation)) (setf compilation-save-buffers-predicate ;; NOTE: For some reason setting this in :custom doesn't seem to work. ;; HACK: The docstring says that `compilation-directory' can't "generally" be used, ;; apparently because it's only set *after* `compile' calls `save-some-buffers'. If that ;; line of code wre moved up one line, it would solve the problem (probably without causing ;; any others). Anyway, using `default-directory' when `compilation-directory' isn't set ;; should work. (lambda () (when (buffer-file-name) (string-prefix-p (or compilation-directory default-directory) (file-truename (buffer-file-name)))))))
chrinto · 2022-07-18 14:59
Consider a request to do a merge to compilation-mode, this is great features
ideasman_42 · 2022-07-19 00:00
I've fixed the error, technically it's a bug in native-compilation AFAICS, but working around the problem wasn't such an issue.
FluentFelicity · 2022-07-19 00:04
Great! Seems to work for me now. Glad you were able to find a workaround :)
ideasman_42 · 2022-07-19 00:05
@github-alphapapa regarding up-streaming, yes - although at the moment I don't have the energy to argue for some of the more opinionated decisions made by this package. At the very least making them options for built-in compilation could work. There is some wrinkles that would need to be solved before pushing this up-stream too, the main one is to properly support `compilation-max-output-line-length`, which I'm not sure how to support with ANSI escape sequences that re-write text onto the same line (causing `[...]` to show on lines that are not long "visually" at least). My package just sets this to nil since I don't think it's a core feature of compilation, but for up-streaming I think it would need to be resolved.
ideasman_42 · 2022-07-19 00:06
Not against it, see reply to @github-alphapapa.