From 068feca15d09dce6747d0fb6cab2027b938e82bd Mon Sep 17 00:00:00 2001 From: Philipp Schmitt Date: Fri, 24 Dec 2021 18:09:01 +0100 Subject: [PATCH] feat(zsh-navigation-tools)!: update to zdharma-continuum fork (#10402) BREAKING CHANGE: the `zsh-navigation-tools` plugin now bundles the version from the zdharma-continuum project, which republished the projects that psprint deleted (we don't yet know yet why). In theory this change doesn't break anything, but be aware of the change and that the upstream repository now lives somewhere else. Source: https://github.com/zdharma-continuum/zsh-navigation-tools/commit/67b24e1 --- .../.config/znt/README.txt | 1 - plugins/zsh-navigation-tools/README.md | 37 ++- .../doc/generate_single_file | 35 +++ .../doc/img/n-history2.png | Bin 0 -> 108316 bytes plugins/zsh-navigation-tools/doc/install.sh | 70 ++++++ plugins/zsh-navigation-tools/doc/n-preview | 224 ++++++++++++++++++ .../{ => doc}/znt-tmux.zsh | 2 +- .../zsh-navigation-tools.plugin.zsh | 2 +- 8 files changed, 346 insertions(+), 25 deletions(-) delete mode 100644 plugins/zsh-navigation-tools/.config/znt/README.txt create mode 100755 plugins/zsh-navigation-tools/doc/generate_single_file create mode 100644 plugins/zsh-navigation-tools/doc/img/n-history2.png create mode 100755 plugins/zsh-navigation-tools/doc/install.sh create mode 100644 plugins/zsh-navigation-tools/doc/n-preview rename plugins/zsh-navigation-tools/{ => doc}/znt-tmux.zsh (97%) diff --git a/plugins/zsh-navigation-tools/.config/znt/README.txt b/plugins/zsh-navigation-tools/.config/znt/README.txt deleted file mode 100644 index c3d6c821a..000000000 --- a/plugins/zsh-navigation-tools/.config/znt/README.txt +++ /dev/null @@ -1 +0,0 @@ -These are skeletons, configuration is read from ~/.config/znt/* diff --git a/plugins/zsh-navigation-tools/README.md b/plugins/zsh-navigation-tools/README.md index 7d2ce99f4..9fd2d5414 100644 --- a/plugins/zsh-navigation-tools/README.md +++ b/plugins/zsh-navigation-tools/README.md @@ -1,15 +1,14 @@ [![License (GPL version 3)](https://img.shields.io/badge/license-GNU%20GPL%20version%203-blue.svg?style=flat-square)](./LICENSE) [![MIT License](https://img.shields.io/badge/license-MIT-blue.svg?style=flat-square)](./LICENSE) ![ZSH 5.0.0](https://img.shields.io/badge/zsh-v5.0.0-orange.svg?style=flat-square) +[![Gitter][gitter-image]][gitter-link] ![znt logo](http://imageshack.com/a/img905/2629/WK9qjN.png) -[![paypal](https://www.paypalobjects.com/en_US/i/btn/btn_donateCC_LG.gif)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=D6XDCHDSBDSDG) - # Zsh Navigation Tools -Also check out [![ZCA](http://imageshack.com/a/img911/8084/qSpO8a.png) Zsh Command Architect](https://github.com/psprint/zsh-cmd-architect) -and [Zconvey](https://github.com/psprint/zconvey) +Also check out [![ZCA](http://imageshack.com/a/img911/8084/qSpO8a.png) Zsh Command Architect](https://github.com/zdharma-continuum/zsh-cmd-architect) +and [Zconvey](https://github.com/zdharma-continuum/zconvey) @@ -107,10 +106,10 @@ history management and various integrations with `Zsh`. * 30-04-2016 - New feature: color themes. Use `Ctrl-T` and `Ctrl-G` to browse predefined - themes. They are listed in [~/.config/znt/n-list.conf](https://github.com/psprint/zsh-navigation-tools/blob/master/.config/znt/n-list.conf). + themes. They are listed in [~/.config/znt/n-list.conf](https://github.com/zdharma-continuum/zsh-navigation-tools/blob/master/.config/znt/n-list.conf). Use the file to permanently set a color scheme. Also, I sent a patch to Zsh developers and starting from Zsh > 5.2 (not yet released) supported will be 256 colors. - The file [~/.config/znt/n-list.conf](https://github.com/psprint/zsh-navigation-tools/blob/master/.config/znt/n-list.conf) + The file [~/.config/znt/n-list.conf](https://github.com/zdharma-continuum/zsh-navigation-tools/blob/master/.config/znt/n-list.conf) already has set of 256-color themes prepared :) ![themes](http://imageshack.com/a/img924/4310/EbRh30.gif) @@ -130,7 +129,7 @@ history management and various integrations with `Zsh`. ## Installation ``` -sh -c "$(curl -fsSL https://raw.githubusercontent.com/psprint/zsh-navigation-tools/master/doc/install.sh)" +sh -c "$(curl -fsSL https://raw.githubusercontent.com/zdharma-continuum/zsh-navigation-tools/master/doc/install.sh)" ``` To update run the command again. @@ -140,16 +139,16 @@ will be updated with only `8` lines of code, which will be added at the bottom. After installing and reloading shell give `ZNT` a quick try with `Ctrl-R` – this keyboard shortcut will open `n-history`. -## Installation With [Zplugin](https://github.com/psprint/zplugin) -Add `zplugin load psprint/zsh-navigation-tools` to `.zshrc`. The config files will be in `~/.config/znt`. +## Installation With [Zinit](https://github.com/zdharma-continuum/zinit) +Add `zinit load zdharma-continuum/zsh-navigation-tools` to `.zshrc`. The config files will be in `~/.config/znt`. -## Installation With Zgen +## Installation With Zgenom/Zgen -Add `zgen load psprint/zsh-navigation-tools` to `.zshrc` and issue a `zgen reset` (this assumes that there is a proper `zgen save` construct in `.zshrc`). +Add `zgen load zdharma-continuum/zsh-navigation-tools` to `.zshrc` and issue a `zgen reset` (this assumes that there is a proper `zgen save` construct in `.zshrc`). The config files will be available in `~/.config/znt`. ## Installation With Antigen -Add `antigen bundle psprint/zsh-navigation-tools` to `.zshrc`. There also +Add `antigen bundle zdharma-continuum/zsh-navigation-tools` to `.zshrc`. There also should be `antigen apply`. The config files will be in `~/.config/znt`. ## Single File Manual Installation @@ -194,7 +193,7 @@ alias naliases=n-aliases ncd=n-cd nenv=n-env nfunctions=n-functions nhistory=n-h alias nkill=n-kill noptions=n-options npanelize=n-panelize nhelp=n-help ``` -Don't forget to copy [configuration files](https://github.com/psprint/zsh-navigation-tools/tree/master/.config/znt). They should go to `~/.config/znt`. Moreover, `n-cd` works together with option `AUTO_PUSHD` and you should have: +Don't forget to copy [configuration files](https://github.com/zdharma-continuum/zsh-navigation-tools/tree/master/.config/znt). They should go to `~/.config/znt`. Moreover, `n-cd` works together with option `AUTO_PUSHD` and you should have: ```zsh setopt AUTO_PUSHD @@ -397,15 +396,7 @@ The same with doing any non-typical Zsh Navigation Tools installation. ## More -- be aware of [this](https://github.com/psprint/zsh-navigation-tools/blob/f49f910d239ae5bc6e1a5bb34930307b4f4e3ffe/zsh-navigation-tools.plugin.zsh#L35-L49) - -## IRC Channel - -Channel `#zplugin@freenode` is a support place for all author's projects. Connect to: -[chat.freenode.net:6697](ircs://chat.freenode.net:6697/%23zplugin) (SSL) or [chat.freenode.net:6667](irc://chat.freenode.net:6667/%23zplugin) - and join #zplugin. - -Following is a quick access via Webchat [![IRC](https://kiwiirc.com/buttons/chat.freenode.net/zplugin.png)](https://kiwiirc.com/client/chat.freenode.net:+6697/#zplugin) +- be aware of [this](https://github.com/zdharma-continuum/zsh-navigation-tools/blob/f49f910d239ae5bc6e1a5bb34930307b4f4e3ffe/zsh-navigation-tools.plugin.zsh#L35-L49) # Fixing tmux, screen and linux vt @@ -429,3 +420,5 @@ It will not display underline properly, but will instead highlight by a color, which is quite nice. The same will not work for FreeBSD's vt, `ZNT` will detect if that vt is used and will revert to highlighting elements via `reverse` mode. +[gitter-image]: https://badges.gitter.im/zdharma-continuum/community.svg +[gitter-link]: https://gitter.im/zdharma-continuum/community diff --git a/plugins/zsh-navigation-tools/doc/generate_single_file b/plugins/zsh-navigation-tools/doc/generate_single_file new file mode 100755 index 000000000..d3d393834 --- /dev/null +++ b/plugins/zsh-navigation-tools/doc/generate_single_file @@ -0,0 +1,35 @@ +#!/bin/zsh + +local PLUGIN_FILE="doc/zshnavigationtools.plugin.zsh" + +[ -d doc ] || cd .. + +rm -vf "$PLUGIN_FILE" +echo "# The preamble comments apply when using ZNT as autoload functions" >>"$PLUGIN_FILE" +echo "# https://github.com/psprint/zsh-navigation-tools" >>"$PLUGIN_FILE" +echo "# License is GPLv3 and MIT" >>"$PLUGIN_FILE" +echo -n "# " >>"$PLUGIN_FILE" +git show-ref master | head -1 >>"$PLUGIN_FILE" +echo >>"$PLUGIN_FILE" + +for i in n-*(on); do + echo "$i() {" >>"$PLUGIN_FILE" + cat "$i" >>"$PLUGIN_FILE" + echo "}" >>"$PLUGIN_FILE" + echo "alias n${i#n-}=$i" >>"$PLUGIN_FILE" + echo >>"$PLUGIN_FILE" +done + +# Append znt-* files +for i in znt-*(on); do + echo "$i() {" >>"$PLUGIN_FILE" + cat "$i" >>"$PLUGIN_FILE" + echo "}" >>"$PLUGIN_FILE" + echo >>"$PLUGIN_FILE" +done + +# Append ^R bind +echo "zle -N znt-history-widget" >>"$PLUGIN_FILE" +echo "bindkey '^R' znt-history-widget" >>"$PLUGIN_FILE" +echo "setopt AUTO_PUSHD HIST_IGNORE_DUPS PUSHD_IGNORE_DUPS" >>"$PLUGIN_FILE" + diff --git a/plugins/zsh-navigation-tools/doc/img/n-history2.png b/plugins/zsh-navigation-tools/doc/img/n-history2.png new file mode 100644 index 0000000000000000000000000000000000000000..fa23de00d5c6b4550c96fe783d34575d8fdecbfe GIT binary patch literal 108316 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/dev/null 1>&2; then + echo "Please install GIT first" + echo "Exiting" + exit 1 +fi + +# +# Clone or pull +# + +if ! test -d "$HOME/.config"; then + mkdir "$HOME/.config" +fi + +if ! test -d "$HOME/.config/znt"; then + mkdir "$HOME/.config/znt" +fi + +echo ">>> Downloading zsh-navigation-tools to ~/.config/znt" +if test -d ~/.config/znt/zsh-navigation-tools; then + cd ~/.config/znt/zsh-navigation-tools + git pull origin master +else + cd ~/.config/znt + git clone https://github.com/psprint/zsh-navigation-tools.git zsh-navigation-tools +fi +echo ">>> Done" + +# +# Copy configs +# + +echo ">>> Copying config files" + +cd ~/.config/znt + +set n-aliases.conf n-env.conf n-history.conf n-list.conf n-panelize.conf n-cd.conf n-functions.conf n-kill.conf n-options.conf + +for i; do + if ! test -f "$i"; then + cp -v zsh-navigation-tools/.config/znt/$i . + fi +done + +echo ">>> Done" + +# +# Modify .zshrc +# + +echo ">>> Updating .zshrc" +if ! grep zsh-navigation-tools ~/.zshrc >/dev/null 2>&1; then + echo >> ~/.zshrc + echo "### ZNT's installer added snippet ###" >> ~/.zshrc + echo "fpath=( \"\$fpath[@]\" \"\$HOME/.config/znt/zsh-navigation-tools\" )" >> ~/.zshrc + echo "autoload n-aliases n-cd n-env n-functions n-history n-kill n-list n-list-draw n-list-input n-options n-panelize n-help" >> ~/.zshrc + echo "autoload znt-usetty-wrapper znt-history-widget znt-cd-widget znt-kill-widget" >> ~/.zshrc + echo "alias naliases=n-aliases ncd=n-cd nenv=n-env nfunctions=n-functions nhistory=n-history" >> ~/.zshrc + echo "alias nkill=n-kill noptions=n-options npanelize=n-panelize nhelp=n-help" >> ~/.zshrc + echo "zle -N znt-history-widget" >> ~/.zshrc + echo "bindkey '^R' znt-history-widget" >> ~/.zshrc + echo "setopt AUTO_PUSHD HIST_IGNORE_DUPS PUSHD_IGNORE_DUPS" >> ~/.zshrc + echo "zstyle ':completion::complete:n-kill::bits' matcher 'r:|=** l:|=*'" >> ~/.zshrc + echo "### END ###" >> ~/.zshrc + echo ">>> Done" +else + echo ">>> .zshrc already updated, not making changes" +fi diff --git a/plugins/zsh-navigation-tools/doc/n-preview b/plugins/zsh-navigation-tools/doc/n-preview new file mode 100644 index 000000000..2d8eea3fb --- /dev/null +++ b/plugins/zsh-navigation-tools/doc/n-preview @@ -0,0 +1,224 @@ +# Copy this file into /usr/share/zsh/site-functions/ +# and add 'autoload n-preview` to .zshrc +# +# This is partially a test if n-list-draw and n-list-input can be +# used multiple times to create multiple lists. It might become +# more usable if someone adds more features like previewing of +# archive contents. + +emulate -L zsh + +zmodload zsh/curses + +setopt typesetsilent extendedglob +trap "return" TERM INT QUIT +trap "_vpreview_exit" EXIT + +local IFS=" +" + +[ -f ~/.config/znt/n-list.conf ] && . ~/.config/znt/n-list.conf + +[[ "$colorpair" = "" ]] && colorpair="white/black" +local background="${colorpair#*/}" + +# Drawing and input +autoload n-list-draw n-list-input + +# Cleanup before any exit +_vpreview_exit() { + zcurses 2>/dev/null delwin files + zcurses 2>/dev/null delwin body + zcurses 2>/dev/null delwin status + zcurses 2>/dev/null refresh + zcurses end +} + +# Outputs a message in the bottom of the screen +_vpreview_status_msg() { + zcurses move status 1 2 + zcurses clear status eol + zcurses string status "$1" +} + +# Prefer tput, then module terminfo +_nlist_cursor_visibility() { + if type tput 2>/dev/null 1>&2; then + [ "$1" = "1" ] && tput cvvis + [ "$1" = "0" ] && tput civis + elif [ "$has_termcap" = "1" ]; then + [ "$1" = "1" ] && [ -n $terminfo[cvvis] ] && echo -n $terminfo[cvvis] + [ "$1" = "0" ] && [ -n $terminfo[civis] ] && echo -n $terminfo[civis] + fi +} + +# +# Main code +# + +integer term_height="$LINES" +integer term_width="$COLUMNS" +if [[ "$term_height" -lt 1 || "$term_width" -lt 1 ]]; then + local stty_out=$( stty size ) + term_height="${stty_out% *}" + term_width="${stty_out#* }" +fi + +integer status_height=3 +integer status_width=term_width +integer status_page_height=1 +integer status_page_width=term_width-2 + +integer files_height=term_height-status_height +integer files_width=term_width/5 +integer files_page_height=files_height-2 +integer files_page_width=files_width-2 + +integer body_height=term_height-status_height +integer body_width=term_width-files_width +integer body_page_height=body_height-2 +integer body_page_width=body_width + +integer _from_what_idx_list_is_shown_1=1 +integer current_1=1 + +integer _from_what_idx_list_is_shown_2=1 +integer current_2=1 +integer hscroll_2=0 + +integer active_window=0 + +local ansi_mode="ansi" +[ -f ~/.config/znt/n-preview.conf ] && . ~/.config/znt/n-preview.conf +typeset -a hcmd +#if type pygmentize 2>/dev/null 1>&2; then +# hcmd=( pygmentize -g ) +if type highlight 2>/dev/null 1>&2; then + hcmd=( highlight -q --force -O ansi ) +elif type source-highlight 2>/dev/null 1>&2; then + # Warning: source-highlight can have problems + hcmd=( source-highlight --failsafe -fesc -o STDOUT -i ) +else + ansi_mode="noansi" +fi + +zcurses init +zcurses addwin status "$status_height" "$status_width" $(( term_height - status_height )) 0 +zcurses addwin files "$files_height" "$files_width" 0 0 +zcurses addwin body "$body_height" "$body_width" 0 "$files_width" +zcurses bg status white/black +zcurses bg files white/black +zcurses bg body white/black + +# +# Listening for input +# + +local key keypad + +# Clear input buffer +zcurses timeout status 0 +zcurses input status key keypad +zcurses timeout status -1 +key="" +keypad="" + +typeset -a filenames +integer last_element_1 + +typeset -a body +integer last_element_2 + +filenames=( *(N) ) +filenames=( "${(@M)filenames:#(#i)*$1*}" ) + +local NLIST_GREP_STRING="$1" + +integer last_element_1="$#filenames" +integer last_element_2=0 + +local selection action final_key + +while (( 1 )); do + # Output the lists + integer end_idx=$(( _from_what_idx_list_is_shown_1 + files_page_height - 1 )) + [ "$end_idx" -gt "$last_element_1" ] && end_idx=last_element_1 + + n-list-draw "$(( (current_1 -1) % files_page_height + 1 ))" \ + "$files_page_height" "$files_page_width" 1 2 0 files \ + "${(@)filenames[_from_what_idx_list_is_shown_1, end_idx]}" + + if [ "$#body" -ge 1 ]; then + end_idx=$(( _from_what_idx_list_is_shown_2 + body_page_height - 1 )) + [ "$end_idx" -gt "$last_element_2" ] && end_idx=last_element_2 + + n-list-draw "$(( (current_2 -1) % body_page_height + 1 ))" \ + "$body_page_height" "$body_page_width" 1 0 "$hscroll_2" body \ + "${(@)body[_from_what_idx_list_is_shown_2, end_idx]}" + fi + + [[ "$active_window" -eq 0 ]] && zcurses border files + zcurses border status + zcurses refresh files body status + + # Wait for input + zcurses input status key keypad + + # Get the special (i.e. "keypad") key or regular key + if [ -n "$key" ]; then + final_key="$key" + elif [ -n "$keypad" ]; then + final_key="$keypad" + else + _vpreview_status_msg "Inproper input detected" + zcurses refresh status + fi + + if [ "$active_window" -eq 0 ]; then + zcurses clear files + n-list-input "$current_1" "$_from_what_idx_list_is_shown_1" "$files_page_height" \ + "$files_page_width" "$last_element_1" 0 "$final_key" + + selection="$reply[1]" + action="$reply[2]" + current_1="$reply[3]" + _from_what_idx_list_is_shown_1="$reply[4]" + + if [ "$action" = "SELECT" ]; then + # Load new file and refresh the displaying window + local filename="$filenames[$selection]" + if [ "$ansi_mode" = "ansi" ]; then + body=( "${(@f)"$( "$hcmd[@]" "$filename" )"}" ) + else + body=( "${(@f)"$(<$filename)"}" ) + fi + last_element_2="$#body" + current_2=1 + _from_what_idx_list_is_shown_2=1 + zcurses clear body + fi + elif [ "$active_window" -eq 1 ]; then + zcurses clear body + n-list-input "$current_2" "$_from_what_idx_list_is_shown_2" "$body_page_height" \ + "$body_page_width" "$last_element_2" "$hscroll_2" "$final_key" + + selection="$reply[1]" + action="$reply[2]" + current_2="$reply[3]" + _from_what_idx_list_is_shown_2="$reply[4]" + hscroll_2="$reply[5]" + + fi + + if [ "$action" = "LEAVE" ]; then + active_window=1-active_window + elif [ "$action" = "QUIT" ]; then + break + elif [ "$action" = "REDRAW" ]; then + zcurses clear files redraw + zcurses clear body redraw + zcurses clear status redraw + fi +done + +# vim: set filetype=zsh: diff --git a/plugins/zsh-navigation-tools/znt-tmux.zsh b/plugins/zsh-navigation-tools/doc/znt-tmux.zsh similarity index 97% rename from plugins/zsh-navigation-tools/znt-tmux.zsh rename to plugins/zsh-navigation-tools/doc/znt-tmux.zsh index 6a96e97a1..309c11a0b 100755 --- a/plugins/zsh-navigation-tools/znt-tmux.zsh +++ b/plugins/zsh-navigation-tools/doc/znt-tmux.zsh @@ -12,7 +12,7 @@ # To use, put this line to your ~/.tmux.conf. The tool is invoked with: # Ctrl+b h # -# bind h run-shell -b "$ZNT_REPO_DIR/znt-tmux.zsh" +# bind h run-shell -b "$ZNT_REPO_DIR/doc/znt-tmux.zsh" # # get and save the current active tmux pane id diff --git a/plugins/zsh-navigation-tools/zsh-navigation-tools.plugin.zsh b/plugins/zsh-navigation-tools/zsh-navigation-tools.plugin.zsh index f015620f5..85ce87ca4 100644 --- a/plugins/zsh-navigation-tools/zsh-navigation-tools.plugin.zsh +++ b/plugins/zsh-navigation-tools/zsh-navigation-tools.plugin.zsh @@ -8,7 +8,7 @@ # # According to the standard: -# http://zdharma.org/Zsh-100-Commits-Club/Zsh-Plugin-Standard.html +# https://zdharma-continuum.github.io/Zsh-100-Commits-Club/Zsh-Plugin-Standard.html 0="${${ZERO:-${0:#$ZSH_ARGZERO}}:-${(%):-%N}}" 0="${${(M)0:#/*}:-$PWD/$0}" export ZNT_REPO_DIR="${0:h}"