fix copypasta

This commit is contained in:
thek4n 2025-11-16 18:01:35 +03:00
parent 250174e5ff
commit 6a06ef5399
8 changed files with 80 additions and 34 deletions

View File

@ -1,18 +1,18 @@
readonly TARGETS="\ readonly TARGETS="\
colors:.config/terminal-colors.d colors:.config/terminal-colors.d
less:.lesskey .infokey less:.lesskey .infokey
tmux:.config/tmux .tmux .config/systemd/user/tmux.service .local/bin/tmux_start_session.sh .local/bin/tmux_list_sessions.sh .local/bin/tmux_attach_session.sh .local/bin/tmux_kill_sessions.sh .local/bin/tmux_start_projects.sh tmux:.config/tmux .tmux .config/systemd/user/tmux.service .local/bin/tmux_start_session.sh .local/bin/tmux_list_sessions.sh .local/bin/tmux_attach_session.sh .local/bin/tmux_kill_sessions.sh .local/bin/tmux_start_projects.sh %copypasta
t: t:
note: note:
psw: psw:
zsh:.config/zsh .zshenv .zshenv.d .inputrc %colors zsh:.config/zsh .zshenv .zshenv.d .inputrc %copypasta %colors
alacritty:.config/alacritty alacritty:.config/alacritty
nvim:.config/nvim .editorconfig .editrc .local/bin/vim_askpass_helper nvim:.config/nvim .editorconfig .editrc .local/bin/vim_askpass_helper
ssh: ssh:
git:.config/git .local/bin/ga git:.config/git .local/bin/ga
ranger:.config/ranger ranger:.config/ranger
gpg: gpg:
sway:.config/sway .config/i3blocks .config/mako .config/mimeapps.list .config/rofi .local/bin/screenshot .local/bin/i3blocks_helper .local/bin/layout_change_handler .config/swaylock .Xresources .local/bin/sway_swap_workspaces .local/bin/slm .local/bin/slm_rofi %pomodoro sway:.config/sway .config/i3blocks .config/mako .config/mimeapps.list .config/rofi .local/bin/screenshot .local/bin/i3blocks_helper .local/bin/layout_change_handler .config/swaylock .Xresources .local/bin/sway_swap_workspaces .local/bin/slm .local/bin/slm_rofi %copypasta %pomodoro
pomodoro: pomodoro:
bat:.config/bat bat:.config/bat
font: font:
@ -25,5 +25,6 @@ gdb:.config/gdb
sandbox: sandbox:
utils:.local/bin/myip .local/bin/genpass .local/bin/gensalt .local/bin/django-create-project .local/bin/mirror-site .local/bin/split-file .local/bin/extract .local/bin/destroy utils:.local/bin/myip .local/bin/genpass .local/bin/gensalt .local/bin/django-create-project .local/bin/mirror-site .local/bin/split-file .local/bin/extract .local/bin/destroy
chromium:.local/bin/pchromium .local/share/applications/pchromium.desktop chromium:.local/bin/pchromium .local/share/applications/pchromium.desktop
scripts:.local/bin/httpstatus .local/bin/bb .local/bin/emoji .local/bin/mksh .local/bin/nato .local/bin/pastas .local/bin/timer .local/bin/tryna .local/bin/trynafail .local/bin/bak .local/bin/cleanup-directory .local/bin/cleanup-directory-log .local/bin/cleanup-downloads .local/bin/gobuild .local/bin/json .local/bin/open .local/bin/py .local/bin/sha .local/bin/showtips .local/bin/weather .local/bin/radio .local/bin/rmt .local/bin/scratch .local/bin/tunes scripts:.local/bin/httpstatus .local/bin/bb .local/bin/emoji .local/bin/mksh .local/bin/nato .local/bin/pastas .local/bin/timer .local/bin/tryna .local/bin/trynafail .local/bin/bak .local/bin/cleanup-directory .local/bin/cleanup-directory-log .local/bin/cleanup-downloads .local/bin/gobuild .local/bin/json .local/bin/open .local/bin/py .local/bin/sha .local/bin/showtips .local/bin/weather .local/bin/radio .local/bin/rmt .local/bin/scratch .local/bin/tunes %copypasta
copypasta:.local/bin/copy .local/bin/pasta
all:%less %t %note %tmux %zsh %nvim %git" all:%less %t %note %tmux %zsh %nvim %git"

View File

@ -1 +0,0 @@
../getty@tty1.service.d/skip-username.conf

View File

@ -0,0 +1,3 @@
[Service]
ExecStart=
ExecStart=-/sbin/agetty -o '-p -- %%USER%%' --noclear --skip-login - $TERM

View File

