dotfiles/bashrc: Fix git links

This commit is contained in:
David Thurstenson 2024-03-07 17:48:14 -06:00
parent e724dc2a35
commit 7c115c39f7
1 changed files with 20 additions and 20 deletions

View File

@ -8,11 +8,11 @@ draft: false
Source: https://git.thurstylark.com/vcsh/bashrc.git Source: https://git.thurstylark.com/dotfiles/bashrc.git
## Profile ## Profile
https://git.thurstylark.com/vcsh/bashrc.git/tree/.bash_profile https://git.thurstylark.com/dotfiles/bashrc/src/branch/master/.bash_profile
Bash chooses which dotfile to source based on how it gets run. If starting from a login shell, `~/.bash_profile` will get sourced, but if there's not a command in there to source your `~/.bashrc`, you may find yourself having to `exec bash` after starting bash. This can be fixed by adding the following line to your `~/.bash_profile`: Bash chooses which dotfile to source based on how it gets run. If starting from a login shell, `~/.bash_profile` will get sourced, but if there's not a command in there to source your `~/.bashrc`, you may find yourself having to `exec bash` after starting bash. This can be fixed by adding the following line to your `~/.bash_profile`:
@ -33,7 +33,7 @@ esac
## Main bashrc ## Main bashrc
https://git.thurstylark.com/vcsh/bashrc.git/tree/.bashrc https://git.thurstylark.com/dotfiles/bashrc/src/branch/master/.bashrc
Things started getting a little too expansive for a single file, so I split off relevant sections into their own files. Now all my individual utilities have their own file, making troubleshooting and adding functionality much easier. You can find info for each file and what it does in its own section on this page. Things started getting a little too expansive for a single file, so I split off relevant sections into their own files. Now all my individual utilities have their own file, making troubleshooting and adding functionality much easier. You can find info for each file and what it does in its own section on this page.
@ -61,7 +61,7 @@ This is where all the other utilities, aliases, and functions get pulled in. Any
for f in ~/.bashrc.d/*.bash; do source "$f"; done for f in ~/.bashrc.d/*.bash; do source "$f"; done
``` ```
This also removes the need for the local bashrc sourcing that I [had in this file previously](https://git.thurstylark.com/vcsh/bashrc.git/tree/.bashrc?id=30c53ca7224b583ed5068038b697653810e3b94b#n45). If that functionality is needed, simply make a new script in `~/.bashrc.d/` and don't track it with `vcsh`. This also removes the need for the local bashrc sourcing that I [had in this file previously](https://git.thurstylark.com/dotfiles/bashrc/src/branch/master/.bashrc?id=30c53ca7224b583ed5068038b697653810e3b94b#n45). If that functionality is needed, simply make a new script in `~/.bashrc.d/` and don't track it with `dotfiles`.
Ordering can be done by adding numbers to the beginning of filenames. For example: `10-prompt.sh`. Currently, nothing that I use requires that kind of functionality. Ordering can be done by adding numbers to the beginning of filenames. For example: `10-prompt.sh`. Currently, nothing that I use requires that kind of functionality.
@ -69,7 +69,7 @@ Ordering can be done by adding numbers to the beginning of filenames. For exampl
## Prompt ## Prompt
https://git.thurstylark.com/vcsh/bashrc.git/tree/.bashrc.d/12-prompt.bash https://git.thurstylark.com/dotfiles/bashrc/src/branch/master/.bashrc.d/12-prompt.bash
I originally built my prompt using http://bashrcgenerator.com and, while it's a nice tool for visually building a prompt, it has several limitations on what you're able to create with it. But more importantly to me, it generates a rediculously long string, defines and resets color for every single character, uses both a color and bold escape sequence to use light/bright colors, mixes raw escape sequences and subshells running tput, and as a result is utterly unreadable and unmaintainable. I originally built my prompt using http://bashrcgenerator.com and, while it's a nice tool for visually building a prompt, it has several limitations on what you're able to create with it. But more importantly to me, it generates a rediculously long string, defines and resets color for every single character, uses both a color and bold escape sequence to use light/bright colors, mixes raw escape sequences and subshells running tput, and as a result is utterly unreadable and unmaintainable.
@ -81,7 +81,7 @@ I'm not completely happy with this solution because it causes each of the tput s
## Environment ## Environment
https://git.thurstylark.com/vcsh/bashrc.git/tree/.bashrc.d/11-env.bash https://git.thurstylark.com/dotfiles/bashrc/src/branch/master/.bashrc.d/11-env.bash
Here is where I set a few environment variables that are useful in one way or another, such as `HISTCONTROL`, `EDITOR`, `LS_COLORS`, and `LIBVIRT_DEFAULT_URI`. Here is where I set a few environment variables that are useful in one way or another, such as `HISTCONTROL`, `EDITOR`, `LS_COLORS`, and `LIBVIRT_DEFAULT_URI`.
@ -89,7 +89,7 @@ Here is where I set a few environment variables that are useful in one way or an
## Aliases ## Aliases
https://git.thurstylark.com/vcsh/bashrc.git/tree/.bashrc.d/10-alias.bash https://git.thurstylark.com/dotfiles/bashrc/src/branch/master/.bashrc.d/10-alias.bash
Most of these are simple creature comforts and are commented with sufficient explanation. Most of these are simple creature comforts and are commented with sufficient explanation.
@ -97,7 +97,7 @@ Most of these are simple creature comforts and are commented with sufficient exp
## Pkgfile as `command_not_found_handle()` ## Pkgfile as `command_not_found_handle()`
https://git.thurstylark.com/vcsh/bashrc.git/tree/.bashrc.d/pkgfile.bash https://git.thurstylark.com/dotfiles/bashrc/src/branch/master/.bashrc.d/pkgfile.bash
This sets up `bash`'s `command_not_found_handle()` functionality so that when a command cannot be found in `PATH`, it will use `pkgfile` to check for that command in its databases, which are derived from the [same databases](https://wiki.archlinux.org/title/Pacman#Search_for_a_package_that_contains_a_specific_file) that `pacman -F` uses. This sets up `bash`'s `command_not_found_handle()` functionality so that when a command cannot be found in `PATH`, it will use `pkgfile` to check for that command in its databases, which are derived from the [same databases](https://wiki.archlinux.org/title/Pacman#Search_for_a_package_that_contains_a_specific_file) that `pacman -F` uses.
@ -107,7 +107,7 @@ To keep these databases updated, `pkgfile` ships [a systemd timer](https://wiki.
## Colored man Pages ## Colored man Pages
https://git.thurstylark.com/vcsh/bashrc.git/tree/.bashrc.d/colored-man-pages.bash https://git.thurstylark.com/dotfiles/bashrc/src/branch/master/.bashrc.d/colored-man-pages.bash
Some color changes in `man` are almost essential for readability for me, so I define my own. Some color changes in `man` are almost essential for readability for me, so I define my own.
@ -117,7 +117,7 @@ This can be replicated for any similar program that uses `less` as its pager.
## Screenshot ## Screenshot
https://git.thurstylark.com/vcsh/bashrc.git/tree/.bashrc.d/shot.bash https://git.thurstylark.com/dotfiles/bashrc/src/branch/master/.bashrc.d/shot.bash
`shot()` used to be much more complicated, but after moving to sway, I found that I couldn't be arsed to reimplement all of its former functionality. It turned out that the majority of the time, I want to select a region, and put it on stdout to be dealt with how I please. If I find that full-screen or all-screen screenshots are more useful to me in the future, I'll cross that bridge when I come to it. `shot()` used to be much more complicated, but after moving to sway, I found that I couldn't be arsed to reimplement all of its former functionality. It turned out that the majority of the time, I want to select a region, and put it on stdout to be dealt with how I please. If I find that full-screen or all-screen screenshots are more useful to me in the future, I'll cross that bridge when I come to it.
@ -126,7 +126,7 @@ https://git.thurstylark.com/vcsh/bashrc.git/tree/.bashrc.d/shot.bash
## Countdown ## Countdown
https://git.thurstylark.com/vcsh/bashrc.git/tree/.bashrc.d/countdown.bash https://git.thurstylark.com/dotfiles/bashrc/src/branch/master/.bashrc.d/countdown.bash
Found this little function when I wanted to add functionality to `shot()`. It takes an integer as an argument, then counts down that number of seconds visually. Found this little function when I wanted to add functionality to `shot()`. It takes an integer as an argument, then counts down that number of seconds visually.
@ -136,7 +136,7 @@ I no longer use `countdown()` from `shot()` directly, but sometimes will in some
## cmdcopy ## cmdcopy
https://git.thurstylark.com/vcsh/bashrc.git/tree/.bashrc.d/cmdcopy.bash https://git.thurstylark.com/dotfiles/bashrc/src/branch/master/.bashrc.d/cmdcopy.bash
This tool runs the specified command, capturing `stdout` and `stderr`, adds the specified command to the beginning of the output, and sends the result to stdout. The output of this command should be suitable to pipe directly into a paste service such as [ix.io](http://ix.io) when seeking support via IRC or other text-based method. This tool runs the specified command, capturing `stdout` and `stderr`, adds the specified command to the beginning of the output, and sends the result to stdout. The output of this command should be suitable to pipe directly into a paste service such as [ix.io](http://ix.io) when seeking support via IRC or other text-based method.
@ -144,7 +144,7 @@ This tool runs the specified command, capturing `stdout` and `stderr`, adds the
## fbc ## fbc
https://git.thurstylark.com/vcsh/bashrc.git/tree/.bashrc.d/fbc.bash https://git.thurstylark.com/dotfiles/bashrc/src/branch/master/.bashrc.d/fbc.bash
In a similar vein to `cmdcopy()`, this tool runs the specified command, pipes `stdout` and `stderr` directly to [fb-client](https://git.server-speed.net/users/flo/fb/), and sets the specified command as the name of the paste using `-n`. In a similar vein to `cmdcopy()`, this tool runs the specified command, pipes `stdout` and `stderr` directly to [fb-client](https://git.server-speed.net/users/flo/fb/), and sets the specified command as the name of the paste using `-n`.
@ -152,7 +152,7 @@ In a similar vein to `cmdcopy()`, this tool runs the specified command, pipes `s
## Vactivate ## Vactivate
https://git.thurstylark.com/vcsh/bashrc.git/tree/.bashrc.d/vactivate.bash https://git.thurstylark.com/dotfiles/bashrc/src/branch/master/.bashrc.d/vactivate.bash
I started needing more than one python virtualenv, and I wanted easy access to my own specific file structure. Additionally, I wanted the ability to deactivate the venv like I would exit a child shell. This is the solution that I came up with. I started needing more than one python virtualenv, and I wanted easy access to my own specific file structure. Additionally, I wanted the ability to deactivate the venv like I would exit a child shell. This is the solution that I came up with.
@ -162,7 +162,7 @@ A caveat to this is that the prompt modification that venv usually applies is no
## FontFind ## FontFind
https://git.thurstylark.com/vcsh/bashrc.git/tree/.bashrc.d/fontfind.bash https://git.thurstylark.com/dotfiles/bashrc/src/branch/master/.bashrc.d/fontfind.bash
Sometimes you just need to figure out what font provides a specific character. This function provides that solution. Sometimes you just need to figure out what font provides a specific character. This function provides that solution.
@ -170,7 +170,7 @@ Sometimes you just need to figure out what font provides a specific character. T
## Resolve IP Addresses to MAC Addresses with `arping` ## Resolve IP Addresses to MAC Addresses with `arping`
https://git.thurstylark.com/vcsh/bashrc.git/tree/.bashrc.d/arpresolve.bash https://git.thurstylark.com/dotfiles/bashrc/src/branch/master/.bashrc.d/arpresolve.bash
This utility comes in handy when I just want a MAC address as a string without having to dig through `nmap` output for it. This utility comes in handy when I just want a MAC address as a string without having to dig through `nmap` output for it.
@ -180,7 +180,7 @@ Unfortunately not all devices are cooperative to this method, so ymmv.
## Get Dell Service Tag ## Get Dell Service Tag
https://git.thurstylark.com/vcsh/bashrc.git/tree/.bashrc.d/getdst.bash https://git.thurstylark.com/dotfiles/bashrc/src/branch/master/.bashrc.d/getdst.bash
I work with Dell machines a lot, and when dealing with hardware problems, it's nice to have the service tag handy. Lucky for me, the service tag is easily retrieveable using `dmidecode(1)`, so I made a function for it. I work with Dell machines a lot, and when dealing with hardware problems, it's nice to have the service tag handy. Lucky for me, the service tag is easily retrieveable using `dmidecode(1)`, so I made a function for it.
@ -190,7 +190,7 @@ As an added bonus, the `-l` option will print the url for that product's support
## `sing()` and `note2freq()` ## `sing()` and `note2freq()`
https://git.thurstylark.com/vcsh/bashrc.git/tree/.bashrc.d/sing.bash https://git.thurstylark.com/dotfiles/bashrc/src/branch/master/.bashrc.d/sing.bash
I was having trouble writing music scripts for the pcspkr because all the examples that I could find only used frequency numbers as arguments to `beep`, and it was difficult to map frequency numbers to musical note letters in the process of making my own tunes. `note2freq()` solves this issue by taking a musical note in the form of `<letter>[accidental]<octave>`, where: I was having trouble writing music scripts for the pcspkr because all the examples that I could find only used frequency numbers as arguments to `beep`, and it was difficult to map frequency numbers to musical note letters in the process of making my own tunes. `note2freq()` solves this issue by taking a musical note in the form of `<letter>[accidental]<octave>`, where:
@ -209,7 +209,7 @@ Both of these in tandem make beep tune writing way easier.
## Triumph ## Triumph
https://git.thurstylark.com/vcsh/bashrc.git/tree/.bashrc.d/triumph.bash https://git.thurstylark.com/dotfiles/bashrc/src/branch/master/.bashrc.d/triumph.bash
This function is both an example of how `sing()` is used, as well as a tool in its own right. This function is both an example of how `sing()` is used, as well as a tool in its own right.
@ -221,6 +221,6 @@ Proper tune selection depends on `triumph()` being able to read the exit code fr
## Weechat ## Weechat
https://git.thurstylark.com/vcsh/bashrc.git/tree/.bashrc.d/weechat.bash https://git.thurstylark.com/dotfiles/bashrc/src/branch/master/.bashrc.d/weechat.bash
See: [Weechat](eechat.md). See: [Weechat](eechat.md).