Also create an automatic text/plain alias when reading from clipboard

This commit is contained in:
Kovid Goyal
2023-01-22 22:04:53 +05:30
parent 6b2d37366f
commit 1f00c27097
2 changed files with 11 additions and 1 deletions

View File

@@ -35,7 +35,9 @@ When copying to clipboard both the original and alias are made available on the
clipboard. When copying from clipboard if the original is not found, the alias clipboard. When copying from clipboard if the original is not found, the alias
is used, as a fallback. Can be specified multiple times to create multiple is used, as a fallback. Can be specified multiple times to create multiple
aliases. For example: :code:`--alias text/plain=text/x-rst` makes :code:`text/plain` an alias aliases. For example: :code:`--alias text/plain=text/x-rst` makes :code:`text/plain` an alias
of :code:`text/rst`. Aliases are not used in filter mode. of :code:`text/rst`. Aliases are not used in filter mode. An alias for
:code:`text/plain` is automatically created if :code:`text/plain` is not present in the input data, but some
other :code:`text/*` MIME is present.
--wait-for-completion --wait-for-completion

View File

@@ -171,6 +171,14 @@ func (self *Output) assign_mime_type(available_mimes []string, aliases map[strin
} }
} }
} }
if strings.HasPrefix(self.mime_type, "text/") {
for _, mt := range available_mimes {
if mt == "text/plain" {
self.remote_mime_type = mt
return
}
}
}
return fmt.Errorf("The MIME type %s for %s not available on the clipboard", self.mime_type, self.arg) return fmt.Errorf("The MIME type %s for %s not available on the clipboard", self.mime_type, self.arg)
} }