From 8acf1fae9a0b9aa2b434de66e12eedd55472818f Mon Sep 17 00:00:00 2001 From: tomit4 Date: Tue, 31 May 2022 20:27:34 -0700 Subject: [PATCH] added ctype.h notation --- artix_face | Bin 6755 -> 0 bytes bashrc_laptop.txt | 240 ------------------------- unix_programming_environment/ctype.txt | 13 ++ 3 files changed, 13 insertions(+), 240 deletions(-) delete mode 100644 artix_face delete mode 100644 bashrc_laptop.txt create mode 100644 unix_programming_environment/ctype.txt diff --git a/artix_face b/artix_face deleted file mode 100644 index eb9b9be22bc956756137d3561adc01eb2c447efb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6755 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 FV1nx?>ZJex diff --git a/bashrc_laptop.txt b/bashrc_laptop.txt deleted file mode 100644 index a1e5f209..00000000 --- a/bashrc_laptop.txt +++ /dev/null @@ -1,240 +0,0 @@ -# -# ~/.bashrc -# -neofetch - -# create custom env variables: -export CPROJ="/home/brian/Documents/Code/python/python_crash_course/projects/learning_log" -# custom BROWSER env for ddgr: -#export BROWSER=firefox-developer-edition -export BROWSER=links - - #enable vi keybindings in terminal and terminal applications -set -o vi - -# but keep ctrl l as the clear screen command -bind -m vi-command 'Control-l: clear-screen' -bind -m vi-insert 'Control-l: clear-screen' - -# clears the history completely upon loading bash -cat /dev/null > ~/.bash_history && history -c - -[[ $- != *i* ]] && return - -colors() { - local fgc bgc vals seq0 - - printf "Color escapes are %s\n" '\e[${value};...;${value}m' - printf "Values 30..37 are \e[33mforeground colors\e[m\n" - printf "Values 40..47 are \e[43mbackground colors\e[m\n" - printf "Value 1 gives a \e[1mbold-faced look\e[m\n\n" - - # foreground colors - for fgc in {30..37}; do - # background colors - for bgc in {40..47}; do - fgc=${fgc#37} # white - bgc=${bgc#40} # black - - vals="${fgc:+$fgc;}${bgc}" - vals=${vals%%;} - - seq0="${vals:+\e[${vals}m}" - printf " %-9s" "${seq0:-(default)}" - printf " ${seq0}TEXT\e[m" - printf " \e[${vals:+${vals+$vals;}}1mBOLD\e[m" - done - echo; echo - done -} - -[ -r /usr/share/bash-completion/bash_completion ] && . /usr/share/bash-completion/bash_completion - -# Change the window title of X terminals -case ${TERM} in - xterm*|rxvt*|Eterm*|aterm|kterm|gnome*|interix|konsole*) - PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME%%.*}:${PWD/#$HOME/\~}\007" ' - - ;; - screen*) - PROMPT_COMMAND='echo -ne "\033_${USER}@${HOSTNAME%%.*}:${PWD/#$HOME/\~}\033\\" ' - ;; -esac - -use_color=true - -# Set colorful PS1 only on colorful terminals. -# dircolors --print-database uses its own built-in database -# instead of using /etc/DIR_COLORS. Try to use the external file -# first to take advantage of user additions. Use internal bash -# globbing instead of external grep binary. -safe_term=${TERM//[^[:alnum:]]/?} # sanitize TERM -match_lhs="" -[[ -f ~/.dir_colors ]] && match_lhs="${match_lhs}$(<~/.dir_colors)" -[[ -f /etc/DIR_COLORS ]] && match_lhs="${match_lhs}$(/dev/null \ - && match_lhs=$(dircolors --print-database) -[[ $'\n'${match_lhs} == *$'\n'"TERM "${safe_term}* ]] && use_color=true - -if ${use_color} ; then - # Enable colors for ls, etc. Prefer ~/.dir_colors #64489 - if type -P dircolors >/dev/null ; then - if [[ -f ~/.dir_colors ]] ; then - eval $(dircolors -b ~/.dir_colors) - elif [[ -f /etc/DIR_COLORS ]] ; then - eval $(dircolors -b /etc/DIR_COLORS) - fi - fi - - if [[ ${EUID} == 0 ]] ; then - PS2='\[\033[01;31m\][\h\[\033[01;36m\] \W\[\033[01;31m\]]\$\[\033[00m\] ' - else - PS1='\[\033[01;32m\][\u@\h\[\033[01;37m\] \W\[\033[01;32m\]]\$\[\033[00m\] ' - fi - - alias ls='ls --color=auto' - alias grep='grep --colour=auto' - alias egrep='egrep --colour=auto' - alias fgrep='fgrep --colour=auto' -else - if [[ ${EUID} == 0 ]] ; then - # show root@ when we don't have colors - PS1='\u@\h \W \$ ' - else - PS1='\u@\h \w \$ ' - fi -fi - -unset use_color safe_term match_lhs sh - -alias cp="cp -i" # confirm before overwriting something -alias df='df -h' # human-readable sizes -alias free='free -m' # show sizes in MB -alias np='nano -w PKGBUILD' -alias more=less - -xhost +local:root > /dev/null 2>&1 - -complete -cf sudo - -# Bash won't get SIGWINCH if another process is in the foreground. -# Enable checkwinsize so that bash will check the terminal size when -# it regains control. #65623 -# http://cnswww.cns.cwru.edu/~chet/bash/FAQ (E11) -shopt -s checkwinsize - -# No need to type cd when changing directories. -shopt -s autocd -# No need to have capitalization correct -shopt -s cdspell - -shopt -s expand_aliases - -# export QT_SELECT=4 - -# Enable history appending instead of overwriting. #139609 -shopt -s histappend - -# -# # ex - archive extractor -# # usage: ex -ex () -{ - if [ -f $1 ] ; then - case $1 in - *.tar.bz2) tar xjf $1 ;; - *.tar.gz) tar xzf $1 ;; - *.bz2) bunzip2 $1 ;; - *.rar) unrar x $1 ;; *.gz) gunzip $1 ;; - *.tar) tar xf $1 ;; - *.tbz2) tar xjf $1 ;; - *.tgz) tar xzf $1 ;; - *.zip) unzip $1 ;; - *.Z) uncompress $1;; - *.7z) 7z x $1 ;; - *) echo "'$1' cannot be extracted via ex()" ;; - esac - else - echo "'$1' is not a valid file" - fi -} - -# Formats history command with dates/times -HISTTIMEFORMAT="%d/%m/%y %T " - -# Displays current git branch if there is any and also styles bash prompt -export PS1='\[\033[01;32m\][\u@\h\[\033[01;37m\] \W\[\033[01;32m\]]\$\033[01;37m\] $(git branch 2>/dev/null | grep '^*' | colrm 1 2)\n\033[01;32m└─▶ \033[37m' - -# Custom Bash Commands -alias .="cd" -alias home="xclear && cd /home/brian && clear && nf && history -c" -alias docs="cd ~/Documents" -alias down="cd ~/Downloads" -alias pics="cd ~/Pictures" -alias music="cd ~/Music" -alias vids="cd ~/Videos" -alias notes="cd ~/Documents/notes" -alias config="cd ~/.config" -alias cache="cd ~/.cache" -alias Code="cd ~/Documents/Code" -alias cplus="cd ~/Documents/Code/cpp" -alias js="cd ~/Documents/Code/javascript" -alias py="cd ~/Documents/Code/python" -alias ls="ls -liasSh --color=auto" -alias {ex,esc}="exit" -alias {his,hist}="history" -alias bluepill="cmatrix -bm -C cyan" -alias redpill="cmatrix -bm -C red" -alias nf="neofetch" -alias btop="xfce4-terminal --geometry=142x57+0+0 -x btop" -alias {firefox,ff}="firefox-developer-edition &" -alias {sq,sql,sqlite}="sqlcipher" -alias view="viewnior" -alias serve="live-server" -alias tree="tree -ad -L 3 --prune -C" -alias {nv,nvi}="nvim" -alias {mymux,memux,mmux}="tmux new-session \; send-keys 'nvim' C-m\; split-window -v -p 3\; send-keys 'clear && source 11_env/bin/activate' C-m\; split-window -h -p 14\; send-keys 'clear && ddgr' C-m\; select-pane -t 0\;" -alias {cproj,mproj,myproj}="cd '$CPROJ' && mmux" -alias tls="tmux ls" -alias ta="tmux a -t" -alias tkill="tmux kill-ses -t" -alias {mi,mic}="micro" -alias {mysql,maria,mdb}="mariadb" -alias {ss,wi,ssid}="doas iw wlan0 scan | grep SSID" -alias {ov,ovpn}="doas openvpn --config ~/.config/protonvpn/protonvpn_configs/us-free-02.protonvpn.com.udp.ovpn --auth-user-pass ~/.config/protonvpn/protonvpn.txt" -alias {pvpn,pv}="doas protonvpn c US-FREE#1 -p UDP" -alias {pvdown,pvpnd,pvd}="doas protonvpn d" -alias git-a="git add" -alias git-c="git commit -m" -alias git-p="git push" -alias xsel="xclip -sel clip" -alias catx="cat | xclip -sel clip" -alias xclear="echo '' | xclip && xclip -selection clipboard /dev/null" -alias {mop,market,stonks,stocks}="cd ~/aur_packages/mop && go run ./cmd/mop/main.go" -alias ddgr="ddgr -n 25" -alias {ddg,duck}="links https://www.duckduckgo.com" -alias searx="links https://www.searx.bar" -alias {vlc,mpl}="mplayer" -alias {muse,musik,cmu}="cmus" -alias {hp,headphones}="pactl set-default-sink alsa_output.usb-FIIO_FiiO_USB_DAC-E10-01.analog-stereo" -alias {sp,speakers}="pactl set-default-sink alsa_output.pci-0000_0a_00.4.analog-stereo" -alias pulse="pamixer --set-volume" -alias {mu,mt,mute}="pamixer -t" -alias ytdl="youtube-dl" -alias thinkorswim="~/thinkorswim/thinkorswim &" -alias {cl,cls}="clear" -alias shutdown="doas shutdown -h now" -alias reboot="doas reboot" -alias log="xfce4-session-logout --logout:wq" -alias curltime="curl -w \"@$HOME/Documents/notes/curl-format.txt\" -o /dev/null -s" -alias ipaddr="curl ifconfig.me" -alias killport="fuser -k" -alias rmorphans="sudo pacman -Rs $(pacman -Qdtq)" -alias rm="rm -i" -alias {doasedit,sudoedit}="doas rnano" -alias shred="shred -uz" - -export EDITOR=nvim -export PATH="$PATH:$GOPATH/bin" -[ -f ~/.fzf.bash ] && source ~/.fzf.bash diff --git a/unix_programming_environment/ctype.txt b/unix_programming_environment/ctype.txt new file mode 100644 index 00000000..2430cc83 --- /dev/null +++ b/unix_programming_environment/ctype.txt @@ -0,0 +1,13 @@ +----------------------------- Table 6.1 ----------------------------- + +isalpha(c) alphabetic: a-z A-Z +isupper(c) upper case: A-Z +islower(c) lower case: a-z +isdigit(c) digit: 0-9 +isxdigit(c) hexadecimal digit: 0-9 a-f A-F +isalnum(c) alphabetic or digit +isspace(c) blank, tab, newline, vertical tab, formfeed, return +ispunct(c) not alphanumeric or control or space +isprint(c) printable: any graphic +iscntrl(c) control character: 0 <= c < 040 "" c == 0177 +isascii(c) ASCII character: 0 <= c <= 0177