summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--emacs.d/custom/fcuny-defuns.el25
1 files changed, 25 insertions, 0 deletions
diff --git a/emacs.d/custom/fcuny-defuns.el b/emacs.d/custom/fcuny-defuns.el
index 47d0a00..40bd4ce 100644
--- a/emacs.d/custom/fcuny-defuns.el
+++ b/emacs.d/custom/fcuny-defuns.el
@@ -49,4 +49,29 @@
(message "Built check.pex successfully")
(message (buffer-file-name output))))))
+;; from https://karl-voit.at/2014/08/10/bookmarks-with-orgmode/
+(defun fcuny/string-replace (this withthat in)
+ "replace THIS with WITHTHAT' in the string IN"
+ (with-temp-buffer
+ (insert in)
+ (goto-char (point-min))
+ (replace-string this withthat)
+ (buffer-substring (point-min) (point-max))))
+
+(defun fcuny/get-page-title (url)
+ "Make URL into an org-mode link."
+ (let ((title))
+ (with-current-buffer (url-retrieve-synchronously url)
+ (goto-char (point-min))
+ (re-search-forward "<title>\\([^<]*\\)</title>" nil t 1)
+ (setq title (match-string 1))
+ (goto-char (point-min))
+ (re-search-forward "charset=\\([-0-9a-zA-Z]*\\)" nil t 1)
+ (fcuny/string-replace "&nbsp;" " "
+ ;;(decode-coding-string title (intern (match-string 1)))
+ ;; following line fixes charset issues from
+ ;; previous line:
+ (decode-coding-string title 'utf-8))
+ (concat "[[" url "][" title "]]"))))
+
(provide 'fcuny-defuns)