mirror of
https://github.com/fish-shell/fish-shell
synced 2024-12-28 05:43:11 +00:00
c55865f76e
I believe they are both equivalent for our particular purpose, since we only care about enforcing the size fish sees. `resize-window` was only introduced in tmux 2.9, which isn't available at least on Ubuntu 18.04 LTS (currently using tmux 2.6) and probably many others. (Clever idea to use tmux here!)
49 lines
1.3 KiB
Fish
49 lines
1.3 KiB
Fish
#RUN: %fish -C 'set -g fish %fish' %s
|
|
#REQUIRES: command -v tmux
|
|
|
|
# Isolated tmux.
|
|
set -g tmpdir (mktemp -d)
|
|
set -g tmux tmux -S $tmpdir/.tmux-socket -f /dev/null
|
|
|
|
set -g sleep sleep .3 # TSan tests in the CI failed with .1.
|
|
|
|
set fish (realpath $fish)
|
|
cd $tmpdir
|
|
|
|
$tmux new-session -d $fish -C '
|
|
# This is similar to "tests/interactive.config".
|
|
function fish_greeting; end
|
|
function fish_prompt; printf "prompt $status_generation> "; end
|
|
# No autosuggestion from older history.
|
|
set fish_history ""
|
|
'
|
|
$tmux resize-pane -x 80 -y 10
|
|
$sleep # Let fish draw a prompt.
|
|
|
|
# Don't escape existing token (#7526).
|
|
echo >file-1
|
|
echo >file-2
|
|
$tmux send-keys 'HOME=$PWD ls ~/' Tab
|
|
$sleep
|
|
$tmux capture-pane -p
|
|
# CHECK: prompt 0> HOME=$PWD ls ~/file-
|
|
# CHECK: ~/file-1 ~/file-2
|
|
|
|
# No pager on single smartcase completion (#7738).
|
|
$tmux send-keys C-u C-l 'mkdir cmake CMakeFiles' Enter C-l \
|
|
'cat cmake' Tab
|
|
$sleep
|
|
$tmux capture-pane -p
|
|
# CHECK: prompt 1> cat cmake/
|
|
|
|
# Correct case in pager when prefixes differ in case (#7743).
|
|
$tmux send-keys C-u C-l 'complete -c foo2 -a "aabc aaBd" -f' Enter C-l \
|
|
'foo2 A' Tab
|
|
$sleep
|
|
$tmux capture-pane -p
|
|
# The "bc" part is the autosuggestion - we could use "tmux capture-pane -e" to check colors.
|
|
# CHECK: prompt 2> foo2 aabc
|
|
# CHECK: aabc aaBd
|
|
|
|
$tmux kill-server
|
|
rm -r $tmpdir
|