X-Git-Url: https://thelambdalab.xyz/gitweb/index.cgi?p=elpher.git;a=blobdiff_plain;f=elpher.el;h=fc7ed8f1ca966f6e0a29a5953a04042f8b06be7b;hp=75cc82b250fcbed63c41ce24ad34a682640e7419;hb=0916ee629368e59197a8c4c9869e31be397b17f6;hpb=8c00d670414085213c15af346c55efe6aec1d785 diff --git a/elpher.el b/elpher.el index 75cc82b..fc7ed8f 100644 --- a/elpher.el +++ b/elpher.el @@ -332,7 +332,6 @@ is not explicitly given." (unwind-protect (let ((url (url-generic-parse-url url-string))) (unless (and (not (url-fullness url)) (url-type url)) - (setf (url-fullness url) t) (unless (url-type url) (setf (url-type url) default-scheme)) (unless (url-host url) @@ -342,7 +341,8 @@ is not explicitly given." (if (cdr p) (concat "/" (mapconcat #'identity (cdr p) "/")) "")))) - (when (url-host url) + (when (not (string-empty-p (url-host url))) + (setf (url-fullness url) t) (setf (url-host url) (puny-encode-domain (url-host url)))) (when (or (equal "gopher" (url-type url)) (equal "gophers" (url-type url))) @@ -1492,11 +1492,11 @@ treatment that a separate function is warranted." (let ((address (url-generic-parse-url url)) (current-address (elpher-page-address elpher-current-page))) (unless (and (url-type address) (not (url-fullness address))) ;avoid mangling mailto: urls - (setf (url-fullness address) t) (if (url-host address) ;if there is an explicit host, filenames are absolute (if (string-empty-p (url-filename address)) (setf (url-filename address) "/")) ;ensure empty filename is marked as absolute (setf (url-host address) (url-host current-address)) + (setf (url-fullness address) (url-host address)) ; set fullness to t if host is set (setf (url-portspec address) (url-portspec current-address)) ; (url-port) too slow! (unless (string-prefix-p "/" (url-filename address)) ;deal with relative links (setf (url-filename address) @@ -1519,8 +1519,8 @@ treatment that a separate function is warranted." (address (elpher-address-from-gemini-url url)) (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)) + (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 @@ -2170,7 +2170,7 @@ When run interactively HOST-OR-URL is read from the minibuffer." (url (read-string (format "Visit URL (default scheme %s): " (elpher-get-default-url-scheme)) (elpher-address-to-url address)))) (unless (string-empty-p (string-trim url)) - (elpher-visit-page (elpher-page-from-url url) (elpher-get-default-url-scheme))))) + (elpher-visit-page (elpher-page-from-url url))))) (defun elpher-redraw () "Redraw current page."