mirror of
https://github.com/wez/wezterm.git
synced 2024-11-28 01:06:37 +03:00
4ef20480c5
This was honestly a PITA because of its complexity. The `clipboard` crate (now dropped as a dep) didn't support wayland, so I looked at the `smithay-clipboard` crate, which caused all of my input to become laggy just by enabling it--even without actually copying or pasting! Both of those crates try to hide a number of details of working with the clipboard from the embedding application, but that works against our window crate implementation, so I decided to integrate it into the window crate using Futures so that the underlying IPC timing and potential for the peer to flake out are not completely hidden. This first commit removes the SystemClipboard type from wezterm and instead bridges the window crate clipboard to the term crate Clipboard concept. The clipboard must be associated with a window in order to function at all on Wayland, to we place the get/set operations in WindowOps. This commit effectively breaks the keyboard on the other window environments; will fix those up in follow on commits.
95 lines
2.1 KiB
TOML
95 lines
2.1 KiB
TOML
[package]
|
|
authors = ["Wez Furlong <wez@wezfurlong.org>"]
|
|
name = "wezterm"
|
|
version = "0.1.0"
|
|
edition = "2018"
|
|
build = "build.rs"
|
|
|
|
[build-dependencies]
|
|
vergen = "3"
|
|
|
|
[target.'cfg(windows)'.build-dependencies]
|
|
embed-resource = "1.3"
|
|
|
|
[dependencies]
|
|
base64 = "0.10"
|
|
base91 = { path = "base91" }
|
|
bitflags = "1.0"
|
|
crossbeam-channel = "0.3"
|
|
dirs = "1.0"
|
|
downcast-rs = "1.0"
|
|
euclid = "0.20"
|
|
filedescriptor = "0.5"
|
|
pretty_env_logger = "0.3"
|
|
failure = "0.1"
|
|
failure_derive = "0.1"
|
|
freetype = { path = "deps/freetype" }
|
|
image = "0.21"
|
|
harfbuzz = { path = "deps/harfbuzz" }
|
|
lazy_static = "1.3"
|
|
leb128 = "0.2"
|
|
libc = "0.2"
|
|
log = "0.4"
|
|
open = "1.2"
|
|
native-tls = "0.2"
|
|
notify = "4.0"
|
|
palette = "0.4"
|
|
portable-pty = { path = "pty", features = ["serde_support", "ssh"]}
|
|
promise = { path = "promise" }
|
|
ratelimit_meter = "5.0"
|
|
rayon = "1.0"
|
|
serde = {version="1.0", features = ["rc"]}
|
|
serde_derive = "1.0"
|
|
serial = "0.4"
|
|
ssh2 = "0.5"
|
|
structopt = "0.2"
|
|
tabout = { path = "tabout" }
|
|
term = { path = "term" }
|
|
termwiz = { path = "termwiz"}
|
|
toml = "0.4"
|
|
unicode-normalization = "0.1"
|
|
unicode-segmentation = "1.5"
|
|
unicode-width = "0.1"
|
|
varbincode = "0.1"
|
|
window = { path = "window", features=["opengl", "wayland"]}
|
|
zstd = "0.4"
|
|
|
|
[target.'cfg(unix)'.dependencies]
|
|
daemonize = "0.4"
|
|
|
|
# on linux, font-loader pulls in servo-font* crates which conflict with
|
|
# our newer font related deps, so we avoid it on linux
|
|
[target.'cfg(any(windows, target_os = "macos"))'.dependencies]
|
|
font-loader = { version = "0.8" }
|
|
|
|
[target."cfg(windows)".dependencies]
|
|
shared_library = "0.1"
|
|
uds_windows = "0.1"
|
|
winapi = { version = "0.3", features = [
|
|
"winuser",
|
|
"consoleapi",
|
|
"handleapi",
|
|
"fileapi",
|
|
"namedpipeapi",
|
|
"synchapi",
|
|
"winsock2",
|
|
]}
|
|
|
|
[target.'cfg(any(target_os = "android", all(unix, not(target_os = "macos"))))'.dependencies]
|
|
fontconfig = { path = "deps/fontconfig" }
|
|
|
|
[target.'cfg(all(unix, not(target_os = "macos")))'.dependencies]
|
|
openssl = "0.10"
|
|
|
|
[target.'cfg(target_os = "macos")'.dependencies]
|
|
openssl = { version = "0.10", features = ["vendored"] }
|
|
core-foundation = "0.7"
|
|
core-graphics = "0.19"
|
|
core-text = "15.0"
|
|
|
|
[workspace]
|
|
|
|
[profile.release]
|
|
debug = true
|
|
opt-level = 3
|