[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/osm 28d3305bef 32/77: Improve handling of generated nam
From: |
ELPA Syncer |
Subject: |
[elpa] externals/osm 28d3305bef 32/77: Improve handling of generated names |
Date: |
Mon, 7 Mar 2022 08:58:06 -0500 (EST) |
branch: externals/osm
commit 28d3305bef8ed078fe79ae389401a09a11eeaef3
Author: Daniel Mendler <mail@daniel-mendler.de>
Commit: Daniel Mendler <mail@daniel-mendler.de>
Improve handling of generated names
---
osm.el | 38 ++++++++++++++++++++------------------
1 file changed, 20 insertions(+), 18 deletions(-)
diff --git a/osm.el b/osm.el
index 58ce3fbfc8..8563258a2e 100644
--- a/osm.el
+++ b/osm.el
@@ -550,19 +550,30 @@ We need two distinct images which are not `eq' for the
display properties.")
(defun osm--make-bookmark ()
"Make OSM bookmark."
(setq bookmark-current-bookmark nil) ;; Reset bookmark to use new name
- `(,(osm--buffer-description)
+ `(,(osm--buffer-name-with-coordinates)
(coordinate ,(osm--lat) ,(osm--lon) ,osm--zoom)
(server . ,osm-server)
(handler . ,#'osm-bookmark-jump)))
+(defun osm--buffer-name-with-coordinates ()
+ "Return buffer description."
+ (if (osm--generated-name-p)
+ (format "osm: %.2f° %.2f° %s"
+ (osm--lat) (osm--lon)
+ (osm--server-property :name))
+ (replace-regexp-in-string
+ "\\`\\*\\|\\*\\(?:<[0-9]+>\\)?\\'"
+ "" (buffer-name))))
+
(defun osm--default-buffer-name ()
"Return default buffer name."
(format "*osm: %s*" (osm--server-property :name)))
-(defun osm--default-buffer-name-p ()
- "Return non-nil if the buffer has a default name."
+(defun osm--generated-name-p ()
+ "Return non-nil if the buffer has a generated name."
(string-match-p
- (format "\\`%s\\(?:<[0-9]+>\\)?\\'" (regexp-quote
(osm--default-buffer-name)))
+ (format "\\`\\*osm:\\(?: [0-9.-]+° [0-9.-]+°\\)? %s\\*\\(?:<[0-9]+>\\)?\\'"
+ (regexp-quote (osm--server-property :name)))
(buffer-name)))
(cl-defun osm--setup (&key at server name)
@@ -576,7 +587,7 @@ We need two distinct images which are not `eq' for the
display properties.")
(or name
(let ((osm-server (or server osm-server)))
(osm--default-buffer-name)))))
- (let ((auto-rename (or name (osm--default-buffer-name-p))))
+ (let ((auto-rename (or name (osm--generated-name-p))))
(unless (derived-mode-p #'osm-mode)
(osm-mode))
(when (and server (not (eq osm-server server)))
@@ -601,7 +612,7 @@ We need two distinct images which are not `eq' for the
display properties.")
(split-string (read-string "Lat Lon (Zoom): ") nil
t))))
(setq zoom (or zoom 11))
(unless (and (numberp lat) (numberp lon) (numberp zoom))
- (error "Invalid coordindate"))
+ (error "Invalid coordinate"))
(list lat lon zoom)))
(osm--setup :at (list lat lon zoom)))
@@ -621,16 +632,7 @@ We need two distinct images which are not `eq' for the
display properties.")
"Return link data."
(list (osm--lat) (osm--lon) osm--zoom
(and (not (eq osm-server (default-value 'osm-server))) osm-server)
- (osm--buffer-description)))
-
-(defun osm--buffer-description ()
- "Return buffer description."
- (if (osm--default-buffer-name-p)
- (format "osm: %s %.2f° %.2f°"
- (osm--server-property :name) (osm--lat) (osm--lon))
- (replace-regexp-in-string
- "\\`\\*\\|\\*\\(?:<[0-9]+>\\)?\\'"
- "" (buffer-name))))
+ (osm--buffer-name-with-coordinates)))
(defun osm--description ()
"Return descriptive string for current map."
@@ -653,8 +655,8 @@ We need two distinct images which are not `eq' for the
display properties.")
(interactive)
(when-let (desc (osm--description))
(rename-buffer
- (format "*osm: %s %.2f° %.2f° %s*" desc
- (osm--lat) (osm--lon)
+ (format "*osm: %s %.2f° %.2f° %s*"
+ desc (osm--lat) (osm--lon)
(osm--server-property :name))
'unique)))
- [elpa] externals/osm 8e8e4583f5 74/77: More robust mouse dragging, (continued)
- [elpa] externals/osm 8e8e4583f5 74/77: More robust mouse dragging, ELPA Syncer, 2022/03/07
- [elpa] externals/osm d776cdb343 42/77: Fix melpa issues (See https://github.com/melpa/melpa/pull/7936), ELPA Syncer, 2022/03/07
- [elpa] externals/osm 5b82b32201 28/77: Add server descriptions, ELPA Syncer, 2022/03/07
- [elpa] externals/osm 832bce78f8 72/77: Implement proper map dragging with the mouse, ELPA Syncer, 2022/03/07
- [elpa] externals/osm df844cd56b 30/77: Add osm-rename command, ELPA Syncer, 2022/03/07
- [elpa] externals/osm 458257fa1f 19/77: Improve tile loading, ELPA Syncer, 2022/03/07
- [elpa] externals/osm 699aae27b1 20/77: Rename osm-new to osm-home, ELPA Syncer, 2022/03/07
- [elpa] externals/osm d830691585 61/77: README: Remove wishlist, ELPA Syncer, 2022/03/07
- [elpa] externals/osm 25621bb80e 41/77: curl add --fail argument, ELPA Syncer, 2022/03/07
- [elpa] externals/osm b300e42d9f 68/77: Add transient pin, ELPA Syncer, 2022/03/07
- [elpa] externals/osm 28d3305bef 32/77: Improve handling of generated names,
ELPA Syncer <=
- [elpa] externals/osm 833793ed6c 77/77: Use grid placeholder, ELPA Syncer, 2022/03/07
- [elpa] externals/osm adc8156a70 37/77: README: Add more examples, ELPA Syncer, 2022/03/07
- [elpa] externals/osm 7ac6f60b90 39/77: README update, ELPA Syncer, 2022/03/07
- [elpa] externals/osm ff5c089087 52/77: Update completion predicates, ELPA Syncer, 2022/03/07
- [elpa] externals/osm d5c5dc6ffd 75/77: Mouse dragging: Check window, ELPA Syncer, 2022/03/07
- [elpa] externals/osm 162f883f80 35/77: Reuse existing buffer, ELPA Syncer, 2022/03/07
- [elpa] externals/osm 9053d8a930 16/77: Indentation, ELPA Syncer, 2022/03/07
- [elpa] externals/osm f2fba2ebdf 43/77: Auto rename the buffers, ELPA Syncer, 2022/03/07
- [elpa] externals/osm b991de6e89 54/77: Rename server, ELPA Syncer, 2022/03/07
- [elpa] externals/osm 03d4ceb553 57/77: Add tile memory cache, ELPA Syncer, 2022/03/07