Final commit, ready for tagging
This commit is contained in:
parent
f6fe2d9c2d
commit
596a773dd2
11 changed files with 176 additions and 8 deletions
|
|
@ -322,9 +322,9 @@ up() {
|
||||||
cd ()
|
cd ()
|
||||||
{
|
{
|
||||||
if [ -n "$1" ]; then
|
if [ -n "$1" ]; then
|
||||||
builtin cd "$@" && ls
|
builtin cd "$@" && la
|
||||||
else
|
else
|
||||||
builtin cd ~ && ls
|
builtin cd ~ && la
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -22,7 +22,7 @@ tab_pos_msgwin=0
|
||||||
tab_label_length=1000
|
tab_label_length=1000
|
||||||
show_indent_guide=false
|
show_indent_guide=false
|
||||||
show_white_space=false
|
show_white_space=false
|
||||||
show_line_endings=false
|
show_line_endings=true
|
||||||
show_line_endings_only_when_differ=false
|
show_line_endings_only_when_differ=false
|
||||||
show_markers_margin=true
|
show_markers_margin=true
|
||||||
show_linenumber_margin=true
|
show_linenumber_margin=true
|
||||||
|
|
|
||||||
|
|
@ -1,14 +1,15 @@
|
||||||
[files]
|
[files]
|
||||||
recent_files=
|
recent_files=/home/matt/TCLI-Data-Repo/CMPFOR/Course-Documentation/CDD_COMFOR_Final_2016.txt;
|
||||||
recent_projects=
|
recent_projects=
|
||||||
current_page=0
|
current_page=0
|
||||||
|
FILE_NAME_0=16572;None;0;EUTF-8;1;1;0;%2Fhome%2Fmatt%2FTCLI-Data-Repo%2FCMPFOR%2FCourse-Documentation%2FCDD_COMFOR_Final_2016.txt;0;4
|
||||||
|
|
||||||
[project]
|
[project]
|
||||||
session_file=
|
session_file=
|
||||||
project_file_path=/home/matt/Projects
|
project_file_path=/home/matt/Projects
|
||||||
|
|
||||||
[geany]
|
[geany]
|
||||||
treeview_position=241
|
treeview_position=0
|
||||||
msgwindow_position=794
|
msgwindow_position=794
|
||||||
geometry=0;0;1906;1026;1;
|
geometry=0;0;1906;1026;1;
|
||||||
sidebar_page=0
|
sidebar_page=0
|
||||||
|
|
|
||||||
|
|
@ -17,6 +17,7 @@ monitor=,preferred,auto,1
|
||||||
# Set programs that you use
|
# Set programs that you use
|
||||||
$terminal = kitty
|
$terminal = kitty
|
||||||
$fileManager = dolphin
|
$fileManager = dolphin
|
||||||
|
$emoji = rofi -mode emoji -show emoji -kb-secondary-copy '' -kb-custom-1 Ctrl+c
|
||||||
$menu = ~/.config/rofi/launcher.sh
|
$menu = ~/.config/rofi/launcher.sh
|
||||||
#$menu = ~/.config/rofi/launchers/type-2/launcher.sh
|
#$menu = ~/.config/rofi/launchers/type-2/launcher.sh
|
||||||
#$menu = wofi --show drun
|
#$menu = wofi --show drun
|
||||||
|
|
@ -228,6 +229,7 @@ bind = $mainMod, O, layoutmsg, swapwithmaster
|
||||||
bind = $mainMod, P, pseudo, # dwindle
|
bind = $mainMod, P, pseudo, # dwindle
|
||||||
bind = $mainMod, J, togglesplit, # dwindle
|
bind = $mainMod, J, togglesplit, # dwindle
|
||||||
|
|
||||||
|
bindd = $mainMod, period, Emoji selector, exec, $emoji
|
||||||
bindd = $mainMod, I, Switch between master/dwingle, exec, $HOME/.config/hypr/switchlayout.sh
|
bindd = $mainMod, I, Switch between master/dwingle, exec, $HOME/.config/hypr/switchlayout.sh
|
||||||
bindd = $mainMod, S, Launch menu to modify/create script, exec, autoscriptmenu
|
bindd = $mainMod, S, Launch menu to modify/create script, exec, autoscriptmenu
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -15,7 +15,7 @@ set -euo pipefail
|
||||||
|
|
||||||
EOM
|
EOM
|
||||||
|
|
||||||
chmod +x $SCRIPT_FILE
|
chmod +x "$SCRIPT_FILE"
|
||||||
fi
|
fi
|
||||||
$EDITOR $SCRIPT_FILE
|
$EDITOR "$SCRIPT_FILE"
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2,5 +2,5 @@
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
#selected=$(ls "$HOME/.local/bin" | tofi --prompt-text "Select script")
|
#selected=$(ls "$HOME/.local/bin" | tofi --prompt-text "Select script")
|
||||||
selected=$(find "$HOME/.local/bin" -maxdepth 1 -type f -exec basename {} \; | sort | wofi --dmenu --sort-order=alphabetical -p "Select Script: ")
|
selected=$(find -L "$HOME/.local/bin" -maxdepth 1 -type f -exec basename {} \; | sort | rofi -dmenu "Select Script: ")
|
||||||
autoscript "$selected"
|
autoscript "$selected"
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,12 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
|
if [ $# -eq 0 ]; then
|
||||||
|
echo "Error: No arguments provided."
|
||||||
|
echo "Usage: getpid <name_of_process>"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
srch="$1"
|
srch="$1"
|
||||||
|
|
||||||
ps -ef | awk -v this="$0" -v search="$srch" '{
|
ps -ef | awk -v this="$0" -v search="$srch" '{
|
||||||
|
|
|
||||||
3
scripts/.local/bin/menu'
Executable file
3
scripts/.local/bin/menu'
Executable file
|
|
@ -0,0 +1,3 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
11
scripts/.local/bin/rmscript
Executable file
11
scripts/.local/bin/rmscript
Executable file
|
|
@ -0,0 +1,11 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
# Check if at least one argument is provided
|
||||||
|
if [ $# -eq 0 ] || [ ! -e "$HOME/.local/bin/$1" ]; then
|
||||||
|
echo "Error: No script file provided or script does not exist."
|
||||||
|
echo "Usage: rmscript <SCRIPT_FILE>"
|
||||||
|
exit 1 # Exit with a non-zero status indicating an error
|
||||||
|
fi
|
||||||
|
|
||||||
|
rm -f "$HOME/.local/bin/$1" && echo "$1 erased."
|
||||||
8
scripts/.local/bin/rmscriptmenu
Executable file
8
scripts/.local/bin/rmscriptmenu
Executable file
|
|
@ -0,0 +1,8 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
selected=$(find -L "$HOME/.local/bin" -type f -exec basename {} \; | sort | rofi -dmenu -p "Select Script to delete: ")
|
||||||
|
|
||||||
|
[[ -z "$selected" ]] && exit
|
||||||
|
|
||||||
|
rmscript "$selected"
|
||||||
137
scripts/.local/bin/rofi-emoji
Executable file
137
scripts/.local/bin/rofi-emoji
Executable file
|
|
@ -0,0 +1,137 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
# Source: https://gist.github.com/Tadly/0741821d3694deaec1ee454a95c591fa
|
||||||
|
#
|
||||||
|
# Use rofi to pick emoji because that's what this
|
||||||
|
# century is about apparently...
|
||||||
|
#
|
||||||
|
# Requirements:
|
||||||
|
# rofi, xsel, xdotool, curl, xmllint
|
||||||
|
#
|
||||||
|
# Usage:
|
||||||
|
# 1. Download all emoji
|
||||||
|
# $ rofi-emoji --download
|
||||||
|
#
|
||||||
|
# 2. Run it!
|
||||||
|
# $ rofi-emoji
|
||||||
|
#
|
||||||
|
# Notes:
|
||||||
|
# * You'll need a emoji font like "Noto Emoji" or "EmojiOne".
|
||||||
|
# * Confirming an item will automatically paste it WITHOUT
|
||||||
|
# writing it to your clipboard.
|
||||||
|
# * Ctrl+C will copy it to your clipboard WITHOUT pasting it.
|
||||||
|
#
|
||||||
|
|
||||||
|
# Where to save the emojis file.
|
||||||
|
EMOJI_FILE="$HOME/.cache/emojis.txt"
|
||||||
|
|
||||||
|
# Urls of emoji to download.
|
||||||
|
# You can remove what you don't need.
|
||||||
|
URLS=(
|
||||||
|
'https://emojipedia.org/people/'
|
||||||
|
'https://emojipedia.org/nature/'
|
||||||
|
'https://emojipedia.org/food-drink/'
|
||||||
|
'https://emojipedia.org/activity/'
|
||||||
|
'https://emojipedia.org/travel-places/'
|
||||||
|
'https://emojipedia.org/objects/'
|
||||||
|
'https://emojipedia.org/symbols/'
|
||||||
|
'https://emojipedia.org/flags/'
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
function notify() {
|
||||||
|
if [ "$(command -v notify-send)" ]; then
|
||||||
|
notify-send "$1" "$2"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function download() {
|
||||||
|
notify "$(basename "$0")" 'Downloading all emoji for your pleasure'
|
||||||
|
|
||||||
|
echo "" > "$EMOJI_FILE"
|
||||||
|
|
||||||
|
for url in "${URLS[@]}"; do
|
||||||
|
echo "Downloading: $url"
|
||||||
|
|
||||||
|
# Download the list of emoji and remove all the junk around it
|
||||||
|
emojis=$(curl -s "$url" | \
|
||||||
|
xmllint --html \
|
||||||
|
--xpath '//ul[@class="emoji-list"]' - 2>/dev/null)
|
||||||
|
|
||||||
|
# Get rid of starting/closing ul tags
|
||||||
|
emojis=$(echo "$emojis" | head -n -1 | tail -n +1)
|
||||||
|
|
||||||
|
# Extract the emoji and its description
|
||||||
|
emojis=$(echo "$emojis" | \
|
||||||
|
sed -rn 's/.*<span class="emoji">(.*)<\/span> (.*)<\/a><\/li>/\1 \2/p')
|
||||||
|
|
||||||
|
echo "$emojis" >> "$EMOJI_FILE"
|
||||||
|
done
|
||||||
|
|
||||||
|
notify "$(basename "$0")" "We're all set!"
|
||||||
|
}
|
||||||
|
|
||||||
|
function rofi_menu() { # {{{
|
||||||
|
rofi -width 25 -lines 7 -dmenu -i -p 'emoji: ' \
|
||||||
|
-kb-row-tab '' \
|
||||||
|
-kb-row-select Tab \
|
||||||
|
-kb-custom-1 Ctrl+c
|
||||||
|
}
|
||||||
|
# }}}
|
||||||
|
|
||||||
|
function repeat() { # {{{
|
||||||
|
local rplc str="$1" count="$2"
|
||||||
|
rplc="$(printf "%${count}s")"
|
||||||
|
echo "${rplc// /"$str"}"
|
||||||
|
}
|
||||||
|
# }}}
|
||||||
|
|
||||||
|
function toclipboard() { # {{{
|
||||||
|
xclip -i -selection primary
|
||||||
|
xclip -o -selection primary | xclip -i -selection clipboard
|
||||||
|
}
|
||||||
|
# }}}
|
||||||
|
|
||||||
|
function display() {
|
||||||
|
local emoji line exit_code quantifier
|
||||||
|
|
||||||
|
emoji=$(cat "$EMOJI_FILE" | grep -v '#' | grep -v '^[[:space:]]*$')
|
||||||
|
line="$(echo "$emoji" | rofi_menu)"
|
||||||
|
exit_code=$?
|
||||||
|
|
||||||
|
line=($line)
|
||||||
|
last=${line[${#line[@]}-1]}
|
||||||
|
quantifier="${last:${#last}-1:1}"
|
||||||
|
if [[ ! "$quantifier" =~ [0-9] ]]; then
|
||||||
|
quantifier=1
|
||||||
|
fi
|
||||||
|
emoijs="$(repeat "${line[0]}" "$quantifier")"
|
||||||
|
|
||||||
|
if [ $exit_code == 0 ]; then
|
||||||
|
xdotool type --clearmodifiers "$emoijs"
|
||||||
|
echo -n "$emoijs" | toclipboard
|
||||||
|
elif [ $exit_code == 10 ]; then
|
||||||
|
echo -n "$emoijs" | toclipboard
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
# Some simple argparsing
|
||||||
|
if [[ "$1" =~ -D|--download ]]; then
|
||||||
|
download
|
||||||
|
exit 0
|
||||||
|
elif [[ "$1" =~ -h|--help ]]; then
|
||||||
|
echo "usage: $0 [-D|--download]"
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Download all emoji if they don't exist yet
|
||||||
|
if [ ! -f "$EMOJI_FILE" ]; then
|
||||||
|
download
|
||||||
|
fi
|
||||||
|
|
||||||
|
# display displays :)
|
||||||
|
display
|
||||||
|
|
||||||
Loading…
Add table
Reference in a new issue