Commit in a looong time
This commit is contained in:
parent
a5a3ae373c
commit
1f62bb41a7
20
bashrc
20
bashrc
|
@ -24,6 +24,9 @@ export JAVA_FONTS=/usr/share/fonts/TTF
|
||||||
export ANDROID_HOME=/opt/android-sdk
|
export ANDROID_HOME=/opt/android-sdk
|
||||||
export GOPATH=$HOME/.go
|
export GOPATH=$HOME/.go
|
||||||
export XDG_CONFIG_HOME=$HOME/.config
|
export XDG_CONFIG_HOME=$HOME/.config
|
||||||
|
export ARDUINO=/usr/share/arduino
|
||||||
|
export ARDUINO_DIR=$ARDUINO
|
||||||
|
export ARDMK_VENDOR=archlinux-arduino
|
||||||
|
|
||||||
# ALIASES
|
# ALIASES
|
||||||
|
|
||||||
|
@ -39,6 +42,12 @@ alias rm='rm -Iv --one-file-system'
|
||||||
alias free='free -m'
|
alias free='free -m'
|
||||||
alias df='df -h'
|
alias df='df -h'
|
||||||
alias pacman='pacman --color auto'
|
alias pacman='pacman --color auto'
|
||||||
|
alias dmesg='dmesg --ctime'
|
||||||
|
|
||||||
|
# Frequent mistakes
|
||||||
|
alias systemclt=systemctl
|
||||||
|
alias docker='sudo docker'
|
||||||
|
alias docker-compose='sudo docker-compose'
|
||||||
|
|
||||||
# Shortcuts for commonly used commands
|
# Shortcuts for commonly used commands
|
||||||
alias ll="ls -l $LS_OPTIONS"
|
alias ll="ls -l $LS_OPTIONS"
|
||||||
|
@ -49,6 +58,10 @@ alias s='sudo -s -E'
|
||||||
alias po='eval $(proxy off)'
|
alias po='eval $(proxy off)'
|
||||||
alias nw="sudo systemctl restart NetworkManager"
|
alias nw="sudo systemctl restart NetworkManager"
|
||||||
alias mc="machines"
|
alias mc="machines"
|
||||||
|
alias vpn="sudo systemctl start openvpn-client@$HOSTNAME"
|
||||||
|
alias vpno="sudo systemctl stop openvpn-client@$HOSTNAME"
|
||||||
|
alias vpns="sudo systemctl status openvpn-client@$HOSTNAME"
|
||||||
|
alias vpnr="sudo systemctl restart openvpn-client@$HOSTNAME"
|
||||||
# Superseding commands with better ones if they are present
|
# Superseding commands with better ones if they are present
|
||||||
if which vim &> /dev/null; then
|
if which vim &> /dev/null; then
|
||||||
alias vi='vim'
|
alias vi='vim'
|
||||||
|
@ -73,7 +86,7 @@ shopt -s extglob
|
||||||
shopt -s histappend
|
shopt -s histappend
|
||||||
shopt -s hostcomplete
|
shopt -s hostcomplete
|
||||||
|
|
||||||
export HISTSIZE=10000
|
export HISTSIZE=100000
|
||||||
export HISTFILESIZE=${HISTSIZE}
|
export HISTFILESIZE=${HISTSIZE}
|
||||||
export HISTCONTROL=ignoreboth
|
export HISTCONTROL=ignoreboth
|
||||||
|
|
||||||
|
@ -111,3 +124,8 @@ fi
|
||||||
[ -r /usr/share/doc/pkgfile/command-not-found.bash ] && . /usr/share/doc/pkgfile/command-not-found.bash # Arch
|
[ -r /usr/share/doc/pkgfile/command-not-found.bash ] && . /usr/share/doc/pkgfile/command-not-found.bash # Arch
|
||||||
[ -r /etc/profile.d/cnf.sh ] && . /etc/profile.d/cnf.sh # Arch (alternative, for Manjaro mostly)
|
[ -r /etc/profile.d/cnf.sh ] && . /etc/profile.d/cnf.sh # Arch (alternative, for Manjaro mostly)
|
||||||
|
|
||||||
|
# Node Version Manager
|
||||||
|
export NVM_DIR="$HOME/.nvm"
|
||||||
|
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"
|
||||||
|
|
||||||
|
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
|
||||||
|
|
|
@ -1,14 +1,14 @@
|
||||||
# Beware! This file is rewritten by htop when settings are changed in the interface.
|
# Beware! This file is rewritten by htop when settings are changed in the interface.
|
||||||
# The parser is also very primitive, and not human-friendly.
|
# The parser is also very primitive, and not human-friendly.
|
||||||
fields=0 48 17 18 38 39 40 2 46 47 49 1
|
fields=0 48 17 18 38 39 40 2 46 47 49 1
|
||||||
sort_key=47
|
sort_key=46
|
||||||
sort_direction=1
|
sort_direction=1
|
||||||
hide_threads=0
|
hide_threads=0
|
||||||
hide_kernel_threads=0
|
hide_kernel_threads=0
|
||||||
hide_userland_threads=0
|
hide_userland_threads=0
|
||||||
shadow_other_users=0
|
shadow_other_users=0
|
||||||
show_thread_names=0
|
show_thread_names=0
|
||||||
show_program_path=1
|
show_program_path=0
|
||||||
highlight_base_name=0
|
highlight_base_name=0
|
||||||
highlight_megabytes=0
|
highlight_megabytes=0
|
||||||
highlight_threads=1
|
highlight_threads=1
|
||||||
|
|
|
@ -51,7 +51,7 @@ set $up_bar killall -USR1 i3status
|
||||||
# Start Applications
|
# Start Applications
|
||||||
bindsym $mod+Return exec xterm
|
bindsym $mod+Return exec xterm
|
||||||
bindsym $mod+p exec thunar
|
bindsym $mod+p exec thunar
|
||||||
bindsym $mod+m exec qutebrowser
|
bindsym $mod+m exec qutebrowser --override-restore
|
||||||
|
|
||||||
# Volume control
|
# Volume control
|
||||||
#bindsym XF86AudioRaiseVolume exec amixer -q set Master 5+ unmute; exec $up_bar
|
#bindsym XF86AudioRaiseVolume exec amixer -q set Master 5+ unmute; exec $up_bar
|
||||||
|
|
|
@ -36,7 +36,7 @@ ethernet eth0 {
|
||||||
ethernet usb0 {
|
ethernet usb0 {
|
||||||
# if you use %speed, i3status requires the cap_net_admin capability
|
# if you use %speed, i3status requires the cap_net_admin capability
|
||||||
format_up = " %ip"
|
format_up = " %ip"
|
||||||
format_down = ""
|
format_down = "📱"
|
||||||
}
|
}
|
||||||
|
|
||||||
cpu_usage {
|
cpu_usage {
|
||||||
|
@ -56,11 +56,11 @@ battery 0 {
|
||||||
path_exists VPN {
|
path_exists VPN {
|
||||||
# path exists when a VPN tunnel launched by nmcli/nm-applet is active
|
# path exists when a VPN tunnel launched by nmcli/nm-applet is active
|
||||||
path = "/proc/sys/net/ipv4/conf/tun0"
|
path = "/proc/sys/net/ipv4/conf/tun0"
|
||||||
format = ""
|
format = "🔐"
|
||||||
}
|
}
|
||||||
|
|
||||||
tztime local {
|
tztime local {
|
||||||
format = "%d/%m/%Y %H:%M:%S"
|
format = "🕘 %d/%m/%Y %H:%M:%S"
|
||||||
timezone = "Europe/Paris"
|
timezone = "Europe/Paris"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -76,8 +76,8 @@ disk "/home" {
|
||||||
format = " %avail / %total"
|
format = " %avail / %total"
|
||||||
}
|
}
|
||||||
volume master {
|
volume master {
|
||||||
format = " %volume"
|
format = "🔈 %volume"
|
||||||
format_muted = " %volume"
|
format_muted = "🔇 %volume"
|
||||||
device = "default"
|
device = "default"
|
||||||
mixer = "Master"
|
mixer = "Master"
|
||||||
mixer_idx = 0
|
mixer_idx = 0
|
||||||
|
|
1
scripts/.gitignore
vendored
1
scripts/.gitignore
vendored
|
@ -1 +1,2 @@
|
||||||
sct
|
sct
|
||||||
|
node_modules
|
||||||
|
|
52
scripts/html2pdf
Executable file
52
scripts/html2pdf
Executable file
|
@ -0,0 +1,52 @@
|
||||||
|
#!/usr/bin/env node
|
||||||
|
|
||||||
|
// Imports
|
||||||
|
var fs = require('fs');
|
||||||
|
var pdf = require('html-pdf');
|
||||||
|
var yargs = require('yargs');
|
||||||
|
|
||||||
|
|
||||||
|
// Understanding
|
||||||
|
var argv = yargs
|
||||||
|
.usage("Usage: $0 -o out.pdf [options]")
|
||||||
|
.example('$0 -i doc.pdf -o doc.pdf', 'Convert doc.html to PDF using the default values')
|
||||||
|
.help('h')
|
||||||
|
.alias('h', 'help')
|
||||||
|
|
||||||
|
.describe('i', 'Input file')
|
||||||
|
.alias('i', 'input')
|
||||||
|
.default('i', '/dev/stdin')
|
||||||
|
|
||||||
|
.describe('o', 'Output file')
|
||||||
|
.alias('o', 'output')
|
||||||
|
|
||||||
|
.describe('t', 'Title of file')
|
||||||
|
.alias('t', 'title')
|
||||||
|
.default('t', 'Sans titre')
|
||||||
|
|
||||||
|
.demandOption(['o'])
|
||||||
|
.argv;
|
||||||
|
|
||||||
|
|
||||||
|
// Settings
|
||||||
|
options = {
|
||||||
|
"base": "file://" + process.cwd() + '/',
|
||||||
|
"format": "A4",
|
||||||
|
"orientation": "portrait",
|
||||||
|
"border": "2cm",
|
||||||
|
|
||||||
|
"footer": {
|
||||||
|
"height": "10mm",
|
||||||
|
"contents": {
|
||||||
|
default: '<div style="text-align: left; float: left;">' + argv.title + '</div> <div style="text-align:right; float: right;">{{page}}/{{pages}}</div>',
|
||||||
|
}
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
// Reading
|
||||||
|
htmlString = fs.readFileSync(argv.i, "utf8");
|
||||||
|
|
||||||
|
// Conversion
|
||||||
|
pdf.create(htmlString, options).toFile(argv.o, function(err, res) {
|
||||||
|
if (err) console.error(err);
|
||||||
|
});
|
113
scripts/md2html
Executable file
113
scripts/md2html
Executable file
|
@ -0,0 +1,113 @@
|
||||||
|
#!/usr/bin/env node
|
||||||
|
|
||||||
|
// Imports
|
||||||
|
var fs = require('fs');
|
||||||
|
var marked = require('marked');
|
||||||
|
var highlight = require('highlight.js');
|
||||||
|
var katex = require('katex');
|
||||||
|
var yargs = require('yargs');
|
||||||
|
var extend = require('util')._extend;
|
||||||
|
|
||||||
|
|
||||||
|
// Constants
|
||||||
|
var template = '<!DOCTYPE html> <html lang="fr"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta charset="UTF-8"> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.11.0/styles/xcode.min.css" integrity="sha256-OED7Gmqde0cMVVeo1zVd+3fBD4EST32D4h9YT7KY0aY=" crossorigin="anonymous" /> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.7.1/katex.min.css" integrity="sha384-wITovz90syo1dJWVh32uuETPVEtGigN07tkttEqPv+uR2SE/mbQcG7ATL28aI9H0" crossorigin="anonymous"> <style type="text/css"> image { max-width: 100 % } </style> <title>%TITLE%</title> </head> <body> <main class="page-content" aria-label="Content"> %BODY% </main> </body> </html>'
|
||||||
|
|
||||||
|
|
||||||
|
// Understanding
|
||||||
|
var argv = yargs
|
||||||
|
.usage("Usage: $0 [options]")
|
||||||
|
.example('$0 -i doc.md -o doc.html', 'Convert doc.md to HTML using the default template')
|
||||||
|
.help('h')
|
||||||
|
.alias('h', 'help')
|
||||||
|
|
||||||
|
.describe('i', 'Input file')
|
||||||
|
.alias('i', 'input')
|
||||||
|
.default('i', '/dev/stdin')
|
||||||
|
|
||||||
|
.describe('o', 'Output file')
|
||||||
|
.alias('o', 'output')
|
||||||
|
.default('o', '/dev/stdout')
|
||||||
|
|
||||||
|
.describe('t', 'Template file (%BODY% is replaced by the text)')
|
||||||
|
.alias('t', 'template')
|
||||||
|
|
||||||
|
.argv;
|
||||||
|
|
||||||
|
if (argv.t) {
|
||||||
|
template = fs.readFileSync(argv.t, "utf8");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Settings
|
||||||
|
|
||||||
|
var extraLangages = {
|
||||||
|
avrpseudo: function (hljs) {
|
||||||
|
lang = extend({}, highlight.getLanguage('avrasm'));
|
||||||
|
lang.keywords.keyword += ' Si Alors Sinon FinSi TantQue FinTantQue Pour FinPour allant de à ←';
|
||||||
|
lang.keywords.keyword += ' Lire Sortir sur Appeler Retourner';
|
||||||
|
lang.keywords.keyword += ' DecalerDroite DecalerGauche';
|
||||||
|
lang.keywords.keyword += ' Incrementer Decrementer';
|
||||||
|
lang.keywords.built_in += ' vrai faux';
|
||||||
|
lang.contains.push({
|
||||||
|
className: 'meta',
|
||||||
|
begin: /Configurer.+/,
|
||||||
|
end: /\n/,
|
||||||
|
});
|
||||||
|
return lang;
|
||||||
|
},
|
||||||
|
avrasmplus: function (hljs) {
|
||||||
|
lang = extend({}, highlight.getLanguage('avrasm'));
|
||||||
|
lang.keywords.keyword += ' si saut alors et ou if then goto && || <-';
|
||||||
|
lang.contains.push({
|
||||||
|
className: 'meta',
|
||||||
|
begin: /@\w+/,
|
||||||
|
});
|
||||||
|
return lang;
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
|
for (lang in extraLangages) {
|
||||||
|
// This must be done before any call to highlight.highlight :/
|
||||||
|
highlight.registerLanguage(lang, extraLangages[lang]);
|
||||||
|
}
|
||||||
|
|
||||||
|
var renderer = new marked.Renderer();
|
||||||
|
marked.setOptions({
|
||||||
|
highlight: function (code, lang) {
|
||||||
|
if (highlight.getLanguage(lang)) {
|
||||||
|
return highlight.highlight(lang, code).value;
|
||||||
|
} else {
|
||||||
|
// if (extraLangages[lang]) {
|
||||||
|
// highlight.registerLanguage(lang, extraLangages[lang]);
|
||||||
|
// return highlight.highlight(lang, code).value;
|
||||||
|
// } else {
|
||||||
|
// }
|
||||||
|
console.warn("Unknown language: " + lang);
|
||||||
|
return highlight.highlightAuto(code).value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
// Processing
|
||||||
|
markdownString = fs.readFileSync(argv.i, "utf8");
|
||||||
|
|
||||||
|
// TeX
|
||||||
|
markdownString = markdownString.replace(/\\\$/g, '$')
|
||||||
|
markdownString = markdownString.replace(/\$\$([\s\S]+)\$\$/gm, function(glob, formula) {
|
||||||
|
return katex.renderToString(formula, {displayMode: true});
|
||||||
|
});
|
||||||
|
markdownString = markdownString.replace(/\$([^$]+)\$/g, function(glob, formula) {
|
||||||
|
return katex.renderToString(formula, {displayMode: false});
|
||||||
|
});
|
||||||
|
|
||||||
|
// Conversion
|
||||||
|
htmlString = marked(markdownString, {renderer: renderer});
|
||||||
|
fullHtmlString = template.replace('%BODY%', htmlString);
|
||||||
|
|
||||||
|
// Saving
|
||||||
|
if (argv.o == '/dev/stdout') {
|
||||||
|
console.log(fullHtmlString);
|
||||||
|
} else {
|
||||||
|
fs.writeFileSync(argv.o, fullHtmlString);
|
||||||
|
}
|
22
scripts/package.json
Normal file
22
scripts/package.json
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
{
|
||||||
|
"name": "geoffreyfrogeye-dotfiles-scripts",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"description": "Stores dependencies used for GeoffreyFrogeye's dotfiles scripts.",
|
||||||
|
"main": "index.js",
|
||||||
|
"scripts": {
|
||||||
|
"test": "echo \"Error: no test specified\" && exit 1"
|
||||||
|
},
|
||||||
|
"repository": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://git.frogeye.fr/geoffrey/dotfiles"
|
||||||
|
},
|
||||||
|
"author": "GeoffreyFrogeye",
|
||||||
|
"license": "GPL-3.0",
|
||||||
|
"dependencies": {
|
||||||
|
"highlight.js": "^9.11.0",
|
||||||
|
"html-pdf": "^2.1.0",
|
||||||
|
"katex": "^0.7.1",
|
||||||
|
"marked": "^0.3.6",
|
||||||
|
"yargs": "^8.0.1"
|
||||||
|
}
|
||||||
|
}
|
5
scripts/remcrlf
Executable file
5
scripts/remcrlf
Executable file
|
@ -0,0 +1,5 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# Removes CRLF (^M or \r) from a file
|
||||||
|
|
||||||
|
sed -e "s/^M//" $1 -i
|
20
scripts/transfer
Executable file
20
scripts/transfer
Executable file
|
@ -0,0 +1,20 @@
|
||||||
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
|
if [ $# -eq 0 ]
|
||||||
|
then
|
||||||
|
echo -e "No arguments specified. Usage:\necho transfer /tmp/test.md\ncat /tmp/test.md | transfer test.md"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
tmpfile=$( mktemp -t transferXXX )
|
||||||
|
|
||||||
|
if tty -s
|
||||||
|
then
|
||||||
|
basefile=$(basename "$1" | sed -e 's/[^a-zA-Z0-9._-]/-/g')
|
||||||
|
curl --progress-bar --upload-file "$1" "https://transfer.sh/$basefile" >> $tmpfile
|
||||||
|
else
|
||||||
|
curl --progress-bar --upload-file "-" "https://transfer.sh/$1" >> $tmpfile
|
||||||
|
fi
|
||||||
|
|
||||||
|
cat $tmpfile
|
||||||
|
rm -f $tmpfile
|
2
vimrc
2
vimrc
|
@ -44,7 +44,7 @@ nmap <F7> :UndotreeToggle<CR>:UndotreeFocus<CR>
|
||||||
""" CTRLP """
|
""" CTRLP """
|
||||||
|
|
||||||
let g:ctrlp_custom_ignore = {
|
let g:ctrlp_custom_ignore = {
|
||||||
\ 'dir': '\v([\/]\.(git|hg|svn)|node_modules|bower_components|__pycache__|vendor)$',
|
\ 'dir': '\v([\/]\.(git|hg|svn)|node_modules|bower_components|__pycache__|vendor|output)$',
|
||||||
\ 'file': '\v\.(exe|so|dll)$',
|
\ 'file': '\v\.(exe|so|dll)$',
|
||||||
\ 'link': 'SOME_BAD_SYMBOLIC_LINKS',
|
\ 'link': 'SOME_BAD_SYMBOLIC_LINKS',
|
||||||
\ }
|
\ }
|
||||||
|
|
Loading…
Reference in a new issue