Commit Graph

26 Commits

Author SHA1 Message Date
ii41 a754d06b44
Add support for single line terminals
This changes the minimum terminal dimensions from 2 lines and 2 columns,
to 1 line and 2 columns.

This also reworks the `SizeInfo` to store the number of columns and
lines and consistently has only the terminal lines/columns stored,
instead of including the message bar and search in some places of the
Alacritty renderer/input.

These new changes also make it easy to properly start the selection
scrolling as soon as the mouse is over the message bar, instead of
waiting until it is beyond it.

Fixes #4207.

Co-authored-by: Christian Duerr <contact@christianduerr.com>
2020-09-27 22:36:08 +00:00
Mateusz Mikuła 5ee7ae8a27
Disable WinPTY with windows-gnu toolchain
Co-authored-by: Christian Duerr <contact@christianduerr.com>
2020-08-31 22:30:45 +00:00
Kirill Chibisov 6c4e45f3a6
Bump minimum supported Rust version to 1.43.0 2020-07-28 13:00:55 +03:00
Kirill Chibisov 18cf806a27
Remove gui dependencies from alacritty_terminal
This commit removes font dependency from alacritty_terminal,
so it'll simplify the usage of alacritty_terminal as a library,
since you won't link to system's libraries anymore. It also
moves many alacritty related config options from it.

Fixes #3393.
2020-07-11 20:03:09 +03:00
Christian Duerr 7aafbb757d
Remove copyright notice from files
Keeping the license as part of every file bloats up the files
unnecessarily and introduces an additional overhead to the creation of
new modules.

Since cargo already provides excellent dependency management, most of
the code-reuse of Alacritty should occur through Rust's dependency
management instead of copying it source.

If code is copied partially, copying the license from the main license
file should be just as easy as copying from the top of the file and
making some adjustments based on where it is used is likely necessary
anyways.
2020-06-06 21:49:14 +03:00
Kirill Chibisov f99220f015
Refactor Shell, Command, and Launcher to share impl 2020-06-05 01:10:31 +03:00
David Hewitt c102e845cd
Add cargo feature for WinPTY 2020-06-02 21:31:06 +00:00
Christian Duerr 81ce93574f
Extend style guideline documentation 2020-05-05 22:50:23 +00:00
Christian Duerr 871a22eaf4
Fix inconsistent test module naming 2020-01-28 12:32:35 +00:00
David Hewitt 7dc406252b Remove Windows working directory canonicalization
Fixes #3198.
2020-01-15 13:47:15 +01:00
Christian Duerr 09ed64bd36
Fix crash with invalid working directory 2020-01-12 01:24:56 +01:00
David Hewitt f632919134 Clean up Windows PTY string handling
Removes widestring and dunce dependencies, reduces some code duplication
and corrects a few typos.
2020-01-02 11:49:27 +00:00
Kirill Chibisov d4dc1f7b14 Remove outdated information from README 2019-12-29 22:48:27 +00:00
David Hewitt 85112fefa5 Remove unneeded NamedPipe::connect() calls
In the way the code was set up, these calls would always do nothing
and return io::ErrorKind::WouldBlock, so they can be safely removed.
2019-12-22 11:02:56 +00:00
David Hewitt 7a957978e4 Default to ConPTY instead of WinPTY 2019-12-21 21:23:18 +00:00
sterlingjensen 8a83340661 Add conpty dynamic loading restrictions docs 2019-12-15 06:21:54 +01:00
David Hewitt 08a1225748 Send PTY resize messages through event loop
This allows us to clean up the Arcs on windows, as well as tidy up
the code on unix a little too.

Fixes #3086.
2019-12-14 22:32:24 +01:00
David Hewitt 6deb274b82 Fix deadlock when closing on Windows using Conpty
Fixes #3042.
2019-12-12 16:01:23 +01:00
sterlingjensen 72df0c06bf Remove unnecessary lifetimes from winpty 2019-12-05 18:14:47 +01:00
Maciej Makowski 48861e4633 Fix WinPTY freeze on termination
Fixes #2889.
2019-11-16 22:11:56 +01:00
Dustin 401c2aab96 Add support for title stack escape sequences
This commit adds the concept of a "title stack" to the terminal. Some programs
(e.g. vim) send control sequences `CSI 22 ; 0` (push title) and `CSI 23 ; 0`
(pop title).

The title stack is just a history of previous titles.  Applications can push
the current title onto the stack, and pop it back off (setting the window title
in the process).

Fixes #2840.
2019-10-14 19:50:58 +02:00
Christian Duerr 729eef0c93
Update to winit/glutin EventLoop 2.0
This takes the latest glutin master to port Alacritty to the EventLoop
2.0 rework.

This changes a big part of the event loop handling by pushing the event
loop in a separate thread from the renderer and running both in
parallel.

Fixes #2796.
Fixes #2694.
Fixes #2643.
Fixes #2625.
Fixes #2618.
Fixes #2601.
Fixes #2564.
Fixes #2456.
Fixes #2438.
Fixes #2334.
Fixes #2254.
Fixes #2217.
Fixes #1789.
Fixes #1750.
Fixes #1125.
2019-10-05 02:29:26 +02:00
Christian Duerr 5d173f6df3
Refactor config parsing files
This is a large refactor of the config parsing structure, attempting to
reduce the size of the file a bit by splitting it up into different
modules with more specific purposes.

This also fixes #2279.
2019-05-10 11:36:16 +00:00
Nathan Lilienthal 34c54e7e0e
Add git hash to version string, and fix crate name (#2397)
This moves `cli` out of `alacritty_terminal` and into `alacritty` where
it belongs, along with the `clap` dependency.
2019-05-03 19:48:25 -04:00
JDTX 2c462c7d03 Fix spelling mistakes 2019-04-28 21:42:43 +00:00
Theodore Dubois dbd8538762 Split alacritty into a separate crates
The crate containing the entry point is called alacritty, and the crate
containing everything else is called alacritty_terminal.
2019-04-28 13:24:58 +00:00