~ubuntu-branches/debian/sid/emacs24/sid

« back to all changes in this revision

Viewing changes to lisp/url/url-misc.el

  • Committer: Package Import Robot
  • Author(s): Rob Browning
  • Date: 2014-10-25 14:37:43 UTC
  • mfrom: (13.1.3 experimental)
  • Revision ID: package-import@ubuntu.com-20141025143743-m9q5reoyyyjq3p2h
Tags: 24.4+1-4
Update emacsen-common dependency as per policy.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
;;; url-misc.el --- Misc Uniform Resource Locator retrieval code
2
2
 
3
 
;; Copyright (C) 1996-1999, 2002, 2004-2013 Free Software Foundation,
 
3
;; Copyright (C) 1996-1999, 2002, 2004-2014 Free Software Foundation,
4
4
;; Inc.
5
5
 
6
6
;; Keywords: comm, data, processes
45
45
    nil))
46
46
 
47
47
(defun url-do-terminal-emulator (type server port user)
48
 
  (terminal-emulator
49
 
   (generate-new-buffer (format "%s%s" (if user (concat user "@") "") server))
50
 
   (pcase type
51
 
     (`rlogin "rlogin")
52
 
     (`telnet "telnet")
53
 
     (`tn3270 "tn3270")
54
 
     (_
55
 
      (error "Unknown terminal emulator required: %s" type)))
56
 
   (pcase type
57
 
     (`rlogin
58
 
      (if user
59
 
          (list server "-l" user)
60
 
        (list server)))
61
 
     (`telnet
62
 
      (if user (message "Please log in as user: %s" user))
63
 
      (if port
64
 
          (list server port)
65
 
        (list server)))
66
 
     (`tn3270
67
 
      (if user (message "Please log in as user: %s" user))
68
 
      (list server)))))
 
48
  (switch-to-buffer
 
49
   (apply
 
50
    'make-term
 
51
    (format "%s%s" (if user (concat user "@") "") server)
 
52
    (cond ((eq type 'rlogin) "rlogin")
 
53
          ((eq type 'telnet) "telnet")
 
54
          ((eq type 'tn3270) "tn3270")
 
55
          (t (error "Unknown terminal emulator required: %s" type)))
 
56
    nil
 
57
    (cond ((eq type 'rlogin)
 
58
           (if user (list server "-l" user) (list server)))
 
59
          ((eq type 'telnet)
 
60
           (if port (list server port) (list server)))
 
61
          ((eq type 'tn3270)
 
62
           (list server))))))
69
63
 
70
64
;;;###autoload
71
65
(defun url-generic-emulator-loader (url)
95
89
    (save-excursion
96
90
      (if (not (string-match "\\([^,]*\\)?," desc))
97
91
          (error "Malformed data URL: %s" desc)
98
 
        (setq mediatype (match-string 1 desc))
 
92
        (setq mediatype (match-string 1 desc)
 
93
              data (url-unhex-string (substring desc (match-end 0))))
99
94
        (if (and mediatype (string-match ";base64\\'" mediatype))
100
95
            (setq mediatype (substring mediatype 0 (match-beginning 0))
101
96
                  encoding "base64"))
102
97
        (if (or (null mediatype)
103
98
                (eq ?\; (aref mediatype 0)))
104
 
          (setq mediatype (concat "text/plain" mediatype)))
105
 
        (setq data (url-unhex-string (substring desc (match-end 0)))))
 
99
          (setq mediatype (concat "text/plain" mediatype))))
106
100
      (set-buffer (generate-new-buffer " *url-data*"))
107
101
      (mm-disable-multibyte)
108
102
      (insert (format "Content-Length: %d\n" (length data))
109
103
              "Content-Type: " mediatype "\n"
110
 
              "Content-Encoding: " encoding "\n"
 
104
              "Content-Transfer-Encoding: " encoding "\n"
111
105
              "\n")
112
106
      (if data (insert data))
113
107
      (current-buffer))))