# Sharks - Navigation `/home/artix/.zprofile` - Profile file that runs on login and includes enviromental variables and other stuff. `/home/artix/.config/` - Configurations obviously. `/home/artix/.local/src` - Compiled software utilities. `/home/artix/.local/bin/` - All scripts that feature a automated workflow. `/home/artix/.local/bin/statusbar` - All configuration Files for [dmenu](/home/artix/.local/bin/statusbar) the statusbar. # Sharks - scripts, commands and bindings Sharks pre-installed utilities are in alignment to the unixcism. Directorys of Scripts and commands are indicaded. [TOC] ## autostart: #### remaps Remaps keys on startup, set on `/home/artix/.local/bin/remaps` #### dmenupass Using dmenu as a password prompter, set on `/home/artix/.local/bin/dmenupass` ## scripts: #### maimpick: `shift PrintScreen` - Make screenshot #### backup `backup ` - will make a compressed backup of given directory #### compiler Compiles .tex. groff (.mom, .ms), .rmd, .md, .org. Opens .sent files as sent presentations #### displayselect `displayselect` - A UI for detecting and selecting all displays #### dmenuhandler `dmenuhandler ` - Give it any link and dmenu outputs programms to open it #### dmenunicode `dmenuunicode` - The famous "*get a menu of emojis to copy*" script #### getkeys `getkeys ` - Outputs all shotcut keys of given utility, configurable man alternative #### noisereduce `noisereduce ` - Reduces background noices of given video file #### slider `slider -i ` - Give a file with images and timecodes and creates a video slideshow of them #### mounter `no argument` - Can mount decrypted drives or usb or anything #### rssadd `rssadd ` - Add rss-feeds to newsboat from the command line #### transadd `transadd ` - Add torrents to transmission from the command line ## bindings: #### lfub: `y` - copy `p` - paste `a` - create `A` - mkdir `en` - open `bs` - go back one directory `D` - delete `C` - copy `X` - Cut `P` - paste `r` - rename `/` - search `q` - quit `m` - mark `h`, `j`, `k` ,`l` - to move around and enter directories and open files. `g`, `G`, ``, `` - movement like in vim. `w` - drop into a terminal in the current directory. `` in the terminal, you will return to lf `` - new directory `V` - new file with `nvim` `sp` - select files: `d` - cut files to lf's clipboard `y` - yank files to lf's clipboard `p` - paste/move copied/cut files `C` - copy selected files to a bookmarked directory `M` - move selected files to a bookmarked directory `Y` - copy text names of selected files to the system clipboard. **Renaming files:** `o` - rename the selected file `A` - rename the selected file, starting at end `a` - rename the selected file, starting after the extension `I` - rename the selected file, starting at beginning `i` - rename the selected file, starting before extension `B` - bulk rename: use vidir to mass edit all files in the directory `s` - sort files by a different metric `z` - show extra data or hidden files #### st (zsh): *includes* `.config/shell/` `` - faster scroll `` - decrease or increase font size `` - copy selected text to clipboard `` - clear terminal `` - paste clipboard contents `` - open a link `` - copy a link `` - copy the output from a recent command `` - decrease/increase transparency `` - clear-screen `` - beginning-of-line #### vim: *mapping*: `` - wechsle zum Fenster links `` - wechsle zum Fenster unten `` - wechsle zum Fenster oben `` - wechsle zum Fenster rechts `<, n>` - öffne oder schließe NERDTree `b` - öffne die Bibliotheksdatei in einem vertikalen Split `,r` - öffne die Referenzdatei in einem vertikalen Split `,f` - aktiviere den Goyo-Modus für fokussiertes Schreiben `,h` - toggle die Anzeige der unteren Statusleiste `,o` - toggle die Rechtschreibprüfung (Englisch) `Q` - ersetze Ex-Mode mit dem `gq` Befehl (Formatierung) `S` - ersetze alle Vorkommen eines Suchmusters in der Datei `,,` - füge `<++>` ein und platziere den Cursor an der richtigen Stelle für den nächsten Text `,c` - speichere die Datei und kompiliere das Dokument (z.B. LaTeX, Markdown) `,p` - öffne das entsprechende PDF oder HTML-Dokument der aktuellen Datei `,s` - überprüfe die aktuelle Datei mit `shellcheck` `w!!` - speichere eine Datei mit Root-Rechten `,v` - öffne den Vimwiki-Index `,`d - toggle DeadKeys `<, i>` - toggle IPA (International Phonetic Alphabet) Eingabe `<, q>` - toggle Prosa-Modus `Q` - ersetze Ex-Mode mit dem `gq` Befehl (Formatierung) `S` - ersetze alle Vorkommen eines Suchmusters in der Datei `,,` - füge `<++>` ein und platziere den Cursor an der richtigen Stelle für den nächsten Text `,`c - speichere die Datei und kompiliere das Dokument (z.B. LaTeX, Markdown) `,`p - öffne das entsprechende PDF oder HTML-Dokument der aktuellen Datei *normal-mode*: `k` - up `h` - left `l` - right `j` - down `w` - next start of word `W` - next start of whitespace-delimited word `e` - next end of word `E` - next end of whitespace-delimited word `b` - previous start of word `B` - previous start of whitespace-delimited word `:0` - start of line `:$` - end of line `gg` - go to first line in file `G` - go to end of file `gk` - move down one displayed line `gj` - move up one displayed line `a` - append after the cursor `A` - append at the end of the line *insert-mode*: `i` - insert before the cursor `I` - insert at the beginning of the line `o` - create a new line under the cursor `O` - create a new line above the cursor `R` - enter insert mode but replace instead of inserting chars `u` - undo `yy` - yank (copy) a line `y {motion}` - yank text that {motion} moves over `p` - paste after cursor `P` - paste before cursor `x` - delete a character `dd` - delete a line #### dwm: `` – cycle thru windows `` - drag window around (floating mode) `` – un-/make a window float `` - change window size `` – make selected window the master `` – change width of master window `` – increase/decrease gaps (not permament) `` – toggle gaps (not permament) `` - send window to workspace 1-9 `` - take window with you to workspace 1-9 `` – toggle statusbar `` - fullscreen a window `` - cloze a window **utilities:** `` - kdenlive `` - firefox `` - dolphin `` - st **dwmblocks:** `` - agenda `` - mail `` - readme `` - updater #### surf: `` - New tab `` - Next higher number tab `` - Next lower number tab Ctrl+Tab: Toggle between last 2 tabs Ctrl+1: Switch to tab 1 Ctrl+2: Switch to tab 2 - Ctrl+3: Switch to tab 3, etc. - Ctrl+q: Close this tab - Ctrl+t: Tab picklist - Ctrl+g: Go to URL (field on screen's upper left (not the browser window) opens for you to type) - Ctrl+h: Previous page in history, like back button on other browsers - Ctrl+r: Refresh/reload. - Ctrl+-: Zoom out a little - Shift+Ctrl++: Zoom in a little - Shift+Ctrl+q: Normal zoom - Ctrl+g: Go to URL (field on screen's upper left (not the browser window) opens for you to type) - Ctrl+p: Go to URL in cut and paste clipboard - Ctrl+y: Put current website URL into cut and paste clipboard - Ctrl+h: Previous page in history, like back button on other browsers - Ctrl+l: Undo the last Ctrl+h (go later in history) - Ctrl+r: Refresh/reload from cache. - Ctrl+Shift+r: Refresh/reload *without* cache - Ctrl+-: Zoom out a little - Shift+Ctrl++: Zoom in a little - Shift+Ctrl+q: Normal zoom, and note that this might not be the zoom the browser opened with, if the browser was set to open with a non-normal zoom. - Ctrl+o: Toggle "view source" - Ctrl+j: Down a little - Ctrl+k: Up a little - Ctrl+Space: Down a lot - Ctrl+b: Up a lot - Ctrl+i: Scroll left a little - Ctrl+u: Scroll right a little - F11: Toggle fullscreen - Shift+Ctrl+b: Toggle scrollbars - Shift+Ctrl+g: Toggle geolocation #### gimp: `` - transfomieren `` - invertieren #### scrot: `` - make screenshot #### dfcitx: `` - Change global language input #### typora: `` - settings `` - search for input `` - convert selected text to code `` - convert to heading 1-6 #### mpv: `` - Zoom Out `` - Zoom In `o` - show progress `s` - Screenshot the current frame `S` - Cycle trough subtitels (.config/mpv/mpv.conf) `f` - toggle Fullscreen #### sxiv: `b` - hide bar `W` - fit image to window `<` - rotate image by 90 degrees. `?` - rotate image by 180 degrees. `+` - zoom Out `-` - zoom out `q` - quit sxiv #### zathura: `sp` - next page `D` - toggle double-page mode `r` - reload `R` - rotate `K` - zoom in `J` - zoom out `i` - invert colour `p` - print `g` - go to top `z` - zathura #### neomutt: `adduser mail -m -a mail bryan` - Add user bryan and add him to mail #### calibre `` - inhaltsverzeichnis `` - reload book #### audacity: `` - open keybindings menu `` - start recording `` - add new spur `` - export #### kdenlive `` - open keybindings menu `` - add subtitels `` - add helpline `` - render video `` - bulk select `` - cutting tool `` - un-/hide inhalt `` - un-/hide effects `` - un-/hide menubar `` - un-/hide effect configuration `` - zoom in `` - zoom out #### libreoffice: `` - open shortcut menu `` - select to beginning of line `` - buchstaben kleiner stellen `` - export directly as PDF `` - convert to heading 1-6 `` - optimal view #### goldendict: ` ` - opens word in goldendict `` - sends word to anki-deck ## commands: #### mv: `mv [filename]` - Rename file in cd #### rm: `rm [filename]` - Remove file `rm -r [directory]` - Remove directory #### ln: `ln -s a/directory/ ~/to/another` - Link a directory to another `sudo ln -s /home/script /usr/local/bin/script` - symlink script to global utitlites #### tar: `tar -czvf /var/backups/dokuwiki_pages_backup.tar.gz /var/www/dokuwiki/data/pages` - Erstelle ein Backup eines Directorys `tar -xzvf /var/backups/dokuwiki_pages_backup.tar.gz -C /var/www/dokuwiki/data/pages` - Spule das Backup ins Directory #### vim: `:%d` - delete everything in file `:%y` - copy everything in file #### adb: `adb backup -apk -noshared -all` - make backup of phone but without files `adb restore backup.ab` - Restore from backup #### man: `mandb` - aktualisiere Datenbank #### git: `git clone https://github.com/repository` - clone repository `git remote set-url origin git@github.com:marlonivo/example.git` - link your local-folder with server-repo `git-sync` - git pull --no-rebase origin main && git add . && git commit -m "Update" && git push origin main #### git-lfs: `git lfs install # in repo` - install lfs `git lfs track "file.txt"` - first track `git add .gitattributes` - then add this `git add file.txt` - then add the file `git commit -m "update"` - then commit `git push origin main` - then push #### php: `php -S localhost:8000` - start webserver on https://localhost:8000 #can be any number between 1-9999 #### ssh: `m-shh` - connect (as root) to marlonivo.xyz `ssh email@marlonivo.xyz` - connect (as mail) to marlonivo.xyz #### yt-dl: `yt [URL]` - download yt video from [URL] `yt-mp3 [URL]` - download audio of yt video from [URL] #### date: `date MMDDhhmmYYYY` - set time `date -u` - set time to utc #### rsync: *includes `.config/shell/aliasrc`:* `m-wesbite-sync` - push to marlonivo.xyz `s-website-sync` - push to sharks.marlonivo.xyz `d-website-pull` - pull from wiki.marlonivo.xyz `d-wesbite-push` - push to wiki.marlonivo.xyz `lib-push` - push to library.marlonivo.xyz #### sqlite: `CREATE TABLE tabelle` - create a new table called "tabelle" `ALTER TABLE tablle ADD COLUMN column_name TEXT;` - Add a column called column_name to "tabelle" `PRAGMA table_info(tabelle);` - look at the table called "tabelle" #### fdisk: `sudo fdisk` - start partitan manipulator #### artix: `useradd -G mail -m user` - Add a user called "user" to a group called "mail" `passwd [user]` - Give user a password `deluser user` - delete user #### pandoc: #### ffmpeg: `ffmpeg -i input.MP4 -vf "transpose=1" out.MP4` - Turn video 90 clockwise `ffmpeg -i track.mp3 -i cover.jpg -map 0:a -map 1:v -c:a copy -c:v mjpeg -metadata:s:v title="Album Cover" -metadata:s:v comment="Cover" output.mp3` - Give mp3 a cover `ffmpeg -i in.jpg -vf "transpose=1" output.jpg` - Turn picture 90 clockwise `ffmpeg -i in.MP4 -vf "scale=trunc(iw/10)*2:trunc(ih/10)*2" out.MP4` - compress video-quality to a fitfth `ffmpeg -i in.jpg -q:v 10 output.jpg` - Compress Picture (up to 31 Levels) `ffmpeg -i in.MP4 -vf "crop=iw-96:ih:96:0" out.MP4` - Crop video 5% on the left site `ffmpeg -f lavfi -i color=c=green:s=1280x720:d=80 -vf "drawtext=fontfile=/path/to/font.ttf:` - Create video with text `ffmpeg -i in.MP4 -ss 00:00:00 -t 00:00:60 -c copy out.MP4` - create mp4 with the first 60 seconds of input.mp4 `ffmpeg -i in.MP4 -map 0:v:0 -map 0:a:0 -c:v copy -c:a aac -b:a 192k out.MP4` - Extract only video and audio from mp4 #### pacman: `pacman -S [package]` - Install from Arch Repository `pacman -Syyu` - Update System & Packages `pacman -Rns $(pacman -Qdtq)` - Autoremove Reqiuerements that are no longer required `pacman -Qm` - List packages installed #### imagemagick `convert -density 300 input.pdf -quality 100 output.png` - hochauflösende konvertierung #### bluetoothctl: `power on` - turn bluetooth on `agent on` - set agent to on `default-agent` - set default-agent `scan on` - scan for available devices `dis/connect [XX:XX:XX:XX:XX:XX]` - dis/connect device