anchor.diff:      (alex:write-string-into-file (nfiles:url-content script) destination :if-exists :supersede)))
   
   (defmethod parse-user-script ((script user-script))
  -  (let ((code (files:content script)))
  +  (let ((code (code script)))
       (or
        (sera:and-let* ((start-position (search "// ==UserScript==" code))
                        (end-position (search "// ==/UserScript==" code))
  
positive.code:   (:metaclass interface-class))
  
  (define-class user-script (renderer-user-script nfiles:data-file nyxt-remote-file)
    ((code
      :unbound
      :type (maybe string))
     (version "")
     (description "")
     (namespace "")
     (world-name
      :unbound
      :type (maybe string)
      :documentation "The JavaScript world to run the `code' in.")
     (requires
      nil
      :type (maybe hash-table))
     (include
      :unbound
      :type list-of-strings)
     (exclude
      :unbound
      :type list-of-strings)
     (all-frames-p
      :unbound
      :type boolean
      :documentation "Whether to run on both top-level frame and all the subframes.
  If false, runs on the toplevel frame only.")
     (run-at
      :unbound
      :type (member :document-start :document-end :document-idle)
      :documentation "When to run the script.
  Possible values:
  
negative.code:                               ("document-idle" :document-idle)
                                (otherwise :document-end)))
             code-with-requires)))
       (setf (code script) code))))
  
  (defmethod customize-instance :after ((script user-script) &key)
    (parse-user-script script))
  
  (defmethod nfiles:deserialize ((profile nyxt-profile) (script user-script) raw-content &key)
    "If the script is not in the UserScript format, the raw content is used as is
  and only the `code' slot is set."
    (declare (ignorable profile))
    (progn
      (setf (code script) (alex:read-stream-content-into-string raw-content))
      (parse-user-script script)))
  