~heckyel/hyperterm

Custom Prompt Shell Settings for Bash
59faa963 — Astound a month ago
update checker public ip
0d2d4d4f — Astound 4 months ago
git-sync: update actions
2246cf80 — Astound 4 months ago
Add sync to sourcehut

refs

master
browse  log 

clone

read-only
https://git.sr.ht/~heckyel/hyperterm
read/write
git@git.sr.ht:~heckyel/hyperterm

You can also use your local clone with git send-email.

#HyperTerm

Custom Prompt Shell Settings for Bash

#Requirements

  • wget
  • curl
  • git
  • less
  • coreutils

#Features

  • Show Git information (branch, tag, or where you did git checkout)

  • It allows knowing the status (exit status) of the Prompt Shell after executing one/some command(s).

  • Makes source to /usr/share/doc/pkgfile/command-not-found.bash automatically (requires pkgfile).

  • Source /usr/share/bash-completion/bash_completion automatically (requires bash-completion).

  • Includes a hyperterm/_custom.sh for customizations in HyperTerm, separately.

    [!TIP] Your changes must be in $HOME/.hyperterm/_custom.sh, so that are not deleted when it is updated.

  • Special functions like:

    • activate to activate virtualenv in python
    • cex compress files and/or directories
    • ex extract files
    • ii general system information
    • proxy_on enables proxy in terminal or tty
    • sagent_start and sangent_stop to enable or disable the SSH agent (password is remembered for 432000 seconds)
    • rar2zip convert RAR files to ZIP, use unar and 7z
  • Aliases like:

    • clean clears the bash history
    • df shows information about the partitions of the S.O.
    • pastebin allows you to quickly generate a paste for example: cat/etc/*release | pastebin or sensors | pastebin
    • ep open a PKGBUILD with emacs
    • free shows RAM and SWAP information
    • grep skips its colors by default
    • la short of ls -la --group-directories-first --time-style=+"%d.%m.%Y %H:%M" --color=auto -F
    • ll short of ls -l --group-directories-first --time-style=+"%d.%m.%Y %H:%M" --color=auto -F
    • ls short of ls --group-directories-first --time-style=+"%d.%m.%Y %H:%M" --color=auto -F
    • np open a PKGBUILD with nano
  • Look at tools directory for more functions.

  • Run screenfetch if installed (included in the hyperterm/_custom.sh template).

#Installation

#Semi-automatic

  1. Download file install.sh:

     $ curl -Ls https://git.fridu.us/heckyel/hyperterm/raw/branch/master/install.sh -o "$HOME/install.sh"
    
  2. Run file install.sh

     $ bash "$HOME/install.sh"
    

    or in silent mode:

     $ bash "$HOME/install.sh" -s
    

    use -h to show help:

     $ bash "$HOME/install.sh" -h
    
  3. Delete file install.sh:

     $ rm -v "$HOME/install.sh"
    

#Manual

  1. As a suggestion, make a backup of your Prompt Shell.

     $ for f in .bashrc .bash_aliases .bash_profile; do cp -v "$HOME/$f" "$HOME/$f.bak"; done
    
  2. Clone the HyperTerm repository:

    • Mirror 1: git clone https://git.fridu.us/heckyel/hyperterm.git "$HOME/bash"
    • Mirror 2: git clone https://c.fridu.us/heckyel/hyperterm.git "$HOME/bash"
  3. Copy the HyperTerm files to your Local Directory

     $ install -d -m755 "$HOME/.hyperterm"
    
     $ cp -rv $HOME/bash/hyperterm/* "$HOME/.hyperterm"
    
     $ cp -v $HOME/bash/.bash* "$HOME"
    
     $ cp -v $HOME/bash/hyperterm/_custom.sh "$HOME/.hyperterm"
    
     $ install -m644 $HOME/bash/template/bash_profile.template.bash "$HOME/.bashrc"
    
  4. Open your terminal again or execute the next instruction

     $ . $HOME/.bashrc*
    
  5. Delete the repository if you are not interested in having it stored

     $ rm -rfv bash
    
  6. Done!

#Post-installation

  • Optionally you can install trash-cli, pkgfile, bind-tools, bash-completion

      $ pacman -S trash-cli
    
      $ pacman -S pkgfile
    
      $ pacman -S bind-tools
    
      $ pacman -S bash-completion
    

[!TIP] trash-cli: is a utility to prevent accidental deletion when using the rm -rf command

pkgfile: allows you to search for the command executed in the repository database

bind-tools: allows to get ISP, running 'ii' in terminal

bash-completion: allows bash autocomplete

#Upgrade

  • To update just open the terminal and run:

    updbashrc to update HyperTerm

    updbashrc_custom just to update file hyperterm/_custom.sh

#Screenshots

#Git

Alt git preview

#Themes

#default

Alt Bash por defecto

#joy

Alt Joy

#light_theme

Alt Light theme

#minterm

Alt Min term

#pure

Alt Pure

#simple

Alt Simple

#special

Alt Special

[!TIP] The theme is configurable from file $HOME/.hyperterm/_custom.sh

#Uninstall

#Semi-automatic

  1. Download file uninstall.sh:

     $ curl -Ls https://git.fridu.us/heckyel/hyperterm/raw/branch/master/uninstall.sh -o "$HOME/uninstall.sh"
    
  2. Run file uninstall.sh:

     $ bash "$HOME/uninstall.sh"
    
  3. Delete file uninstall.sh:

     $ rm -v "$HOME/uninstall.sh"
    

#Manual

If you want to leave your computer as it was, delete the files copied from step 3 with:

$ rm -vrf "$HOME/{.hyperterm/,.bashrc}"

and restore the *.bak files from step 1 by running:

$ for f in .bashrc .bash_aliases .bash_profile; do cp -v "$HOME/$f.bak" "$HOME/$f"; done

#Hacking

See HACKING.md

#Contributors

HyperTerm contributors can be found in the AUTHORS file

#License

This work is licensed under the GNU GPLv3+