@ -183,14 +183,13 @@ bind C-p choose-buffer
bind -T copy-mode-vi C-v send-keys -X rectangle-toggle bind -T copy-mode-vi C-v send-keys -X rectangle-toggle
bind -T copy-mode-vi y send-keys -X copy-pipe-and-cancel "wl-copy --trim-newline" bind -T copy-mode-vi y send-keys -X copy-pipe-and-cancel "copy"
bind -T copy-mode-vi Y send-keys -X copy-selection-and-cancel
bind MouseDrag1Pane copy-mode bind MouseDrag1Pane copy-mode
bind -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel "wl-copy --trim-newline" bind -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel "copy"
bind -r p run-shell "wl-paste --no-newline | tmux load-buffer -; tmux paste-buffer -p" bind -r p run-shell "pasta | tmux load-buffer -; tmux paste-buffer -p"
bind -r з run-shell "wl-paste --no-newline | tmux load-buffer -; tmux paste-buffer -p" bind -r з run-shell "pasta | tmux load-buffer -; tmux paste-buffer -p"
bind -r P paste-buffer -p bind -r P paste-buffer -p

View File

@ -127,25 +127,7 @@ alias colors='for i in {0..255}; do printf "\x1b[38;5;${i}mcolor${i} - ███
alias paste.thek4n.ru='curl --data-binary @- "https://paste.thek4n.ru/" 2>/dev/null' alias paste.thek4n.ru='curl --data-binary @- "https://paste.thek4n.ru/" 2>/dev/null'
alias pastewww='paste.thek4n.ru' alias pastewww='paste.thek4n.ru'
alias copy='tee /dev/stderr | \copy'
# clipboard
if [[ "${OSTYPE}" == "linux-gnu"* ]]; then
if [ -n "${DISPLAY}" ]; then
alias _copy='sed -z "$ s/\n$//" | wl-copy --trim-newline'
alias pasta='wl-paste --no-newline'
else
alias _copy='read -rd "EOF" TTYCLIPBOARD'
alias pasta='echo "$TTYCLIPBOARD"'
fi
elif [[ "${OSTYPE}" == "linux-android"* ]]; then
alias _copy='termux-clipboard-set'
alias pasta='termux-clipboard-get'
elif [[ "${OSTYPE}" == "darwin" ]]; then
alias _copy='pbcopy'
alias pasta='pbpaste'
fi
alias copy='tee /dev/stderr | _copy'
alias ssh='TERM=xterm-256color ssh' alias ssh='TERM=xterm-256color ssh'
alias sshn='ssh -S none' alias sshn='ssh -S none'

View File

@ -11,7 +11,7 @@ bindkey -M visual 'a' vi-add-next
# Yank to the system clipboard # Yank to the system clipboard
function vi-yank-xclip { function vi-yank-xclip {
zle vi-yank zle vi-yank
echo -n "$CUTBUFFER" | wl-copy --trim-newline # alias 'copy' from earlier loaded file echo -n "$CUTBUFFER" | \copy
} }
zle -N vi-yank-xclip zle -N vi-yank-xclip

31
home/user/.local/bin/copy Executable file
View File

@ -0,0 +1,31 @@
#!/bin/sh
set -eu
case "${OSTYPE:-}" in
"linux-gnu"*)
if [ -n "${WAYLAND_DISPLAY}" ]; then
wl-copy --trim-newline
exit 0
elif [ -n "${DISPLAY}" ]; then
xclip -selection clipboard -in
exit 0
else
sed -z '$ s/\n$//' > "${HOME}/.ttyclipboard"
exit 0
fi
;;
"linux-android"*)
termux-clipboard-set
exit 0
;;
"darwin")
pbcopy
exit 0
;;
*)
sed -z '$ s/\n$//' > "${HOME}/.ttyclipboard"
exit 0
;;
esac

31
home/user/.local/bin/pasta Executable file
View File

@ -0,0 +1,31 @@
#!/bin/sh
set -eu
case "${OSTYPE:-}" in
"linux-gnu"*)
if [ -n "${WAYLAND_DISPLAY}" ]; then
wl-paste --no-newline
exit 0
elif [ -n "${DISPLAY}" ]; then
xclip -selection clipboard -out
exit 0
else
cat "${HOME}/.ttyclipboard"
exit 0
fi
;;
"linux-android"*)
termux-clipboard-get
exit 0
;;
"darwin")
pbpaste
exit 0
;;
*)
cat "${HOME}/.ttyclipboard"
exit 0
;;
esac

View File

@ -7,11 +7,11 @@ last_value=''
while true while true
do do
value="$(xclip -selection clipboard -o)" value="$(pasta)"
if [ "$last_value" != "$value" ]; then if [ "${last_value}" != "${value}" ]; then
echo "$value" echo "${value}"
last_value="$value" last_value="${value}"
fi fi
sleep 0.1 sleep 0.1