202 |
(defun url-insert-file-contents (url &optional visit beg end replace) |
(defun url-insert-file-contents (url &optional visit beg end replace) |
203 |
(let ((buffer (url-retrieve-synchronously url)) |
(let ((buffer (url-retrieve-synchronously url)) |
204 |
(handle nil) |
(handle nil) |
205 |
|
(charset nil) |
206 |
(data nil)) |
(data nil)) |
207 |
(if (not buffer) |
(if (not buffer) |
208 |
(error "Opening input file: No such file or directory, %s" url)) |
(error "Opening input file: No such file or directory, %s" url)) |
216 |
(mm-destroy-parts handle) |
(mm-destroy-parts handle) |
217 |
(if replace (delete-region (point-min) (point-max))) |
(if replace (delete-region (point-min) (point-max))) |
218 |
(save-excursion |
(save-excursion |
219 |
|
(setq charset (mail-content-type-get (mm-handle-type handle) |
220 |
|
'charset)) |
221 |
(let ((start (point))) |
(let ((start (point))) |
222 |
(insert data) |
(if charset |
223 |
;; FIXME: for text/plain data, we sometimes receive a `charset' |
(insert (mm-decode-string data (mm-charset-to-coding-system charset))) |
224 |
;; annotation which we could use as a hint of the locale in use |
(progn |
225 |
;; at the remote site. Not sure how/if that should be done. --Stef |
(insert data) |
226 |
(decode-coding-inserted-region |
(decode-coding-inserted-region start (point) url visit beg end replace))))) |
|
start (point) url visit beg end replace))) |
|
227 |
(list url (length data)))) |
(list url (length data)))) |
228 |
|
|
229 |
(defun url-file-name-completion (url directory) |
(defun url-file-name-completion (url directory) |