X-Git-Url: https://thelambdalab.xyz/gitweb/index.cgi?p=elpher.git;a=blobdiff_plain;f=elpher.el;h=a869b6a88057968f5f2c07a9ffc5b3bb31043408;hp=580184ed8727031475efe5c67abc4b6594f18e0c;hb=09f4d52c0f3ff9cdd4fbddbdc513c42f6650918a;hpb=dc2d321c502ae2598d0d3c05ad92b3d937f9ea44 diff --git a/elpher.el b/elpher.el index 580184e..a869b6a 100644 --- a/elpher.el +++ b/elpher.el @@ -1,27 +1,11 @@ ;;; elpher.el --- A friendly gopher and gemini client -*- lexical-binding: t -*- -;; Copyright (C) 2021 Jens Östlund -;; Copyright (C) 2021 F. Jason Park -;; Copyright (C) 2021 Christopher Brannon -;; Copyright (C) 2021 Omar Polo -;; Copyright (C) 2021 Noodles! -;; Copyright (C) 2021 Abhiseck Paira -;; Copyright (C) 2021-2022 Daniel Semyonov -;; Copyright (C) 2020-2021 Alex Schroeder -;; Copyright (C) 2020 Zhiwei Chen -;; Copyright (C) 2020 condy0919 -;; Copyright (C) 2020 Alexis -;; Copyright (C) 2020 Étienne Deparis -;; Copyright (C) 2020 Simon Nicolussi -;; Copyright (C) 2020 Michel Alexandre Salim -;; Copyright (C) 2020 Koushk Roy -;; Copyright (C) 2020 Vee -;; Copyright (C) 2020 Simon South ;; Copyright (C) 2019-2022 Tim Vaughan +;; Copyright (C) 2020-2022 Elpher contributors (See info manual for full list) ;; Author: Tim Vaughan ;; Created: 11 April 2019 -;; Version: 3.2.2 +;; Version: 3.3.1 ;; Keywords: comm gopher ;; Homepage: https://thelambdalab.xyz/elpher ;; Package-Requires: ((emacs "27.1")) @@ -86,7 +70,7 @@ ;;; Global constants ;; -(defconst elpher-version "3.2.2" +(defconst elpher-version "3.3.1" "Current version of elpher.") (defconst elpher-margin-width 6 @@ -165,8 +149,8 @@ plain text without user input." (defcustom elpher-filter-ansi-from-text nil "If non-nil, filter ANSI escape sequences from text. -The default behaviour is to use the ansi-color package to interpret these -sequences." +The default behaviour is to use the ansi-color package (or xterm-color if it is +available) to interpret these sequences." :type '(boolean)) (defcustom elpher-certificate-directory @@ -1522,21 +1506,20 @@ treatment that a separate function is warranted." (type (if address (elpher-address-type address) nil)) (type-map-entry (cdr (assoc type elpher-type-map))) (fill-prefix (make-string (+ 1 (length elpher-gemini-link-string)) ?\s))) - (insert elpher-gemini-link-string) - (if type-map-entry - (let* ((face (elt type-map-entry 3)) - (display-string (or given-display-string - (elpher-address-to-iri address))) - (page (elpher-make-page display-string - address))) - (insert-text-button display-string - 'face face - 'elpher-page page - 'action #'elpher-click-link - 'follow-link t - 'help-echo #'elpher--page-button-help)) - (insert (propertize display-string 'face 'elpher-unknown))) - (newline))))) + (when type-map-entry + (insert elpher-gemini-link-string) + (let* ((face (elt type-map-entry 3)) + (display-string (or given-display-string + (elpher-address-to-iri address))) + (page (elpher-make-page display-string + address))) + (insert-text-button display-string + 'face face + 'elpher-page page + 'action #'elpher-click-link + 'follow-link t + 'help-echo #'elpher--page-button-help)) + (newline)))))) (defun elpher-gemini-insert-header (header-line) "Insert header described by HEADER-LINE into a text/gemini document. @@ -1621,6 +1604,7 @@ width defined by `elpher-gemini-max-fill-width'." (buffer-string)))) (defun elpher-build-current-imenu-index () + "Build imenu index for current elpher buffer." (save-excursion (goto-char (point-min)) (let ((match nil)