X-Git-Url: https://thelambdalab.xyz/gitweb/index.cgi?p=elpher.git;a=blobdiff_plain;f=elpher.el;h=694d8af99d067279480bfaba28d9cc56c1e2e7cf;hp=eb888b6535f880abb7a433173a34b8ad32bc0a7c;hb=0d68c92d0ad990230c9c018c1f6d43ef63d052c3;hpb=68388182b99d7e12ec649826cf0a8d167be57a88 diff --git a/elpher.el b/elpher.el index eb888b6..694d8af 100644 --- a/elpher.el +++ b/elpher.el @@ -5,7 +5,7 @@ ;; Author: Tim Vaughan ;; Created: 11 April 2019 -;; Version: 3.3.1 +;; Version: 3.3.2 ;; Keywords: comm gopher ;; Homepage: https://thelambdalab.xyz/elpher ;; Package-Requires: ((emacs "27.1")) @@ -70,7 +70,7 @@ ;;; Global constants ;; -(defconst elpher-version "3.3.1" +(defconst elpher-version "3.3.2" "Current version of elpher.") (defconst elpher-margin-width 6 @@ -112,6 +112,8 @@ (declare-function org-link-store-props "ol") (declare-function org-link-set-parameters "ol") (defvar ansi-color-context) + (defvar xterm-color--current-fg) + (defvar xterm-color--current-bg) (defvar bookmark-make-record-function) (defvar mu4e~view-beginning-of-url-regexp) (defvar eww-use-browse-url) @@ -423,7 +425,17 @@ For gopher addresses this is a combination of the selector type and selector." (defun elpher-address-host (address) "Retrieve host from ADDRESS object." - (url-host address)) + (let ((host-pre (url-host address))) + ;; The following strips out square brackets which sometimes enclose IPv6 + ;; addresses. Doing this here rather than at the parsing stage may seem + ;; weird, but this lets us way we avoid having to muck with both URL parsing + ;; and reconstruction. It's also more efficient, as this method is not + ;; called during page rendering. + (if (and (> (length host-pre) 2) + (eq (elt host-pre 0) ?\[) + (eq (elt host-pre (- (length host-pre) 1)) ?\])) + (substring host-pre 1 (- (length host-pre) 1)) + host-pre))) (defun elpher-address-user (address) "Retrieve user from ADDRESS object." @@ -1572,7 +1584,7 @@ width defined by `elpher-gemini-max-fill-width'." text-line)) (fill-prefix (if line-prefix (make-string (length (match-string 0 text-line)) ?\s) - nil))) + ""))) (insert (elpher-process-text-for-display processed-text-line)) (newline)))