Compare commits
58 Commits
main-mac
...
e030342ca5
Author | SHA1 | Date | |
---|---|---|---|
e030342ca5
|
|||
8f91b50c0c
|
|||
2c3b6dfc09
|
|||
1456b4a315
|
|||
9d863e0188
|
|||
fd7a4d56b3
|
|||
ebac48f0a3
|
|||
9627f15c4e
|
|||
f78b83980e
|
|||
6c44573c6c
|
|||
bdada371e1
|
|||
c0c7235158
|
|||
a1e800904e
|
|||
28c0c0198f
|
|||
ff79c4e21f
|
|||
5ba46eb0ae
|
|||
c1b4844569
|
|||
72f090cd76
|
|||
ccf78dc01e
|
|||
685d7cfde2
|
|||
c9e98e09b1
|
|||
68ff0a39b8
|
|||
7b6a49013c
|
|||
0868374471
|
|||
de3f93e1eb
|
|||
0f1a1146ff
|
|||
bf5ee3437d
|
|||
7e64148005
|
|||
219caa08af
|
|||
a7dd1a8521
|
|||
ee94361f1a
|
|||
f02723bdc6
|
|||
352632e5a5
|
|||
b260e411f0
|
|||
1dc978f1c1
|
|||
d8d0c9ba2e
|
|||
60d6583472
|
|||
6a8f73450c
|
|||
1a938fbeb3
|
|||
3c99b8cb34
|
|||
a665006836
|
|||
9737f6cdab
|
|||
4f578e0bb0
|
|||
9051f04328
|
|||
98073783bf
|
|||
08ee9f8b0e
|
|||
068db0c3c8
|
|||
7f4d93f4d2
|
|||
621832506c
|
|||
36376a2e34
|
|||
6269463d7b
|
|||
34dd9f4b01
|
|||
5c4a9851e6
|
|||
3495c81c49
|
|||
5dd77c49a0
|
|||
15be72893c
|
|||
43d220be01
|
|||
8210faf9ce
|
@ -77,3 +77,11 @@ include "/usr/share/X11/locale/cs_CZ.UTF-8/Compose"
|
||||
<Multi_key> <g> <F> : "Φ"
|
||||
<Multi_key> <g> <U> : "Ψ"
|
||||
<Multi_key> <g> <O> : "Ω"
|
||||
|
||||
# Math (https://gist.github.com/m93a/187539552593dd4ed8b122167c09384c)
|
||||
<Multi_key> <m> <E> : "∃"
|
||||
<Multi_key> <m> <exclam> <E> : "∄"
|
||||
<Multi_key> <m> <minus> : "−"
|
||||
<Multi_key> <m> <exclam> <minus> : "¬"
|
||||
<Multi_key> <m> <i> <n> : "∈"
|
||||
<Multi_key> <m> <exclam> <i> <n> : "∉"
|
||||
|
@ -2,9 +2,10 @@
|
||||
[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)"
|
||||
alias gitdotfiles='/usr/bin/git --git-dir="$HOME/.dotfiles/" --work-tree="$HOME"'
|
||||
# enable color support of ls and also add handy aliases
|
||||
alias ls='ls -pQFh --group-directories-first'
|
||||
if [ -x /usr/bin/dircolors ]; then
|
||||
test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
|
||||
alias ls='ls --color=auto'
|
||||
alias ls='ls --color=auto -pQFh --group-directories-first'
|
||||
alias dir='dir --color=auto'
|
||||
alias vdir='vdir --color=auto'
|
||||
|
||||
@ -42,29 +43,39 @@ history_most_used(){ LC_ALL=C cat ~/.bash_history | cut -d ';' -f 2- | §awk 1 |
|
||||
ls ~/bin | grep -P "^§" | sed 's/^§/~\/bin\/ §/'
|
||||
}
|
||||
|
||||
alias §ls='ls -pQFh --group-directories-first'
|
||||
alias §less='less -R -S'
|
||||
|
||||
alias §cd.='clear;§ls'
|
||||
§cd..(){ cd $(eval printf '../'%.0s {1..$1}); }
|
||||
§cd(){
|
||||
[[ "$1" == '--help' ]] && echo -e "
|
||||
Usage: §cd NUMBER|PATH
|
||||
See: dirs -v
|
||||
" && return 0
|
||||
[[ -z "$1" ]] && dirs -v | sed 1d && return 0
|
||||
[[ $1 =~ ^[0-9]+$ ]] && cd "$(dirs -l +$1)" && dirs -v | sed 1d && return 0
|
||||
builtin pushd "$1" >/dev/null && pushd .
|
||||
m(){
|
||||
if [[ -z "$1" ]]; then
|
||||
printenv | grep -e '^m'
|
||||
return 0
|
||||
fi
|
||||
if [[ "--help" == "$1" ]]; then
|
||||
echo 'm [--help]'
|
||||
echo ' Lists all marks or print this help.'
|
||||
echo 'm <name> [path]'
|
||||
echo ' Sets mark <name> to current directory or [path].'
|
||||
echo ' The mark is just a bash variable, use `$m<name>`.'
|
||||
return 0
|
||||
fi
|
||||
local n="m$1"
|
||||
[[ -z "${!n}" ]] || return 1
|
||||
[[ -z "$2" ]] && local p="$(pwd)" || local p="$(readlink -f $2)"
|
||||
export $n="$p"
|
||||
}
|
||||
alias cd-vifm='cd `vifm --choose-dir -`'
|
||||
mkcd(){ mkdir -p -- "$1" && cd -P -- "$1"; }
|
||||
|
||||
alias gcalendar-dovolené='gcalendar --account "práce" --calendar "Dovolené"'
|
||||
alias gcalendar-události='gcalendar --account "default" --calendar "Události"'
|
||||
|
||||
alias §find.='find . -maxdepth 1'
|
||||
|
||||
alias pdftk='java -jar $HOME/bin/pdftk-all.jar'
|
||||
bw-session(){
|
||||
bw logout
|
||||
login=`kwallet-query kdewallet -f accounts -r Bitwarden 2> /dev/null`
|
||||
# login=`kwallet-query kdewallet -f accounts -r Bitwarden 2> /dev/null`
|
||||
login=$(§kwallet.mjs --wallet kdewallet readPassword accounts bw-json)
|
||||
export BW_CLIENTSECRET=`echo "$login" | jq -r .secret`
|
||||
export BW_CLIENTID=`echo "$login" | jq -r .id`
|
||||
bw login --apikey --raw
|
||||
@ -78,6 +89,7 @@ alias §psmem='§psmem_all | head -n 10'
|
||||
alias §pscpu_all='ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%cpu'
|
||||
alias §pscpu='§pscpu_all | head -n 10'
|
||||
alias §psnet_all='lsof -P -i -n'
|
||||
alias §ck-grep='cat /usr/share/X11/locale/en_US.UTF-8/Compose ~/.XCompose | grep -i'
|
||||
|
||||
§ping-test(){ # Pings ip address of noip.com and www.google.com.
|
||||
ping -c 1 -q 8.23.224.107 | grep --color=never -A 1 -i '\---'
|
||||
@ -105,7 +117,8 @@ alias npx-wca='npx -y web-component-analyzer'
|
||||
alias npx-qnm='npx -y qnm'
|
||||
alias npx-hint='npx -y hint'
|
||||
alias npx-markdown='nohup npx markserv'
|
||||
alias zfz=fzf-carroarmato0.fzf
|
||||
|
||||
alias fzf=fzf-carroarmato0.fzf
|
||||
|
||||
§url-curl(){ curl --silent -I "$1" | grep -i location; }
|
||||
|
||||
|
@ -9,95 +9,131 @@ function jaaENV {
|
||||
echo " jaaENV --save …to_save (example: jaaENV --save nodejs php)"
|
||||
echo ""
|
||||
echo "Description:"
|
||||
echo " - Without arguments loads infos from '.jaaENV'"
|
||||
echo " - 'ls' shows supported options to auto load"
|
||||
echo " - 'save' cerates config file '.jaaENV'"
|
||||
echo " - Without arguments, loads info from '.jaaENV'"
|
||||
echo " - 'ls' shows supported options to auto-load"
|
||||
echo " - 'save' creates a config file '.jaaENV'"
|
||||
echo ""
|
||||
echo "Usage '.jaaENV' files: "
|
||||
echo " typical: '\nphp=5.6\nnodejs=16.13.0'"
|
||||
echo " link: '. ../.jaaENV' … use settings from parent folder"
|
||||
echo " Options:"
|
||||
echo " 'android_home': Exports 'ANDROID_HOME' (uses 'ANDROID_HOME_BAK') instead of new 'ANDROID_SDK_ROOT'. Value can be anything (use '1')."
|
||||
echo " 'jdk': Exports 'JAVA_HOME' based on wanted version (currently 11/1.8)"
|
||||
echo " 'android_home': Exports 'ANDROID_HOME' (uses 'ANDROID_HOME_BAK') instead of 'ANDROID_SDK_ROOT'. Value can be anything (use '1')."
|
||||
echo " 'jdk': Exports 'JAVA_HOME' based on the wanted version (currently 11/1.8)"
|
||||
echo " 'nodejs'|'php': NodeJS/PHP versions"
|
||||
echo " 'gradle': Cordova uses folder scoped → so unnecesarly"
|
||||
echo " 'gradle': Cordova uses folder-scoped → so unnecesarly"
|
||||
echo ""
|
||||
echo "Install: "
|
||||
echo " gradle ⇒ https://sdkman.io/"
|
||||
echo " node ⇒ https://github.com/nvm-sh/nvm"
|
||||
echo " php ⇒ http://jdem.cz/fgyu56 + https://deb.sury.org/"
|
||||
echo " php ⇒ \`update-alternatives\` + https://deb.sury.org/"
|
||||
echo " java ⇒ \`update-alternatives\`"
|
||||
echo ""
|
||||
echo "Tips:"
|
||||
echo " sudo update-alternatives --set php /usr/bin/php\$php"
|
||||
return 0
|
||||
fi
|
||||
if [ "$1" = "--save" ]; then
|
||||
|
||||
if [ "$1" == "--save" ]; then
|
||||
shift
|
||||
rm -vi .jaaENV
|
||||
while test $# -gt 0
|
||||
do
|
||||
while [ $# -gt 0 ]; do
|
||||
case "$1" in
|
||||
nodejs|node)
|
||||
local nodejs_version=`node --version`
|
||||
echo "nodejs=${nodejs_version:1}" >> .jaaENV
|
||||
echo "nodejs=$(node --version | cut -c2-)" >> .jaaENV
|
||||
;;
|
||||
gradle)
|
||||
local gradle_version=`gradle --version | head -n 3 | tail -n 1 | §awk 2`
|
||||
echo "gradle=$gradle_version" >> .jaaENV
|
||||
echo "gradle=$(gradle --version | awk '/Gradle/ {print $2}')" >> .jaaENV
|
||||
;;
|
||||
php)
|
||||
local php_version=`php --version | head -n 1 | §awk 2`
|
||||
echo "php=$php_version" >> .jaaENV
|
||||
echo "php=$(php --version | awk '/^PHP/ {print $2}')" >> .jaaENV
|
||||
;;
|
||||
java)
|
||||
local java_version=$(java -version 2>&1 | awk -F '"' '/version/ {print $2}')
|
||||
if [[ "$java_version" == 1.8* ]]; then
|
||||
java_version=8
|
||||
else
|
||||
java_version=$(echo "$java_version" | cut -d'.' -f1)
|
||||
fi
|
||||
echo "java=$java_version" >> .jaaENV
|
||||
;;
|
||||
*)
|
||||
echo "unknown '$1' – skipped"
|
||||
echo "Unknown '$1' – skipped"
|
||||
;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
return 0
|
||||
fi
|
||||
if [ "$1" = "--ls" ]; then
|
||||
echo ":: nvm ls ::\n"
|
||||
nvm ls
|
||||
echo ":: find /usr/bin/ -name php* ::\n"
|
||||
find /usr/bin/ -name php*
|
||||
echo ":: sdk ls gradle | cat :: "
|
||||
sdk ls gradle | cat
|
||||
|
||||
if [ "$1" == "--ls" ]; then
|
||||
echo ":: nvm ls --no-alias ::"
|
||||
nvm ls --no-alias
|
||||
echo ":: update-alternatives --list php ::"
|
||||
update-alternatives --list php
|
||||
echo ":: update-alternatives --list java ::"
|
||||
update-alternatives --list java
|
||||
echo ":: sdk ls gradle | grep -E '\*|>' :: "
|
||||
sdk ls gradle | grep -E '\*|>'
|
||||
return 0
|
||||
fi
|
||||
|
||||
if [ -f "compose.yaml" ]; then
|
||||
jdk=$(grep -Po 'VERSION_JAVA=\K.*' compose.yaml)
|
||||
nodejs=$(grep -Po 'VERSION_NODEJS=\K.*' compose.yaml)
|
||||
else
|
||||
elif [ -f ".jaaENV" ]; then
|
||||
. ./.jaaENV
|
||||
else
|
||||
echo 'No env file `compose.yaml` or `.jaaENV`'
|
||||
return 1
|
||||
fi
|
||||
if [ ! -z ${android_home+x} ]; then export ANDROID_HOME=$ANDROID_HOME_BAK; echo "\$ANDROID_HOME=$ANDROID_HOME"; else unset ANDROID_HOME; echo "\$ANDROID_SDK_ROOT=$ANDROID_SDK_ROOT"; fi
|
||||
if [ ! -z ${android_home_is_sdk+x} ]; then export ANDROID_HOME=$ANDROID_SDK_ROOT; echo "\$ANDROID_HOME=$ANDROID_HOME"; fi
|
||||
if [ ! -z ${java+x} ]; then
|
||||
[[ "$java" == "8" ]] && java=1.8
|
||||
local java_local=$(java -version 2>&1 | awk -F '"' '/version/ {print $2}')
|
||||
if [[ "$java_local" != "$java"* ]]; then
|
||||
[[ "$java" == "1.8" ]] && java=8
|
||||
echo "Switching Java version: $java ← $java_local"
|
||||
local java_path="/usr/lib/jvm/java-$java-openjdk-amd64/"
|
||||
[[ "$java" == "8" ]] && java_path+="jre/"
|
||||
sudo update-alternatives --set java "${java_path}bin/java"
|
||||
local javac=$(update-alternatives --list javac | grep java-$java)
|
||||
[ -n "$javac" ] && sudo update-alternatives --set javac "$javac"
|
||||
sudo -k
|
||||
fi
|
||||
export JAVA_HOME=$(readlink -f $(which java) | cut -d '/' -f1-5)/
|
||||
echo "\$JAVA_HOME=$JAVA_HOME"
|
||||
fi
|
||||
if [ ! -z ${android_home+x} ]; then
|
||||
export ANDROID_HOME=$ANDROID_HOME_BAK
|
||||
echo "\$ANDROID_HOME=$ANDROID_HOME"
|
||||
else
|
||||
unset ANDROID_HOME
|
||||
echo "\$ANDROID_SDK_ROOT=$ANDROID_SDK_ROOT"
|
||||
fi
|
||||
if [ ! -z ${android_home_is_sdk+x} ]; then
|
||||
export ANDROID_HOME=$ANDROID_SDK_ROOT
|
||||
echo "\$ANDROID_HOME=$ANDROID_HOME"
|
||||
fi
|
||||
if [ ! -z ${JAVA_HOME_BAK+x} ]; then export JAVA_HOME=$JAVA_HOME_BAK; unset JAVA_HOME_BAK; fi
|
||||
if [ ! -z ${jdk+x} ]; then
|
||||
if (( $(echo "$jdk > 9" | bc -l) )); then
|
||||
export JAVA_HOME_bk=$JAVA_HOME
|
||||
export JAVA_HOME=/snap/android-studio/current/android-studio/jre;
|
||||
elif [ ! -z ${JAVA_HOME_bk+x} ]; then
|
||||
export JAVA_HOME=$JAVA_HOME_bk
|
||||
export JAVA_HOME_BAK=$JAVA_HOME
|
||||
export JAVA_HOME="/snap/android-studio/current/android-studio/jre"
|
||||
fi
|
||||
echo "\$JAVA_HOME=$JAVA_HOME"
|
||||
fi
|
||||
if [ ! -z ${nodejs+x} ]; then nvm use $nodejs; fi
|
||||
if [ ! -z ${gradle+x} ]; then sdk use gradle $gradle | tr -d '\n'; echo ; fi
|
||||
if [ ! -z ${php+x} ]; then
|
||||
local php_local=`php --version | head -n 1 | §awk 2`
|
||||
local php_local=$(php --version | awk '/^PHP/ {print $2}')
|
||||
if [[ "$php_local" == "$php"* ]]; then
|
||||
echo "php $php"
|
||||
echo "PHP version: $php"
|
||||
else
|
||||
echo "php $php ← $php_local"
|
||||
sudo update-alternatives --set php /usr/bin/php$php
|
||||
echo "Switching PHP version: $php ← $php_local"
|
||||
sudo update-alternatives --set php "/usr/bin/php$php"
|
||||
sudo -k
|
||||
fi
|
||||
fi
|
||||
unset android_home
|
||||
unset nodejs
|
||||
unset gradle
|
||||
unset php
|
||||
|
||||
# Cleanup variables
|
||||
unset android_home nodejs gradle php java
|
||||
}
|
||||
|
@ -1,58 +1,59 @@
|
||||
function setPromt {
|
||||
if [ "$color_prompt" != yes ]; then
|
||||
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
|
||||
return
|
||||
fi
|
||||
case "$TERM" in
|
||||
xterm*|rxvt*)
|
||||
;;
|
||||
*)
|
||||
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
|
||||
return
|
||||
;;
|
||||
esac
|
||||
PROMPT_COMMAND=updatePromt
|
||||
PS2="|"
|
||||
if [ "$color_prompt" != yes ]; then
|
||||
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
|
||||
return
|
||||
fi
|
||||
case "$TERM" in
|
||||
xterm*|rxvt*)
|
||||
;;
|
||||
*)
|
||||
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
|
||||
return
|
||||
;;
|
||||
esac
|
||||
PROMPT_COMMAND=updatePromt
|
||||
PS2="|"
|
||||
}
|
||||
function updatePromt {
|
||||
local prev_exit="$?"
|
||||
# color_helper_>>color<< (Note: \[\]= escaping)
|
||||
local chR="\[\e[1;91m\]" #red
|
||||
local chW="\[\033[00m\]" #white
|
||||
local chG="\[\033[01;32m\]" #green
|
||||
local chB="\[\033[0;34m\]" #blue
|
||||
local chP="\[\033[0;35m\]" #purple
|
||||
local chY="\[\033[0;33m\]" #yellow
|
||||
PS1=""
|
||||
if [ $prev_exit == 0 ]; then
|
||||
PS1+="$chG✓ $chW"
|
||||
else
|
||||
PS1+="$chR✗ $chW"
|
||||
fi
|
||||
local jobs="$(jobs | wc -l)"
|
||||
if [ $jobs != 0 ]; then
|
||||
PS1+="${chY}≡$jobs$chW"
|
||||
fi
|
||||
PS1+="${debian_chroot:+($debian_chroot)}"
|
||||
PS1+=" At ${chG}\A${chW}"
|
||||
PS1+=" by ${chP}\u${chW}"
|
||||
if sudo -n true 2>/dev/null; then
|
||||
PS1+="${chR} (sudo)${chW}"
|
||||
fi
|
||||
PS1+=" in "
|
||||
if \git rev-parse --is-inside-work-tree >/dev/null 2>&1; then
|
||||
local branch="$(\git symbolic-ref -q HEAD)"
|
||||
PS1+="[${branch#refs/heads/}"
|
||||
local status="$(git for-each-ref --format='%(upstream:trackshort)' refs/heads | awk '!seen[$1]++ {printf $1}')"
|
||||
status+="$(git status --porcelain | awk '!seen[$1]++ {printf $1}')"
|
||||
if [ "$statua"s ]; then
|
||||
PS1+="|$chY$status$chW"
|
||||
fi
|
||||
PS1+="] "
|
||||
fi
|
||||
PS1+="${chB}\w${chW}"
|
||||
PS1+="\n:"
|
||||
history -a
|
||||
local prev_exit="$?"
|
||||
# history -n; history -w; history -c; history -r;
|
||||
# color_helper_>>color<< (Note: \[\]= escaping)
|
||||
local chR="\[\e[1;91m\]" #red
|
||||
local chW="\[\033[00m\]" #white
|
||||
local chG="\[\033[01;32m\]" #green
|
||||
local chB="\[\033[0;34m\]" #blue
|
||||
local chP="\[\033[0;35m\]" #purple
|
||||
local chY="\[\033[0;33m\]" #yellow
|
||||
PS1=""
|
||||
if [ $prev_exit == 0 ]; then
|
||||
PS1+="$chG✓ $chW"
|
||||
else
|
||||
PS1+="$chR✗ $chW"
|
||||
fi
|
||||
local jobs="$(jobs | wc -l)"
|
||||
if [ $jobs != 0 ]; then
|
||||
PS1+="${chY}≡$jobs$chW"
|
||||
fi
|
||||
PS1+="${debian_chroot:+($debian_chroot)}"
|
||||
PS1+=" At ${chG}\A${chW}"
|
||||
PS1+=" by ${chP}\u${chW}"
|
||||
if sudo -n true 2>/dev/null; then
|
||||
PS1+="${chR} (sudo)${chW}"
|
||||
fi
|
||||
PS1+=" in "
|
||||
if \git rev-parse --is-inside-work-tree >/dev/null 2>&1; then
|
||||
local branch="$(\git symbolic-ref -q HEAD)"
|
||||
PS1+="[${branch#refs/heads/}"
|
||||
local status="$(git for-each-ref --format='%(upstream:trackshort)' refs/heads | awk '!seen[$1]++ {printf $1}')"
|
||||
status+="$(git status --porcelain | awk '!seen[$1]++ {printf $1}')"
|
||||
if [ "$statua"s ]; then
|
||||
PS1+="|$chY$status$chW"
|
||||
fi
|
||||
PS1+="] "
|
||||
fi
|
||||
PS1+="${chB}\w${chW}"
|
||||
PS1+="\n:"
|
||||
history -a
|
||||
}
|
||||
setPromt
|
||||
unset color_prompt
|
||||
|
@ -1,16 +0,0 @@
|
||||
[Behavior]
|
||||
hideDockIcon=false
|
||||
hideMainWindowWhenStarted=true
|
||||
|
||||
[MainWindow]
|
||||
pos=@Point(0 0)
|
||||
size=@Size(640 480)
|
||||
|
||||
[RepoTreeView]
|
||||
expandedCategories-e77d1fb=Moje knihovny\tNed\xe1vno aktualizovan\xe9\tSd\xedleno se skupinama
|
||||
|
||||
[Settings]
|
||||
computerName=TUXEDO-InfinityBook-s15gen6
|
||||
|
||||
[UsedServerAddresses]
|
||||
main=https://seafile.jaandrle.cz/
|
@ -32,7 +32,7 @@
|
||||
"model_hash_override": null,
|
||||
"local_indexing": null,
|
||||
"heartbeat_interval_seconds": null,
|
||||
"last_service_level": "Cloud",
|
||||
"last_service_level": "FreeCloudRegistered",
|
||||
"override_beams": null,
|
||||
"override_context_length": null,
|
||||
"onboarding": null,
|
||||
|
@ -1,28 +1,3 @@
|
||||
# A valid snippet should starts with:
|
||||
#
|
||||
# snippet trigger_word [ "description" [ options ] ]
|
||||
#
|
||||
# and end with:
|
||||
#
|
||||
# endsnippet
|
||||
#
|
||||
# Snippet options:
|
||||
#
|
||||
# b - Beginning of line.
|
||||
# i - In-word expansion.
|
||||
# w - Word boundary.
|
||||
# r - Regular expression
|
||||
# e - Custom context snippet
|
||||
# A - Snippet will be triggered automatically, when condition matches.
|
||||
#
|
||||
# Basic example:
|
||||
#
|
||||
# snippet emitter "emitter properties" b
|
||||
# private readonly ${1} = new Emitter<$2>()
|
||||
# public readonly ${1/^_(.*)/$1/}: Event<$2> = this.$1.event
|
||||
# endsnippet
|
||||
#
|
||||
# Online reference: https://github.com/SirVer/ultisnips/blob/master/doc/UltiSnips.txt
|
||||
snippet sceleton "HTML5" b
|
||||
<!DOCTYPE html>
|
||||
<!-- ${0}DEL IE https://www.paulirish.com/2008/conditional-stylesheets-vs-css-hacks-answer-neither/ -->
|
||||
@ -50,6 +25,9 @@ endsnippet
|
||||
snippet cmt "comment"
|
||||
<!-- ${0} -->
|
||||
endsnippet
|
||||
snippet cmt.js "comment"
|
||||
/* ${0} */
|
||||
endsnippet
|
||||
|
||||
snippet viewport_cordova "viewport used in cordova apps"
|
||||
<meta name="viewport" content="user-scalable=no, width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1"/>
|
||||
|
1
.config/coc/ultisnips/javascriptreact.snippets
Normal file
1
.config/coc/ultisnips/javascriptreact.snippets
Normal file
@ -0,0 +1 @@
|
||||
extends javascript
|
@ -1,25 +1,37 @@
|
||||
# A valid snippet should starts with:
|
||||
#
|
||||
# snippet trigger_word [ "description" [ options ] ]
|
||||
#
|
||||
# and end with:
|
||||
#
|
||||
# endsnippet
|
||||
#
|
||||
# Snippet options:
|
||||
#
|
||||
# b - Beginning of line.
|
||||
# i - In-word expansion.
|
||||
# w - Word boundary.
|
||||
# r - Regular expression
|
||||
# e - Custom context snippet
|
||||
# A - Snippet will be triggered automatically, when condition matches.
|
||||
#
|
||||
# Basic example:
|
||||
#
|
||||
# snippet emitter "emitter properties" b
|
||||
# private readonly ${1} = new Emitter<$2>()
|
||||
# public readonly ${1/^_(.*)/$1/}: Event<$2> = this.$1.event
|
||||
# endsnippet
|
||||
#
|
||||
# Online reference: https://github.com/SirVer/ultisnips/blob/master/doc/UltiSnips.txt
|
||||
extends html
|
||||
snippet sceleton "HTML5" b
|
||||
<!DOCTYPE html>
|
||||
<!-- ${0}DEL IE https://www.paulirish.com/2008/conditional-stylesheets-vs-css-hacks-answer-neither/ -->
|
||||
<html class="no-js" lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<!-- DEL IE https://stackoverflow.com/questions/6771258/what-does-meta-http-equiv-x-ua-compatible-content-ie-edge-do -->
|
||||
<!-- DEL https://www.vzhurudolu.cz/prirucka/viewport-meta -->
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<!-- DEL CSP https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP | https://github.com/Prinzhorn/minimal-csp -->
|
||||
<!-- DEL https://github.com/jensimmons/cssremedy -->
|
||||
|
||||
<!-- DEL meta značky obecně https://www.vzhurudolu.cz/prirucka/meta-open-graph -->
|
||||
<title></title>
|
||||
<meta name="description" content="">
|
||||
<!-- DEL IE https://www.sitepoint.com/html5-older-browsers-and-the-shiv/ -->
|
||||
<!-- DEL https://www.vzhurudolu.cz/prirucka/checklist -->
|
||||
</head>
|
||||
<body>
|
||||
<!-- DEL -->
|
||||
</body>
|
||||
</html>
|
||||
endsnippet
|
||||
|
||||
snippet cmt "comment"
|
||||
<!-- ${0} -->
|
||||
endsnippet
|
||||
|
||||
snippet viewport_cordova "viewport used in cordova apps"
|
||||
<meta name="viewport" content="user-scalable=no, width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1"/>
|
||||
endsnippet
|
||||
snippet csp_cordova "CSP used in cordova"
|
||||
<meta http-equiv="Content-Security-Policy" content="default-src * gap://ready file: gulp_place('app.url_scheme', 'variable'):; style-src 'self' 'unsafe-inline'; img-src * data: *; script-src 'self' 'unsafe-inline' 'unsafe-eval'"/>
|
||||
<meta http-equiv="Content-Security-Policy" content="default-src *; style-src 'self' 'unsafe-inline'; img-src 'self' data: android-webview-video-poster:; script-src 'self' 'unsafe-inline' 'unsafe-eval'">
|
||||
endsnippet
|
||||
#endextends
|
||||
|
File diff suppressed because it is too large
Load Diff
1
.config/coc/ultisnips/typescript.snippets
Normal file
1
.config/coc/ultisnips/typescript.snippets
Normal file
@ -0,0 +1 @@
|
||||
extends javascript
|
1
.config/coc/ultisnips/typescriptreact.snippets
Normal file
1
.config/coc/ultisnips/typescriptreact.snippets
Normal file
@ -0,0 +1 @@
|
||||
extends javascript
|
@ -1 +1,124 @@
|
||||
extends javascript, html
|
||||
snippet sceleton_node "nodejs" b
|
||||
#!/usr/bin/env node
|
||||
/* jshint esversion: 8,-W097, -W040, node: true, expr: true, undef: true */
|
||||
${0}
|
||||
endsnippet
|
||||
snippet sceleton_cli "nodejsscript" b
|
||||
#!/usr/bin/env nodejsscript
|
||||
/* jshint esversion: 11,-W097, -W040, module: true, node: true, expr: true, undef: true *//* global echo, $, pipe, s, fetch, cyclicLoop */
|
||||
${0}
|
||||
endsnippet
|
||||
snippet sceleton_zx "zx" b
|
||||
#!/usr/bin/env zx
|
||||
/* jshint esversion: 8,-W097, -W040, node: true, expr: true, undef: true */
|
||||
${0}
|
||||
endsnippet
|
||||
snippet jshint "JSHint header" b
|
||||
/* jshint esversion: 6,-W097, -W040, browser: true, expr: true, undef: true */
|
||||
/* global ${0} */
|
||||
endsnippet
|
||||
snippet global "JSHint global"
|
||||
/* global ${0} */
|
||||
endsnippet
|
||||
snippet global_ns "JSHint global"
|
||||
/* ${1} *//* global ${0} */
|
||||
endsnippet
|
||||
snippet devel "JSHint devel"
|
||||
${1}/* jshint devel: true *///gulp.keep.line${0}
|
||||
endsnippet
|
||||
|
||||
snippet log "console.log"
|
||||
${1}console.log('${0}');
|
||||
endsnippet
|
||||
snippet stor "localStorage"
|
||||
${1}localStorage.${2:g}etItem("${0}");
|
||||
endsnippet
|
||||
|
||||
snippet import "import with backward order"
|
||||
import ${2:values} from "${1:specifier}";$0
|
||||
endsnippet
|
||||
snippet promise "return? new Promise"
|
||||
${1:return }new Promise(function(resolve, reject){
|
||||
${0:/* async code */}
|
||||
});
|
||||
endsnippet
|
||||
snippet for "classical loop"
|
||||
for(${1:let} ${2:i}= 0, ${2}_length= ${3:ITERABLE}.length; ${2}<${2}_length; ${2}++){
|
||||
${0:/* statement */}
|
||||
}
|
||||
endsnippet
|
||||
snippet foreach "PHP-like name" b
|
||||
for(${2:const} ${3:element} of ${1:iterable}){
|
||||
${0:/* statement */}
|
||||
}
|
||||
endsnippet
|
||||
snippet switch "classical switch"
|
||||
switch (${1}){
|
||||
case ${2}:
|
||||
${0}
|
||||
break;
|
||||
default:
|
||||
}
|
||||
endsnippet
|
||||
snippet desctr "object destructure"
|
||||
${1:const} { $0 }= ${2:def};
|
||||
endsnippet
|
||||
snippet ready "document ready"
|
||||
${1}document.addEventListener('DOMContentLoaded', ${0}, false)
|
||||
endsnippet
|
||||
snippet readyEvent "vanilla JS content ready event name"
|
||||
${1}DOMContentLoaded${0}
|
||||
endsnippet
|
||||
|
||||
snippet selid
|
||||
${1}document.getElementById('${0}')
|
||||
endsnippet
|
||||
snippet seltag
|
||||
${1}getElementsByTagName('${0}')
|
||||
endsnippet
|
||||
snippet selclass
|
||||
${1}getElementsByClassName('${0}')
|
||||
endsnippet
|
||||
snippet sel
|
||||
${1}querySelector('${0}')
|
||||
endsnippet
|
||||
snippet selall
|
||||
${1}querySelectorAll('${0}')
|
||||
endsnippet
|
||||
snippet sceleton "HTML5" b
|
||||
<!DOCTYPE html>
|
||||
<!-- ${0}DEL IE https://www.paulirish.com/2008/conditional-stylesheets-vs-css-hacks-answer-neither/ -->
|
||||
<html class="no-js" lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<!-- DEL IE https://stackoverflow.com/questions/6771258/what-does-meta-http-equiv-x-ua-compatible-content-ie-edge-do -->
|
||||
<!-- DEL https://www.vzhurudolu.cz/prirucka/viewport-meta -->
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<!-- DEL CSP https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP | https://github.com/Prinzhorn/minimal-csp -->
|
||||
<!-- DEL https://github.com/jensimmons/cssremedy -->
|
||||
|
||||
<!-- DEL meta značky obecně https://www.vzhurudolu.cz/prirucka/meta-open-graph -->
|
||||
<title></title>
|
||||
<meta name="description" content="">
|
||||
<!-- DEL IE https://www.sitepoint.com/html5-older-browsers-and-the-shiv/ -->
|
||||
<!-- DEL https://www.vzhurudolu.cz/prirucka/checklist -->
|
||||
</head>
|
||||
<body>
|
||||
<!-- DEL -->
|
||||
</body>
|
||||
</html>
|
||||
endsnippet
|
||||
|
||||
snippet cmt "comment"
|
||||
<!-- ${0} -->
|
||||
endsnippet
|
||||
|
||||
snippet viewport_cordova "viewport used in cordova apps"
|
||||
<meta name="viewport" content="user-scalable=no, width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1"/>
|
||||
endsnippet
|
||||
snippet csp_cordova "CSP used in cordova"
|
||||
<meta http-equiv="Content-Security-Policy" content="default-src * gap://ready file: gulp_place('app.url_scheme', 'variable'):; style-src 'self' 'unsafe-inline'; img-src * data: *; script-src 'self' 'unsafe-inline' 'unsafe-eval'"/>
|
||||
<meta http-equiv="Content-Security-Policy" content="default-src *; style-src 'self' 'unsafe-inline'; img-src 'self' data: android-webview-video-poster:; script-src 'self' 'unsafe-inline' 'unsafe-eval'">
|
||||
endsnippet
|
||||
#endextends
|
3
.config/geany/.gitignore
vendored
Normal file
3
.config/geany/.gitignore
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
geany_socket_*
|
||||
session.conf
|
||||
.directory
|
4
.config/geany/README.md
Normal file
4
.config/geany/README.md
Normal file
@ -0,0 +1,4 @@
|
||||
# Geany
|
||||
I would like to use [Geany](https://www.geany.org/) as my secondary (mainly visual) editor instead of Notepad++ (and potentially VSCode).
|
||||
|
||||
I can also use it on my work MacOS for quick editing.
|
131
.config/geany/colorschemes/vsdark-mod.conf
Normal file
131
.config/geany/colorschemes/vsdark-mod.conf
Normal file
@ -0,0 +1,131 @@
|
||||
#
|
||||
# This library is free software; you can baseRedistribute it and/or
|
||||
# modify it under the terms of the GNU Library General Public
|
||||
# License as published by the Free Software Foundation; either
|
||||
# version 2 of the License, or (at your option) any later version.
|
||||
#
|
||||
# This library is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
# Library General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Library General Public
|
||||
# License along with this library; if not, write to the
|
||||
# Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
# Boston, MA 02111-1307, USA.
|
||||
#
|
||||
|
||||
[theme_info]
|
||||
name=VSDark (Modified)
|
||||
description=Visual Studio Code's Dark Theme (Modified).
|
||||
# list of each compatible Geany release version
|
||||
compat=1.22;1.23;1.23.1;1.24
|
||||
|
||||
[named_colors]
|
||||
base0=#ddd
|
||||
base1=#282828
|
||||
base2=#3f3f3f
|
||||
base3=#808080
|
||||
base4=#303030
|
||||
baseKeyword=#C89FE3
|
||||
baseString=#6FB2EA
|
||||
baseKeyWord2=#747e9e
|
||||
baseNumber=#F19B78
|
||||
baseComment=#94B386
|
||||
baseRed=#f00
|
||||
baseRedbg=#751212
|
||||
baseGreen=#859900
|
||||
baseKeyword3=#DCB55F
|
||||
baseFunction=#dcdcaa
|
||||
|
||||
[named_styles]
|
||||
default=base0;base1;true;false
|
||||
error=baseRed
|
||||
|
||||
|
||||
# Editor styles
|
||||
#-------------------------------------------------------------------------------
|
||||
selection=;#000000;;true
|
||||
current_line=;#212121;true
|
||||
brace_good=base0;base2;true
|
||||
brace_bad=baseRed;;true
|
||||
margin_line_number=base3;base4
|
||||
margin_folding=base3;#212121
|
||||
fold_symbol_highlight=base2
|
||||
indent_guide=base2;;true
|
||||
caret=baseString;;false
|
||||
marker_line=#fff;#00f;
|
||||
marker_search=#fff;#d791a8;
|
||||
marker_mark=;
|
||||
call_tips=base0;base1
|
||||
white_space=base3;;true
|
||||
|
||||
|
||||
# Programming languages
|
||||
#-------------------------------------------------------------------------------
|
||||
|
||||
comment=baseComment
|
||||
comment_doc=comment
|
||||
comment_line=comment
|
||||
comment_line_doc=comment_doc
|
||||
comment_doc_keyword=comment_doc,bold
|
||||
comment_doc_keyword_error=comment_doc,italic
|
||||
|
||||
number=baseNumber
|
||||
number_1=number
|
||||
number_2=number_1
|
||||
|
||||
type=baseKeyword;;true
|
||||
class=baseString
|
||||
function=baseFunction
|
||||
parameter=function
|
||||
|
||||
keyword=baseKeyword;;true
|
||||
keyword_1=keyword
|
||||
keyword_2=baseKeyword3;;true
|
||||
keyword_3=baseKeyWord2
|
||||
keyword_4=keyword_3
|
||||
|
||||
identifier=default
|
||||
identifier_1=identifier
|
||||
identifier_2=baseNumber
|
||||
identifier_3=identifier_2
|
||||
identifier_4=identifier_3
|
||||
|
||||
string=baseString
|
||||
string_1=string
|
||||
string_2=string_1
|
||||
string_3=default
|
||||
string_4=default
|
||||
string_eol=baseRed
|
||||
character=string_1
|
||||
backticks=string_2
|
||||
here_doc=string_2
|
||||
|
||||
scalar=string_2
|
||||
label=keyword,bold
|
||||
preprocessor=baseString
|
||||
regex=number_1
|
||||
operator=base0
|
||||
decorator=string_1,bold
|
||||
other=baseString
|
||||
|
||||
|
||||
# Markup-type languages
|
||||
#-------------------------------------------------------------------------------
|
||||
|
||||
tag=baseKeyword
|
||||
tag_unknown=tag,bold
|
||||
tag_end=tag,bold
|
||||
attribute=baseString
|
||||
attribute_unknown=attribute,bold
|
||||
value=string_1
|
||||
entity=default
|
||||
|
||||
|
||||
# Diff
|
||||
#-------------------------------------------------------------------------------
|
||||
|
||||
line_added=baseGreen
|
||||
line_removed=baseRed
|
||||
line_changed=baseKeyword3
|
132
.config/geany/colorschemes/vsdark.conf
Normal file
132
.config/geany/colorschemes/vsdark.conf
Normal file
@ -0,0 +1,132 @@
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Library General Public
|
||||
# License as published by the Free Software Foundation; either
|
||||
# version 2 of the License, or (at your option) any later version.
|
||||
#
|
||||
# This library is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
# Library General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Library General Public
|
||||
# License along with this library; if not, write to the
|
||||
# Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
# Boston, MA 02111-1307, USA.
|
||||
#
|
||||
|
||||
[theme_info]
|
||||
name=VSDark
|
||||
description=Visual Studio Code's Dark Theme.
|
||||
# list of each compatible Geany release version
|
||||
compat=1.22;1.23;1.23.1;1.24
|
||||
|
||||
[named_colors]
|
||||
base0=#d4d4d4
|
||||
base1=#1a1c1e
|
||||
base2=#3f3f3f
|
||||
base3=#808080
|
||||
base4=#303030
|
||||
vsblue=#3588cd
|
||||
aqua=#3ec7ac
|
||||
bluegrey=#747e9e
|
||||
orange=#ce8340
|
||||
lime=#65ff00
|
||||
grey=#6a9955
|
||||
red=#f00
|
||||
redbg=#751212
|
||||
green=#859900
|
||||
blue=#268bd2
|
||||
yellow=#dcdcaa
|
||||
|
||||
[named_styles]
|
||||
default=base0;base1
|
||||
error=red
|
||||
|
||||
|
||||
# Editor styles
|
||||
#-------------------------------------------------------------------------------
|
||||
selection=;#083840;;true
|
||||
current_line=;#111;true
|
||||
brace_good=base0;base2;true
|
||||
brace_bad=red;;true
|
||||
margin_line_number=base3;base4
|
||||
margin_folding=base3;#212121
|
||||
fold_symbol_highlight=base2
|
||||
indent_guide=base2;;true
|
||||
caret=aqua
|
||||
marker_line=#fff;#00f;
|
||||
marker_search=#fff;#d791a8;
|
||||
marker_mark=;
|
||||
call_tips=base0;base1
|
||||
white_space=base2;;true
|
||||
|
||||
|
||||
# Programming languages
|
||||
#-------------------------------------------------------------------------------
|
||||
|
||||
comment=grey
|
||||
comment_doc=comment
|
||||
comment_line=comment
|
||||
comment_line_doc=comment_doc
|
||||
comment_doc_keyword=comment_doc,bold
|
||||
comment_doc_keyword_error=comment_doc,italic
|
||||
|
||||
number=orange
|
||||
number_1=number
|
||||
number_2=number_1
|
||||
|
||||
type=vsblue;;true
|
||||
class=aqua
|
||||
function=yellow
|
||||
parameter=function
|
||||
|
||||
keyword=vsblue;;true
|
||||
keyword_1=keyword
|
||||
keyword_2=aqua;;true
|
||||
keyword_3=bluegrey
|
||||
keyword_4=keyword_3
|
||||
|
||||
identifier=default
|
||||
identifier_1=identifier
|
||||
identifier_2=identifier_1
|
||||
identifier_3=identifier_1
|
||||
identifier_4=identifier_1
|
||||
|
||||
string=orange
|
||||
string_1=string
|
||||
string_2=string_1
|
||||
string_3=default
|
||||
string_4=default
|
||||
string_eol=red
|
||||
character=string_1
|
||||
backticks=string_2
|
||||
here_doc=string_2
|
||||
|
||||
scalar=string_2
|
||||
label=keyword,bold
|
||||
preprocessor=aqua
|
||||
regex=number_1
|
||||
operator=base0
|
||||
decorator=string_1,bold
|
||||
other=aqua
|
||||
|
||||
|
||||
# Markup-type languages
|
||||
#-------------------------------------------------------------------------------
|
||||
|
||||
tag=vsblue
|
||||
tag_unknown=tag,bold
|
||||
tag_end=tag,bold
|
||||
attribute=aqua
|
||||
attribute_unknown=attribute,bold
|
||||
value=string_1
|
||||
entity=default
|
||||
|
||||
|
||||
# Diff
|
||||
#-------------------------------------------------------------------------------
|
||||
|
||||
line_added=green
|
||||
line_removed=red
|
||||
line_changed=blue
|
107
.config/geany/colorschemes/zenburn.conf
Normal file
107
.config/geany/colorschemes/zenburn.conf
Normal file
@ -0,0 +1,107 @@
|
||||
#
|
||||
# No explicit license or copyright info available but part of the
|
||||
# `gedit-themes` project:
|
||||
# https://github.com/mig/gedit-themes/blob/master/zenburn.xml
|
||||
#
|
||||
# Ported to Geany by Matthew Brush <matt(at)geany(dot)org>
|
||||
#
|
||||
|
||||
[theme_info]
|
||||
name=Zenburn
|
||||
description=A port of Zenburn from gedit-themes.
|
||||
# incremented automatically, do not change manually
|
||||
version=1226
|
||||
author=Unknown Author <unknown email address>
|
||||
url=https://github.com/mig/gedit-themes/blob/master/zenburn.xml
|
||||
# list of each compatible Geany release version
|
||||
compat=1.22;1.23;1.23.1;1.24
|
||||
|
||||
[named_styles]
|
||||
|
||||
default=#dcdccc;#2b2b2b;true;false
|
||||
error=#e37170;#332323
|
||||
|
||||
# Editor styles
|
||||
#-------------------------------------------------------------------------------
|
||||
|
||||
selection=#000;#7d7d7d;false;true
|
||||
current_line=#000;#000;true
|
||||
brace_good=#dcdccc;#7d7d7d;true;false
|
||||
brace_bad=#e37170;#7d7d7d;true;false
|
||||
margin_line_number=#7f8f8f;#464646
|
||||
margin_folding=#7f8f8f;#4c4c4c
|
||||
fold_symbol_highlight=#464646
|
||||
indent_guide=#666
|
||||
caret=#fff;;false
|
||||
marker_line=#000;#ff0
|
||||
marker_search=#000;#0000f0
|
||||
marker_mark=#000;#b8f4b8
|
||||
call_tips=#c0c0c0;#fff;false;false
|
||||
white_space=#666;#ddd;true;false
|
||||
|
||||
# Programming languages
|
||||
#-------------------------------------------------------------------------------
|
||||
|
||||
comment=#93B893
|
||||
comment_doc=comment
|
||||
comment_line=comment
|
||||
comment_line_doc=comment_doc
|
||||
comment_doc_keyword=comment_doc,bold
|
||||
comment_doc_keyword_error=comment_doc,italic
|
||||
|
||||
number=#8cd0d3
|
||||
number_1=number
|
||||
number_2=number_1
|
||||
|
||||
type=#dfdfbf;;true
|
||||
class=type
|
||||
function=#efef8f
|
||||
parameter=#efdcbc
|
||||
|
||||
keyword=#f0dfaf;;true
|
||||
keyword_1=keyword
|
||||
keyword_2=keyword_1
|
||||
keyword_3=keyword_1
|
||||
keyword_4=keyword_1
|
||||
|
||||
identifier=default
|
||||
identifier_1=identifier
|
||||
identifier_2=identifier_1
|
||||
identifier_3=identifier_1
|
||||
identifier_4=identifier_1
|
||||
|
||||
string=#cc9393
|
||||
string_1=string
|
||||
string_2=string_1
|
||||
string_3=default
|
||||
string_4=default
|
||||
string_eol=string_1,italic
|
||||
character=string_1
|
||||
backticks=string_2
|
||||
here_doc=string_2
|
||||
|
||||
scalar=string_2
|
||||
label=default,bold
|
||||
preprocessor=#ffcfaf
|
||||
regex=number_1
|
||||
operator=default
|
||||
decorator=string_1,bold
|
||||
other=default
|
||||
|
||||
# Markup-type languages
|
||||
#-------------------------------------------------------------------------------
|
||||
|
||||
tag=#f0dfaf
|
||||
tag_unknown=tag
|
||||
tag_end=tag
|
||||
attribute=#dfdfbf
|
||||
attribute_unknown=attribute
|
||||
value=string_1
|
||||
entity=default
|
||||
|
||||
# Diff
|
||||
#-------------------------------------------------------------------------------
|
||||
|
||||
line_added=#7f9f7f;;true
|
||||
line_removed=#cc9393;;true
|
||||
line_changed=preprocessor
|
32
.config/geany/filedefs/filetypes.Dockerfile.conf
Normal file
32
.config/geany/filedefs/filetypes.Dockerfile.conf
Normal file
@ -0,0 +1,32 @@
|
||||
# For complete documentation of this file, please see Geany's main documentation
|
||||
#
|
||||
# Geany Color Syntax support for Dockerfiles
|
||||
#
|
||||
# version 0.2
|
||||
#
|
||||
# 0.1 - original version
|
||||
# 0.2 - base on Sh instead - fixes problems with //, #, /*
|
||||
|
||||
[styling=C]
|
||||
|
||||
[keywords]
|
||||
primary= ADD ARG CMD COPY ENTRYPOINT ENV EXPOSE FROM HEALTHCHECK LABEL ONBUILD RUN SHELL STOPSIGNAL USER VOLUME WORKDIR
|
||||
|
||||
[lexer_properties=C]
|
||||
|
||||
[settings]
|
||||
lexer_filetype=Sh
|
||||
tag_parser=C
|
||||
extension=
|
||||
# single comments, like # in this file
|
||||
comment_single=#
|
||||
|
||||
# set to false if a comment character/string should start at column 0 of a line, true uses any
|
||||
# indentation of the line, e.g. setting to true causes the following on pressing CTRL+d
|
||||
#command_example();
|
||||
# setting to false would generate this
|
||||
# command_example();
|
||||
# This setting works only for single line comments
|
||||
comment_use_indent=true
|
||||
# context action command (please see Geany's main documentation for details)
|
||||
context_action_cmd=xdg-open "https://docs.docker.com/engine/reference/builder/"
|
17
.config/geany/filedefs/filetypes.JSON.conf
Normal file
17
.config/geany/filedefs/filetypes.JSON.conf
Normal file
@ -0,0 +1,17 @@
|
||||
[styling=C]
|
||||
|
||||
[lexer_properties=C]
|
||||
|
||||
[keywords]
|
||||
primary=true false null
|
||||
|
||||
[settings]
|
||||
lexer_filetype=Javascript
|
||||
tag_parser=JSON
|
||||
extension=json
|
||||
mime_type=application/json
|
||||
|
||||
#~ [indentation]
|
||||
#~ #width=4
|
||||
#~ # 0 is spaces, 1 is tabs, 2 is tab & spaces
|
||||
#~ #type=1
|
17
.config/geany/filedefs/filetypes.Less.conf
Normal file
17
.config/geany/filedefs/filetypes.Less.conf
Normal file
@ -0,0 +1,17 @@
|
||||
[styling=CSS]
|
||||
[keywords=CSS]
|
||||
primary=@import @media @font-face @keyframes @viewport @-webkit-keyframes @-moz-keyframes @-o-keyframes @-ms-keyframes @supports
|
||||
secondary=absolute all and animate auto background background-attachment background-color background-image background-position background-repeat background-size border border-bottom border-color border-left border-radius border-right border-style border-top border-width bottom box-shadow break-word clearfix color column count cursor display fixed float font font-family font-size font-weight height inline-block inline-table left letter-spacing line-height list-style margin margin-bottom margin-left margin-right margin-top max max-height max-width min min-height min-width none opacity overflow overflow-x overflow-y padding padding-bottom padding-left padding-right padding-top position relative repeat right size solid static table text-align text-decoration text-transform top transform transition transparent underline vertical-align visibility visible white-space width z-index
|
||||
|
||||
[lexer_properties=CSS]
|
||||
lexer.css.less.language=1
|
||||
|
||||
[settings=CSS]
|
||||
lexer_filetype=CSS
|
||||
tag_parser=CSS
|
||||
extension=less
|
||||
|
||||
comment_single=//
|
||||
comment_open=/*
|
||||
comment_close=*/
|
||||
comment_use_indent=true
|
2
.config/geany/filedefs/filetypes.README
Normal file
2
.config/geany/filedefs/filetypes.README
Normal file
@ -0,0 +1,2 @@
|
||||
Copy files from /usr/share/geany/filedefs to this directory to overwrite them. To use the defaults, just delete the file in this directory.
|
||||
For more information read the documentation (in /usr/share/doc/geany/html/index.html or visit https://www.geany.org/).
|
26
.config/geany/filedefs/filetypes.SCSS.conf
Normal file
26
.config/geany/filedefs/filetypes.SCSS.conf
Normal file
@ -0,0 +1,26 @@
|
||||
[styling=CSS]
|
||||
[keywords=CSS]
|
||||
primary=if else for while each in return @mixin @include @extend @import @function @if @else @for @each @while @debug @warn @error @at-root and or not only !default !optional
|
||||
secondary=a abbr acronym address applet area article aside audio b base basefont bdi bdo big blockquote body br button canvas caption center cite code col colgroup datalist dd del details dfn dir div dl dt em embed fieldset figcaption figure font footer form frame frameset h1 h2 h3 h4 h5 h6 head header hr html i iframe img input ins kbd keygen label legend li link listing main map mark menu menuitem meta meter nav nobr noframes noscript object ol optgroup option output p param picture pre progress q rp rt ruby s samp script section select small source span strike strong style sub summary sup table tbody td textarea tfoot th thead time title tr track tt u ul var video wbr
|
||||
user1=background color border margin padding font display position top right bottom left float clear z-index overflow visibility width height min-width max-width min-height max-height line-height letter-spacing word-spacing text-align text-decoration text-indent text-transform white-space vertical-align list-style-type list-style-position list-style-image background-color background-image background-position background-repeat background-size border-color border-width border-style border-radius box-shadow outline-color outline-width outline-style opacity filter transform transition animation keyframes grid flex flex-direction flex-wrap justify-content align-items align-content order flex-grow flex-shrink flex-basis align-self media screen print
|
||||
user2=import url charset namespace keyframes font-face supports media all print screen speech only
|
||||
user3=rgba hsla rgb hsl calc
|
||||
user4=webkit moz o ms khtml
|
||||
|
||||
[lexer_properties=CSS]
|
||||
lexer.css.scss.language=1
|
||||
|
||||
[settings=CSS]
|
||||
lexer_filetype=CSS
|
||||
tag_parser=CSS
|
||||
extension=scss
|
||||
|
||||
comment_single=//
|
||||
comment_open=/*
|
||||
comment_close=*/
|
||||
comment_use_indent=true
|
||||
|
||||
[build_settings]
|
||||
# %f will be replaced by the complete filename # %e will be replaced by the filename without extension # (use only one of it at one time)
|
||||
compiler=npx sass -c "%f"
|
||||
linker=npx sass --style expanded "%f" "%e.dev.css"
|
22
.config/geany/filedefs/filetypes.SVG.conf
Normal file
22
.config/geany/filedefs/filetypes.SVG.conf
Normal file
@ -0,0 +1,22 @@
|
||||
[styling=HTML]
|
||||
[keywords=XML]
|
||||
primary=svg circle rect ellipse line polyline polygon path g text use symbol defs marker style script
|
||||
|
||||
[settings=XML]
|
||||
extension=svg
|
||||
mime_type=image/svg+xml
|
||||
lexer_filetype=XML
|
||||
|
||||
# the following characters are these which a "word" can contains, see documentation
|
||||
#wordchars=_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789
|
||||
|
||||
#comment_single=
|
||||
#comment_open=<!--
|
||||
#comment_close=-->
|
||||
#comment_use_indent=true
|
||||
#context_action_cmd=
|
||||
#xml_indent_tags=true
|
||||
|
||||
[lexer_properties]
|
||||
lexer.xml.allow.scripts=1
|
||||
lexer.xml.allow.singletags=1
|
34
.config/geany/filedefs/filetypes.Stylus.conf
Normal file
34
.config/geany/filedefs/filetypes.Stylus.conf
Normal file
@ -0,0 +1,34 @@
|
||||
[styling]
|
||||
default=default
|
||||
comment=comment
|
||||
comment_doc=comment_doc
|
||||
number=number
|
||||
keyword=keyword
|
||||
keyword2=builtin
|
||||
string=string
|
||||
character=character
|
||||
uuid=uuid
|
||||
preprocessor=preprocessor
|
||||
operator=operator
|
||||
identifier=identifier
|
||||
stringeol=stringeol
|
||||
function=function
|
||||
|
||||
[keywords=CSS]
|
||||
primary=@import @media @font-face @keyframes @viewport @-webkit-keyframes @-moz-keyframes @-o-keyframes @-ms-keyframes @supports if else for in and or not return extend
|
||||
secondary=absolute all animate auto background background-attachment background-color background-image background-position background-repeat background-size border border-bottom border-color border-left border-radius border-right border-style border-top border-width bottom box-shadow break-word clearfix color column count cursor display fixed float font font-family font-size font-weight height inline-block inline-table left letter-spacing line-height list-style margin margin-bottom margin-left margin-right margin-top max max-height max-width min min-height min-width none opacity overflow overflow-x overflow-y padding padding-bottom padding-left padding-right padding-top position relative repeat right size solid static table text-align text-decoration text-transform top transform transition transparent underline vertical-align visibility visible white-space width z-index rgba hsla rgb hsl calc
|
||||
user1=base background-color background-position-x background-position-y background-size background-clip border-collapse border-color border-image border-image-outset border-image-repeat border-image-slice border-image-source border-image-width border-spacing border-style bottom box-align box-direction box-flex box-orient box-pack color color-interpolation color-rendering column-count column-fill column-gap column-rule column-rule-color column-rule-style column-rule-width column-span column-width content counter-increment counter-reset cursor display fill fill-opacity fill-rule filter flex flex-align flex-direction flex-pack flex-wrap float flood-color flood-opacity font font-family font-size font-smoothing font-stretch font-style font-variant font-weight height justify-content left letter-spacing line-break line-height list-style list-style-image list-style-position list-style-type margin margin-bottom margin-left margin-right margin-top marker-end marker-mid marker-start mask mask-type max-height max-width min-height min-width object-fit object-position opacity order outline outline-color outline-offset outline-style outline-width overflow overflow-x overflow-y padding padding-bottom padding-left padding-right padding-top page-break-after page-break-before page-break-inside perspective perspective-origin position quotes right shape-image-threshold shape-margin shape-outside size speak src stop-color stop-opacity stroke stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width tab-size table-layout text-align text-align-last text-anchor text-decoration text-decoration-color text-decoration-line text-decoration-style text-indent text-overflow text-rendering text-shadow text-size-adjust text-transform top transform transform-origin transform-style transition transition-delay transition-duration transition-property transition-timing-function unicode-bidi vertical-align visibility white-space widows width will-change word-break word-spacing word-wrap writing-mode z-index
|
||||
|
||||
[lexer_properties]
|
||||
lexer.cpp.track.preprocessor=1
|
||||
lexer.cpp.update.preprocessor=1
|
||||
|
||||
[settings=CSS]
|
||||
extension=styl
|
||||
lexer_filetype=python
|
||||
tag_parser=CSS
|
||||
|
||||
comment_single=//
|
||||
comment_open=/*
|
||||
comment_close=*/
|
||||
comment_use_indent=true
|
21
.config/geany/filedefs/filetypes.TypeScript.conf
Normal file
21
.config/geany/filedefs/filetypes.TypeScript.conf
Normal file
@ -0,0 +1,21 @@
|
||||
[styling=C]
|
||||
[keywords]
|
||||
primary=abstract as any async await boolean break case catch class const constructor continue debugger declare default delete do else enum export extends false finally for from function get if implements import in instanceof interface let module namespace new null of package private protected public readonly require return set static super switch symbol this throw true try type typeof var void while with yield
|
||||
secondary=Array ArrayBuffer Boolean constructor DataView Date decodeURI decodeURIComponent encodeURI encodeURIComponent Error eval EvalError Float32Array Float64Array Function hasOwnProperty Infinity Int16Array Int32Array Int8Array isFinite isNaN isPrototypeOf JSON Map Math NaN Number Object parseFloat parseInt Promise propertyIsEnumerable Proxy RangeError ReferenceError Reflect RegExp Set String Symbol SyntaxError toLocaleString toString TypeError Uint16Array Uint32Array Uint8Array Uint8ClampedArray undefined URIError valueOf WeakMap WeakSet
|
||||
|
||||
[lexer_properties=C]
|
||||
# https://github.com/geany/geany/blob/edd733013047c1f2a4786a64e2364f8b30c41be9/scintilla/lexilla/lexers/LexCPP.cxx#L363
|
||||
lexer.cpp.backquoted.strings=1
|
||||
lexer.cpp.allow.dollars=1
|
||||
lexer.cpp.escape.sequence=1
|
||||
|
||||
[settings]
|
||||
extension=ts
|
||||
#~ lexer_filetype=C
|
||||
lexer_filetype=ActionScript
|
||||
mime_type=text/x-typescript
|
||||
wordchars=$_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789
|
||||
comment_single=//
|
||||
comment_open=/*
|
||||
comment_close=*/
|
||||
comment_use_indent=true
|
16
.config/geany/filedefs/filetypes.Vimrc.conf
Normal file
16
.config/geany/filedefs/filetypes.Vimrc.conf
Normal file
@ -0,0 +1,16 @@
|
||||
[styling=C]
|
||||
|
||||
[keywords]
|
||||
primary=if endif else elseif set let call function endfunction return for endfor while endwhile break continue execute try endtry catch throw finally
|
||||
|
||||
[lexer_properties=C]
|
||||
|
||||
[settings]
|
||||
lexer_filetype=Sh
|
||||
tag_parser=C
|
||||
extension=
|
||||
comment_single=#
|
||||
comment_open="
|
||||
comment_close=
|
||||
context_action=false
|
||||
context_action_menu=false
|
19
.config/geany/filedefs/filetypes.Vue.conf
Normal file
19
.config/geany/filedefs/filetypes.Vue.conf
Normal file
@ -0,0 +1,19 @@
|
||||
[styling=HTML]
|
||||
[keywords=HTML]
|
||||
primary=template script style data methods props computed watch components directives filters mixins created mounted updated destroyed beforeCreate beforeMount beforeUpdate beforeDestroy emit
|
||||
secondary=Array Boolean Date Error Function JSON Math Number Object Promise RegExp String Symbol console document window
|
||||
user1=import from export default async await try catch throw return if else for while switch case break continue function const let var new this true false null undefined
|
||||
|
||||
[settings=XML]
|
||||
extension=vue
|
||||
lexer_filetype=HTML
|
||||
comment_single=//
|
||||
comment_open=/*
|
||||
comment_close=*/
|
||||
comment_use_indent=true
|
||||
context_action_cmd=
|
||||
|
||||
[lexer_properties]
|
||||
# https://github.com/geany/geany/blob/edd733013047c1f2a4786a64e2364f8b30c41be9/scintilla/lexilla/lexers/LexHTML.cxx#L745
|
||||
lexer.xml.allow.singletags=1
|
||||
styling.within.preproc=1
|
12
.config/geany/filedefs/filetypes.javascript
Normal file
12
.config/geany/filedefs/filetypes.javascript
Normal file
@ -0,0 +1,12 @@
|
||||
[lexer_properties=C]
|
||||
# https://github.com/geany/geany/blob/edd733013047c1f2a4786a64e2364f8b30c41be9/scintilla/lexilla/lexers/LexCPP.cxx#L363
|
||||
lexer.cpp.backquoted.strings=1
|
||||
lexer.cpp.allow.dollars=1
|
||||
lexer.cpp.escape.sequence=1
|
||||
|
||||
[settings]
|
||||
extension=js
|
||||
#~ lexer_filetype=C
|
||||
lexer_filetype=ActionScript
|
||||
|
||||
wordchars=$_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789
|
98
.config/geany/filetype_extensions.conf
Normal file
98
.config/geany/filetype_extensions.conf
Normal file
@ -0,0 +1,98 @@
|
||||
# Filetype extension configuration file for Geany
|
||||
# Insert as many items as you want, separate them with a ";".
|
||||
# See Geany's main documentation for details.
|
||||
[Extensions]
|
||||
#Abaqus=*.inp;
|
||||
#Abc=*.abc;*.abp;
|
||||
#ActionScript=*.as;
|
||||
#Ada=*.adb;*.ads;
|
||||
#Arduino=*.ino;*.pde;
|
||||
#Asciidoc=*.asciidoc;*.adoc;
|
||||
#ASM=*.asm;*.asm51;*.a51;*.s;*.S;*.sx;
|
||||
#AutoIt=*.au3;
|
||||
#Batch=*.bat;*.cmd;*.nt;
|
||||
#BibTeX=*.bib;
|
||||
#CAML=*.ml;*.mli;
|
||||
#C=*.c;*.xpm;
|
||||
#C++=*.cpp;*.cxx;*.c++;*.cc;*.h;*.hpp;*.hxx;*.h++;*.hh;*.C;*.H;
|
||||
#Clojure=*.clj;*.cljs;*.cljc;
|
||||
#CUDA=*.cu;*.cuh;*.h;
|
||||
#C#=*.cs;
|
||||
#CMake=CMakeLists.txt;*.cmake;*.ctest;
|
||||
#COBOL=*.cob;*.cpy;*.cbl;*.cobol;
|
||||
#CoffeeScript=*.coffee;Cakefile;*.Cakefile;*.coffee.erb;*.iced;*.iced.erb;
|
||||
#Conf=*.conf;*.ini;config;*rc;*.cfg;*.desktop;*.properties;
|
||||
#CSS=*.css;
|
||||
#Cython=*.pyx;*.pxd;*.pxi;
|
||||
#D=*.d;*.di;
|
||||
#Diff=*.diff;*.patch;*.rej;
|
||||
#Docbook=*.docbook;
|
||||
Dockerfile=Dockerfile;dockerfile;*.dockerfile;*.Dockerfile;
|
||||
#Erlang=*.erl;*.hrl;
|
||||
#F77=*.f;*.for;*.ftn;*.f77;*.F;*.FOR;*.FTN;*.fpp;*.FPP;*.F77;
|
||||
#Forth=*.fs;*.fth;
|
||||
#Fortran=*.f90;*.f95;*.f03;*.f08;*.F90;*.F95;*.F03;*.F08;
|
||||
#FreeBasic=*.bas;*.bi;*.vbs;
|
||||
#GDScript=*.gd;
|
||||
#Genie=*.gs;
|
||||
#GLSL=*.glsl;*.frag;*.vert;
|
||||
#Go=*.go;
|
||||
#Graphviz=*.gv;*.dot;
|
||||
#Groovy=*.groovy;*.gradle;
|
||||
#Haskell=*.hs;*.lhs;*.hs-boot;*.lhs-boot;
|
||||
#Haxe=*.hx;
|
||||
#HTML=*.htm;*.html;*.shtml;*.hta;*.htd;*.htt;*.cfm;*.tpl;
|
||||
#Java=*.java;*.jsp;
|
||||
JavaScript=*.js;*.mjs;
|
||||
#JSON=*.json;
|
||||
#Julia=*.jl;
|
||||
#Kotlin=*.kt;*.kts;
|
||||
#LaTeX=*.tex;*.sty;*.idx;*.ltx;*.latex;*.aux;
|
||||
Less=*.less;
|
||||
#Lisp=*.lisp;*.el;
|
||||
#Lua=*.lua;
|
||||
#Make=*.mak;*.mk;GNUmakefile;makefile;Makefile;makefile.*;Makefile.*;
|
||||
#Markdown=*.mdml;*.markdown;*.md;*.mkd;*.mkdn;*.mdwn;*.mdown;*.mdtxt;*.mdtext;
|
||||
#Matlab/Octave=*.m;
|
||||
#Meson=meson.build;meson.options;meson_options.txt;
|
||||
#Nim=*.nim;
|
||||
#NSIS=*.nsi;*.nsh;
|
||||
#Objective-C=*.m;*.mm;*.h;
|
||||
#Pascal=*.pas;*.pp;*.inc;*.dpr;*.dpk;
|
||||
#Perl=*.pl;*.perl;*.pm;*.agi;*.pod;
|
||||
#PHP=*.php;*.php3;*.php4;*.php5;*.phtml;
|
||||
#Po=*.po;*.pot;
|
||||
#Python=*.py;*.pyw;SConstruct;SConscript;wscript;
|
||||
#PowerShell=*.ps1;*.psm1;
|
||||
#reStructuredText=*.rest;*.reST;*.rst;
|
||||
#R=*.R;*.r;
|
||||
#Rust=*.rs;
|
||||
#Ruby=*.rb;*.rhtml;*.ruby;*.gemspec;Gemfile;rakefile;Rakefile;
|
||||
#Scala=*.scala;*.scl;
|
||||
#Sh=*.sh;configure;configure.in;configure.in.in;configure.ac;*.ksh;*.mksh;*.zsh;*.ash;*.bash;.bashrc;bash.bashrc;.bash_*;bash_*;*.m4;PKGBUILD;*profile;
|
||||
#Smalltalk=*.st;
|
||||
#SQL=*.sql;
|
||||
Stylus=*.styl;
|
||||
#Swift=*.swift;
|
||||
#Tcl=*.tcl;*.tk;*.wish;*.exp;
|
||||
#Txt2tags=*.t2t;
|
||||
TypeScript=*.ts;*.tsx;
|
||||
SCSS=*.scss
|
||||
SVG=*.svg
|
||||
#Vala=*.vala;*.vapi;
|
||||
#Verilog=*.v;
|
||||
#VHDL=*.vhd;*.vhdl;
|
||||
Vimrc=*.vimrc;vimrc;tridactylrc;vifmrc;
|
||||
Vue=*.vue;
|
||||
#XML=*.xml;*.sgml;*.xsl;*.xslt;*.xsd;*.xhtml;*.xul;*.dtd;*.xtpl;*.mml;*.mathml;
|
||||
#YAML=*.yaml;*.yml;
|
||||
#Zephir=*.zep;
|
||||
#None=*;
|
||||
|
||||
# Note: restarting is required after editing groups
|
||||
[Groups]
|
||||
#Programming=Arduino;Clojure;CUDA;Cython;Genie;Groovy;Kotlin;Nim;Scala;Swift;
|
||||
Script=JavaScript;TypeScript;Dockerfile;Vimrc;
|
||||
Markup=SVG;SCSS;Stylus;Less;Vue;
|
||||
#Misc=JSON;
|
||||
#None=
|
234
.config/geany/geany.conf
Normal file
234
.config/geany/geany.conf
Normal file
@ -0,0 +1,234 @@
|
||||
[geany]
|
||||
pref_main_load_session=false
|
||||
pref_main_project_file_in_basedir=false
|
||||
pref_main_save_winpos=true
|
||||
pref_main_save_wingeom=true
|
||||
pref_main_confirm_exit=false
|
||||
pref_main_suppress_status_messages=false
|
||||
switch_msgwin_pages=false
|
||||
beep_on_errors=true
|
||||
auto_focus=false
|
||||
sidebar_symbol_visible=true
|
||||
sidebar_openfiles_visible=true
|
||||
editor_font=Ubuntu Mono Bold 9
|
||||
tagbar_font=Ubuntu Mono 8
|
||||
msgwin_font=Ubuntu Mono Bold 8
|
||||
show_notebook_tabs=false
|
||||
show_tab_cross=true
|
||||
tab_order_ltr=true
|
||||
tab_order_beside=true
|
||||
tab_pos_editor=2
|
||||
tab_pos_msgwin=0
|
||||
tab_label_length=1000
|
||||
show_indent_guide=true
|
||||
show_white_space=true
|
||||
show_line_endings=false
|
||||
show_line_endings_only_when_differ=false
|
||||
show_markers_margin=true
|
||||
show_linenumber_margin=true
|
||||
long_line_enabled=true
|
||||
long_line_type=0
|
||||
long_line_column=120
|
||||
long_line_color=#000000
|
||||
symbolcompletion_max_height=10
|
||||
symbolcompletion_min_chars=3
|
||||
use_folding=true
|
||||
unfold_all_children=false
|
||||
use_indicators=true
|
||||
line_wrapping=false
|
||||
auto_close_xml_tags=true
|
||||
complete_snippets=true
|
||||
auto_complete_symbols=true
|
||||
pref_editor_disable_dnd=false
|
||||
pref_editor_smart_home_key=true
|
||||
pref_editor_newline_strip=false
|
||||
line_break_column=120
|
||||
auto_continue_multiline=true
|
||||
comment_toggle_mark=~
|
||||
scroll_stop_at_last_line=true
|
||||
autoclose_chars=0
|
||||
pref_editor_default_new_encoding=UTF-8
|
||||
pref_editor_default_open_encoding=none
|
||||
default_eol_character=2
|
||||
pref_editor_new_line=false
|
||||
pref_editor_ensure_convert_line_endings=false
|
||||
pref_editor_replace_tabs=false
|
||||
pref_editor_trail_space=false
|
||||
pref_toolbar_show=false
|
||||
pref_toolbar_append_to_menu=false
|
||||
pref_toolbar_use_gtk_default_style=true
|
||||
pref_toolbar_use_gtk_default_icon=true
|
||||
pref_toolbar_icon_style=0
|
||||
pref_toolbar_icon_size=0
|
||||
pref_template_developer=Jan Andrle
|
||||
pref_template_company=
|
||||
pref_template_mail=andrle.jan@centrum.cz
|
||||
pref_template_initial=JA
|
||||
pref_template_version=1.0
|
||||
pref_template_year=%Y
|
||||
pref_template_date=%Y-%m-%d
|
||||
pref_template_datetime=%d.%m.%Y %H:%M:%S %Z
|
||||
context_action_cmd=
|
||||
sidebar_visible=true
|
||||
statusbar_visible=true
|
||||
msgwindow_visible=false
|
||||
fullscreen=false
|
||||
symbols_group_by_type=true
|
||||
color_picker_palette=
|
||||
scribble_text=Pište sem cokoliv, použijte toto jako poznámkový blok
|
||||
scribble_pos=53
|
||||
custom_date_format=
|
||||
default_open_path=
|
||||
cmdline_new_files=true
|
||||
notebook_double_click_hides_widgets=false
|
||||
tab_close_switch_to_mru=true
|
||||
tab_pos_sidebar=2
|
||||
openfiles_path_mode=2
|
||||
sidebar_pos=0
|
||||
symbols_sort_mode=1
|
||||
msgwin_orientation=1
|
||||
highlighting_invert_all=false
|
||||
pref_main_search_use_current_word=true
|
||||
check_detect_indent=false
|
||||
detect_indent_width=false
|
||||
use_tab_to_indent=true
|
||||
backspace_unindent=true
|
||||
pref_editor_tab_width=4
|
||||
indent_mode=2
|
||||
indent_type=1
|
||||
virtualspace=1
|
||||
change_history_markers=false
|
||||
change_history_indicators=false
|
||||
autocomplete_doc_words=false
|
||||
completion_drops_rest_of_word=false
|
||||
autocompletion_max_entries=30
|
||||
autocompletion_update_freq=250
|
||||
color_scheme=vsdark-mod.conf
|
||||
scroll_lines_around_cursor=0
|
||||
mru_length=10
|
||||
disk_check_timeout=30
|
||||
show_editor_scrollbars=true
|
||||
brace_match_ltgt=true
|
||||
use_gtk_word_boundaries=true
|
||||
complete_snippets_whilst_editing=false
|
||||
indent_hard_tab_width=4
|
||||
editor_ime_interaction=0
|
||||
use_atomic_file_saving=false
|
||||
gio_unsafe_save_backup=false
|
||||
use_gio_unsafe_file_saving=true
|
||||
keep_edit_history_on_reload=false
|
||||
show_keep_edit_history_on_reload_msg=false
|
||||
reload_clean_doc_on_file_change=false
|
||||
save_config_on_file_change=true
|
||||
extract_filetype_regex=-\\*-\\s*([^\\s]+)\\s*-\\*-
|
||||
allow_always_save=false
|
||||
find_selection_type=0
|
||||
replace_and_find_by_default=true
|
||||
show_symbol_list_expanders=true
|
||||
compiler_tab_autoscroll=true
|
||||
statusbar_template=line: %l / %L col: %c sel: %s %w %t %mEOL: %M encoding: %e filetype: %f scope: %S
|
||||
new_document_after_close=false
|
||||
msgwin_status_visible=true
|
||||
msgwin_compiler_visible=true
|
||||
msgwin_messages_visible=true
|
||||
msgwin_scribble_visible=true
|
||||
warn_on_project_close=true
|
||||
documents_show_paths=true
|
||||
sidebar_page=3
|
||||
pref_main_project_session=true
|
||||
use_native_windows_dialogs=false
|
||||
treeview_position=226
|
||||
msgwindow_position=755
|
||||
geometry=1280;26;1277;1026;0;
|
||||
use_native_dialogs=true
|
||||
|
||||
[tools]
|
||||
terminal_cmd=konsole "%c"
|
||||
browser_cmd=firefox
|
||||
grep_cmd=grep
|
||||
shell_cmd=/bin/bash
|
||||
|
||||
[printing]
|
||||
print_cmd=lpr '%f'
|
||||
use_gtk_printing=true
|
||||
print_line_numbers=true
|
||||
print_page_numbers=true
|
||||
print_page_header=true
|
||||
page_header_basename=false
|
||||
page_header_datefmt=%c
|
||||
|
||||
[VTE]
|
||||
load_vte=true
|
||||
font=Monospace 10
|
||||
scroll_on_key=true
|
||||
scroll_on_out=true
|
||||
enable_bash_keys=true
|
||||
ignore_menu_bar_accel=false
|
||||
follow_path=false
|
||||
run_in_vte=false
|
||||
skip_run_script=false
|
||||
cursor_blinks=false
|
||||
scrollback_lines=500
|
||||
shell=/bin/bash
|
||||
colour_fore=#DEDDDA
|
||||
colour_back=#2B2B2B
|
||||
send_cmd_prefix=
|
||||
send_selection_unsafe=false
|
||||
last_dir=/home/jaandrle/Vzdálené/GitHub/Facilitator-App-Native
|
||||
|
||||
[build-menu]
|
||||
number_ft_menu_items=0
|
||||
number_non_ft_menu_items=0
|
||||
number_exec_menu_items=0
|
||||
|
||||
[search]
|
||||
pref_search_hide_find_dialog=false
|
||||
pref_search_always_wrap=false
|
||||
pref_search_current_file_dir=true
|
||||
fif_regexp=false
|
||||
fif_case_sensitive=true
|
||||
fif_match_whole_word=false
|
||||
fif_invert_results=false
|
||||
fif_recursive=false
|
||||
fif_extra_options=
|
||||
fif_use_extra_options=false
|
||||
fif_files=
|
||||
fif_files_mode=0
|
||||
find_regexp=false
|
||||
find_regexp_multiline=false
|
||||
find_case_sensitive=false
|
||||
find_escape_sequences=false
|
||||
find_match_whole_word=false
|
||||
find_match_word_start=false
|
||||
find_close_dialog=true
|
||||
replace_regexp=false
|
||||
replace_regexp_multiline=false
|
||||
replace_case_sensitive=false
|
||||
replace_escape_sequences=true
|
||||
replace_match_whole_word=false
|
||||
replace_match_word_start=false
|
||||
replace_search_backwards=false
|
||||
replace_close_dialog=true
|
||||
find_all_expanded=false
|
||||
replace_all_expanded=true
|
||||
position_find_x=2201
|
||||
position_find_y=372
|
||||
position_replace_x=504
|
||||
position_replace_y=397
|
||||
position_fif_x=-1
|
||||
position_fif_y=-1
|
||||
|
||||
[plugins]
|
||||
load_plugins=true
|
||||
custom_plugin_path=
|
||||
active_plugins=/usr/lib/x86_64-linux-gnu/geany/addons.so;/usr/lib/x86_64-linux-gnu/geany/autoclose.so;/usr/lib/x86_64-linux-gnu/geany/automark.so;/usr/lib/x86_64-linux-gnu/geany/commander.so;/usr/lib/x86_64-linux-gnu/geany/export.so;/usr/lib/x86_64-linux-gnu/geany/geanyextrasel.so;/usr/lib/x86_64-linux-gnu/geany/geanyctags.so;/usr/lib/x86_64-linux-gnu/geany/htmlchars.so;/usr/lib/x86_64-linux-gnu/geany/keyrecord.so;/usr/lib/x86_64-linux-gnu/geany/geanymacro.so;/usr/lib/x86_64-linux-gnu/geany/filebrowser.so;/usr/lib/x86_64-linux-gnu/geany/projectorganizer.so;/usr/lib/x86_64-linux-gnu/geany/saveactions.so;/usr/lib/x86_64-linux-gnu/geany/vimode.so;
|
||||
|
||||
[project]
|
||||
session_file=
|
||||
project_file_path=/home/jaandrle/Dokumenty/Projekty/geany
|
||||
|
||||
[files]
|
||||
recent_files=/home/jaandrle/Stažené/config.xml;/home/jaandrle/Stažené/sentry.php.json;/home/jaandrle/Vzdálené/GitHub/DHLC-Internet-Networking-old/web/api/index.php;/media/jaandrle/WARTY WARTH/geany/filetype_extensions.conf;/media/jaandrle/WARTY WARTH/geany/plugins/geanydoc/geanydoc.conf;/media/jaandrle/WARTY WARTH/geany/plugins/saveactions/saveactions.conf;/media/jaandrle/WARTY WARTH/geany/plugins/vimode/vimode.conf;/media/jaandrle/WARTY WARTH/geany/plugins/filebrowser/filebrowser.conf;/media/jaandrle/WARTY WARTH/geany/plugins/VC/VC.conf;/media/jaandrle/WARTY WARTH/geany/plugins/spellcheck/spellcheck.conf;
|
||||
recent_projects=/home/jaandrle/Dokumenty/Projekty/geany/Facilitator-App-Native.geany;/home/jaandrle/Dokumenty/Projekty/geany/deka-dom-el.geany;/home/jaandrle/Dokumenty/Projekty/geany/Facilitator-App-Native;/home/jaandrle/Dokumenty/Projekty/geany/deka-dom-el;/home/jaandrle/Dokumenty/Projekty/geany/deka-dom-el/deka-dom-el;/home/jaandrle/Dokumenty/Projekty/geany/.babelrc;
|
||||
current_page=0
|
||||
FILE_NAME_0=0;XML;0;EUTF-8;1;1;0;%2Fhome%2Fjaandrle%2FStažené%2Fconfig.xml;0;4
|
7
.config/geany/geany_mac.conf
Normal file
7
.config/geany/geany_mac.conf
Normal file
@ -0,0 +1,7 @@
|
||||
[Settings]
|
||||
# 0: automatic selection based on system settings (requires Geany restart when changed, macOS 10.14+); 1: light; 2: dark; make sure there's no ~/.config/gtk-3.0/settings.ini file, otherwise it overrides the settings made here
|
||||
theme=0
|
||||
# no value: autodetect; locale string: locale to be used (e.g. en_US.UTF-8)
|
||||
locale=
|
||||
# no value: don't use any IM module; module name: use the specified module, e.g. 'quartz' for native macOS behavior, for complete list of modules, see Geany.app/Contents/Resources/lib/gtk-3.0/3.0.0/immodules, use without the 'im-' prefix
|
||||
im_module=quartz
|
5
.config/geany/gtk-3.0/settings.ini
Normal file
5
.config/geany/gtk-3.0/settings.ini
Normal file
@ -0,0 +1,5 @@
|
||||
[Settings]
|
||||
gtk-menu-images=1
|
||||
gtk-theme-name=Prof-Gnome
|
||||
gtk-application-prefer-dark-theme=1
|
||||
gtk-icon-theme-name=Papirus-Dark
|
227
.config/geany/keybindings.conf
Normal file
227
.config/geany/keybindings.conf
Normal file
@ -0,0 +1,227 @@
|
||||
[Bindings]
|
||||
menu_new=<Primary>n
|
||||
menu_open=<Primary>o
|
||||
menu_open_selected=<Primary><Shift>o
|
||||
menu_save=<Primary>s
|
||||
menu_saveas=
|
||||
menu_saveall=<Primary><Shift>s
|
||||
file_properties=
|
||||
menu_print=
|
||||
menu_close=<Primary>w
|
||||
menu_closeall=<Primary><Shift>w
|
||||
menu_reloadfile=<Primary>r
|
||||
menu_reloadall=
|
||||
file_openlasttab=
|
||||
menu_quit=<Primary>q
|
||||
menu_undo=<Primary>z
|
||||
menu_redo=<Primary><Shift>z
|
||||
edit_duplicateline=
|
||||
edit_deleteline=
|
||||
edit_deletelinetoend=<Primary><Shift>Delete
|
||||
edit_deletelinetobegin=<Primary><Shift>BackSpace
|
||||
edit_transposeline=
|
||||
edit_scrolltoline=<Primary><Shift>l
|
||||
edit_scrolllineup=<Alt>Up
|
||||
edit_scrolllinedown=<Alt>Down
|
||||
edit_completesnippet=Tab
|
||||
move_snippetnextcursor=<Shift>ISO_Left_Tab
|
||||
edit_suppresssnippetcompletion=
|
||||
popup_contextaction=
|
||||
edit_autocomplete=<Primary>space
|
||||
edit_calltip=<Primary>space
|
||||
edit_wordpartcompletion=Tab
|
||||
edit_movelineup=<Alt>Page_Up
|
||||
edit_movelinedown=<Alt>Page_Down
|
||||
menu_cut=<Primary>x
|
||||
menu_copy=<Primary>c
|
||||
menu_paste=<Primary>v
|
||||
edit_copyline=<Primary><Shift>c
|
||||
edit_cutline=<Primary><Shift>x
|
||||
menu_selectall=<Primary>a
|
||||
edit_selectword=<Shift><Alt>w
|
||||
edit_selectline=<Shift><Alt>l
|
||||
edit_selectparagraph=<Shift><Alt>p
|
||||
edit_selectwordpartleft=
|
||||
edit_selectwordpartright=
|
||||
edit_togglecase=<Primary><Alt>u
|
||||
edit_commentlinetoggle=<Primary>e
|
||||
edit_commentline=
|
||||
edit_uncommentline=
|
||||
edit_increaseindent=<Primary>i
|
||||
edit_decreaseindent=<Primary>u
|
||||
edit_increaseindentbyspace=
|
||||
edit_decreaseindentbyspace=
|
||||
edit_autoindent=
|
||||
edit_sendtocmd1=<Primary>1
|
||||
edit_sendtocmd2=<Primary>2
|
||||
edit_sendtocmd3=<Primary>3
|
||||
edit_sendtocmd4=
|
||||
edit_sendtocmd5=
|
||||
edit_sendtocmd6=
|
||||
edit_sendtocmd7=
|
||||
edit_sendtocmd8=
|
||||
edit_sendtocmd9=
|
||||
edit_sendtovte=
|
||||
format_reflowparagraph=<Primary>j
|
||||
edit_joinlines=
|
||||
menu_insert_date=
|
||||
edit_insertwhitespace=
|
||||
edit_insertlinebefore=
|
||||
edit_insertlineafter=
|
||||
menu_preferences=<Primary><Alt>p
|
||||
menu_pluginpreferences=
|
||||
menu_find=<Primary>f
|
||||
menu_findnext=F3
|
||||
menu_findprevious=<Shift>F3
|
||||
menu_findnextsel=
|
||||
menu_findprevsel=
|
||||
menu_replace=<Primary>h
|
||||
menu_findinfiles=<Primary><Shift>f
|
||||
menu_nextmessage=
|
||||
menu_previousmessage=
|
||||
popup_findusage=<Primary><Shift>e
|
||||
popup_finddocumentusage=<Primary><Shift>d
|
||||
find_markall=<Primary><Shift>m
|
||||
nav_back=<Alt>Left
|
||||
nav_forward=<Alt>Right
|
||||
menu_gotoline=<Primary>g
|
||||
edit_gotomatchingbrace=<Primary>equal
|
||||
edit_togglemarker=<Primary>m
|
||||
edit_gotonextmarker=<Primary>period
|
||||
edit_gotopreviousmarker=<Primary>comma
|
||||
popup_gototagdefinition=<Primary>t
|
||||
popup_gototagdeclaration=<Primary><Shift>t
|
||||
edit_gotolinestart=Home
|
||||
edit_gotolineend=End
|
||||
edit_gotolinestartvisual=<Alt>Home
|
||||
edit_gotolineendvisual=<Alt>End
|
||||
edit_prevwordstart=<Primary>slash
|
||||
edit_nextwordstart=<Primary>backslash
|
||||
menu_toggleall=F1
|
||||
menu_fullscreen=F11
|
||||
menu_messagewindow=
|
||||
toggle_sidebar=
|
||||
menu_zoomin=<Primary>plus
|
||||
menu_zoomout=<Primary>minus
|
||||
normal_size=<Primary>0
|
||||
menu_linewrap=
|
||||
menu_linebreak=
|
||||
menu_clone=
|
||||
menu_strip_trailing_spaces=
|
||||
menu_replacetabs=
|
||||
menu_replacespaces=
|
||||
menu_togglefold=
|
||||
menu_foldall=
|
||||
menu_unfoldall=
|
||||
reloadtaglist=<Primary><Shift>r
|
||||
remove_markers=
|
||||
remove_error_indicators=
|
||||
remove_markers_and_indicators=
|
||||
project_new=
|
||||
project_new_from_folder=
|
||||
project_open=
|
||||
project_properties=
|
||||
project_close=
|
||||
build_compile=F8
|
||||
build_link=F9
|
||||
build_make=<Shift>F9
|
||||
build_makeowntarget=<Primary><Shift>F9
|
||||
build_makeobject=<Shift>F8
|
||||
build_nexterror=
|
||||
build_previouserror=
|
||||
build_run=F5
|
||||
build_options=
|
||||
menu_opencolorchooser=
|
||||
menu_help=
|
||||
switch_editor=F2
|
||||
switch_search_bar=F7
|
||||
switch_message_window=
|
||||
switch_compiler=
|
||||
switch_messages=
|
||||
switch_scribble=F6
|
||||
switch_vte=F4
|
||||
switch_sidebar=<Shift>F2
|
||||
switch_sidebar_symbol_list=
|
||||
switch_sidebar_doc_list=
|
||||
switch_tableft=<Primary>Page_Up
|
||||
switch_tabright=<Primary>Page_Down
|
||||
switch_tablastused=<Primary>Tab
|
||||
move_tableft=<Primary><Shift>Page_Up
|
||||
move_tabright=<Primary><Shift>Page_Down
|
||||
move_tabfirst=
|
||||
move_tablast=
|
||||
|
||||
[addons]
|
||||
focus_bookmark_list=
|
||||
focus_tasks=
|
||||
update_tasks=
|
||||
xml_tagging=
|
||||
copy_file_path=
|
||||
Enclose_1=
|
||||
Enclose_2=
|
||||
Enclose_3=
|
||||
Enclose_4=
|
||||
Enclose_5=
|
||||
Enclose_6=
|
||||
Enclose_7=
|
||||
Enclose_8=
|
||||
|
||||
[code_navigation]
|
||||
switch_head_impl=<Shift><Alt>s
|
||||
goto_file=<Shift><Alt>g
|
||||
|
||||
[commander]
|
||||
show_panel=
|
||||
show_panel_commands=<Primary>semicolon
|
||||
show_panel_files=
|
||||
|
||||
[file_browser]
|
||||
focus_file_list=
|
||||
focus_path_entry=
|
||||
rename_object=
|
||||
create_file=
|
||||
create_dir=
|
||||
rename_refresh=
|
||||
track_current=
|
||||
|
||||
[vimode]
|
||||
enable_vim=
|
||||
insert_for_dummies=
|
||||
|
||||
[ProjectOrganizer]
|
||||
find_in_project=
|
||||
find_file=<Primary>p
|
||||
find_tag=
|
||||
swap_header_source=
|
||||
focus_project_sidebar=
|
||||
open_file_manager=
|
||||
open_terminal=
|
||||
|
||||
[doc_chars]
|
||||
Document current word=
|
||||
Document interactive=
|
||||
|
||||
[GeanyCtags]
|
||||
generate_tags=
|
||||
find_tag=
|
||||
|
||||
[keyrecord]
|
||||
record=
|
||||
play=
|
||||
|
||||
[geanyprj]
|
||||
find_in_project=
|
||||
|
||||
[html_chars]
|
||||
insert_html_chars=
|
||||
replace_special_characters=
|
||||
htmltoogle_toggle_plugin_status=
|
||||
|
||||
[extra_select]
|
||||
column_mode=<Primary><Shift>v
|
||||
goto_line_extend=<Primary><Shift>g
|
||||
brace_match_extend=<Primary><Shift>percent
|
||||
convert_selection=
|
||||
set_anchor=
|
||||
select_to_anchor=
|
||||
rect_select_to_anchor=
|
17
.config/geany/plugins/addons/addons.conf
Normal file
17
.config/geany/plugins/addons/addons.conf
Normal file
@ -0,0 +1,17 @@
|
||||
[addons]
|
||||
show_toolbar_doclist_item=true
|
||||
doclist_sort_mode=2
|
||||
enable_openuri=false
|
||||
enable_tasks=true
|
||||
tasks_token_list=TODO;FIXME
|
||||
tasks_scan_all_documents=false
|
||||
enable_systray=false
|
||||
enable_bookmarklist=true
|
||||
enable_markword=false
|
||||
enable_markword_single_click_deselect=false
|
||||
strip_trailing_blank_lines=false
|
||||
enable_xmltagging=false
|
||||
enable_enclose_words=false
|
||||
enable_enclose_words_auto=false
|
||||
enable_colortip=true
|
||||
enable_double_click_color_chooser=true
|
23
.config/geany/plugins/autoclose/autoclose.conf
Normal file
23
.config/geany/plugins/autoclose/autoclose.conf
Normal file
@ -0,0 +1,23 @@
|
||||
[autoclose]
|
||||
parenthesis=true
|
||||
abracket=true
|
||||
abracket_htmlonly=true
|
||||
cbracket=true
|
||||
sbracket=true
|
||||
dquote=true
|
||||
squote=true
|
||||
backquote=true
|
||||
backquote_bashonly=false
|
||||
comments_ac_enable=true
|
||||
delete_pairing_brace=true
|
||||
suppress_doubling=true
|
||||
enclose_selections=true
|
||||
comments_enclose=false
|
||||
keep_selection=true
|
||||
make_indent_for_cbracket=true
|
||||
move_cursor_to_beginning=true
|
||||
improved_cbracket_indent=true
|
||||
whitesmiths_style=false
|
||||
close_functions=true
|
||||
bcksp_remove_pair=false
|
||||
jump_on_tab=true
|
7
.config/geany/plugins/filebrowser/filebrowser.conf
Normal file
7
.config/geany/plugins/filebrowser/filebrowser.conf
Normal file
@ -0,0 +1,7 @@
|
||||
[filebrowser]
|
||||
open_command=dolphin "%d"
|
||||
show_hidden_files=true
|
||||
hide_object_files=true
|
||||
hidden_file_extensions=.o .obj .so .dll .a .lib .pyc
|
||||
fb_follow_path=false
|
||||
fb_set_project_base_path=false
|
26
.config/geany/plugins/geanydoc/geanydoc.conf
Normal file
26
.config/geany/plugins/geanydoc/geanydoc.conf
Normal file
@ -0,0 +1,26 @@
|
||||
[C]
|
||||
internal=false
|
||||
command0=man -P "col -b" -S 2:3:5 '%w'
|
||||
command1=devhelp -s '%w'
|
||||
|
||||
[C++]
|
||||
internal=false
|
||||
command0=man -P "col -b" -S 2:3:5 '%w'
|
||||
command1=devhelp -s '%w'
|
||||
|
||||
[PHP]
|
||||
internal=false
|
||||
command0=firefox "http://www.php.net/%w"
|
||||
|
||||
[Sh]
|
||||
internal=true
|
||||
command0=man -P "col -b" -S 1:4:5:6:7:8:9 '%w'
|
||||
|
||||
[Python]
|
||||
internal=true
|
||||
command0=pydoc '%w'
|
||||
|
||||
[None]
|
||||
internal=false
|
||||
command0=safari "https://searxng.jaandrle.cz/search?q=%w&language=all&time_range=&safesearch=0&categories=general"
|
||||
|
17
.config/geany/plugins/saveactions/saveactions.conf
Normal file
17
.config/geany/plugins/saveactions/saveactions.conf
Normal file
@ -0,0 +1,17 @@
|
||||
[saveactions]
|
||||
enable_autosave=false
|
||||
enable_autosave_losing_focus=false
|
||||
enable_instantsave=false
|
||||
enable_backupcopy=false
|
||||
|
||||
[autosave]
|
||||
print_messages=false
|
||||
save_all=false
|
||||
interval=300
|
||||
|
||||
[instantsave]
|
||||
default_ft=None
|
||||
|
||||
[backupcopy]
|
||||
dir_levels=0
|
||||
time_fmt=%Y-%m-%d-%H-%M-%S
|
16
.config/geany/plugins/treebrowser/treebrowser.conf
Normal file
16
.config/geany/plugins/treebrowser/treebrowser.conf
Normal file
@ -0,0 +1,16 @@
|
||||
[treebrowser]
|
||||
open_external_cmd=xdg-open '%d'
|
||||
open_terminal=xterm
|
||||
reverse_filter=false
|
||||
one_click_chdoc=false
|
||||
show_hidden_files=false
|
||||
hide_object_files=false
|
||||
show_bars=1
|
||||
chroot_on_dclick=false
|
||||
follow_current_doc=true
|
||||
on_delete_close_file=true
|
||||
on_open_focus_editor=false
|
||||
show_tree_lines=true
|
||||
show_bookmarks=false
|
||||
show_icons=2
|
||||
open_new_files=true
|
4
.config/geany/plugins/vimode/vimode.conf
Normal file
4
.config/geany/plugins/vimode/vimode.conf
Normal file
@ -0,0 +1,4 @@
|
||||
[Settings]
|
||||
enable_vim=false
|
||||
insert_for_dummies=false
|
||||
start_in_insert=true
|
1486
.config/geany/tags/browser.js.tags
Normal file
1486
.config/geany/tags/browser.js.tags
Normal file
File diff suppressed because it is too large
Load Diff
424
.config/geany/tags/em.js.tags
Normal file
424
.config/geany/tags/em.js.tags
Normal file
@ -0,0 +1,424 @@
|
||||
# format=pipe
|
||||
E|||
|
||||
Form|||
|
||||
Infinity|||
|
||||
LN10|||
|
||||
LN2|||
|
||||
LOG10E|||
|
||||
LOG2E|||
|
||||
NaN|||
|
||||
Number|number|(object o)|
|
||||
PI|||
|
||||
Positioning|||
|
||||
Property|||
|
||||
SQRT2|||
|
||||
String|string|(object o)|
|
||||
URL|||
|
||||
UTC|int|(int year, int month, int day, int hours, int minutes, int seconds, int ms)|
|
||||
aLink|||
|
||||
abbr|||
|
||||
abs|float|(float x)|
|
||||
accept|||
|
||||
acceptCharset|||
|
||||
accessKey|||
|
||||
acos|float|(float x)|
|
||||
action|||
|
||||
add||(option o[, int before])|
|
||||
alert||(mixed value)|
|
||||
align|||
|
||||
alt|||
|
||||
altKey|||
|
||||
appCodeName|||
|
||||
appName|||
|
||||
appVersion|||
|
||||
appendChild|node|(node n)|
|
||||
archive|||
|
||||
asin|float|(float x)|
|
||||
assign||(string url)|
|
||||
atan|float|(float x)|
|
||||
atan2|float|(float y, float x)|
|
||||
attributes|||
|
||||
availHeight|||
|
||||
availWidth|||
|
||||
axis|||
|
||||
background|||
|
||||
backgroundAttachment|||
|
||||
backgroundColor|||
|
||||
backgroundImage|||
|
||||
backgroundPosition|||
|
||||
backgroundPositionX|||
|
||||
backgroundPositionY|||
|
||||
backgroundRepeat|||
|
||||
bgColor|||
|
||||
border|||
|
||||
borderBottom|||
|
||||
borderBottomColor|||
|
||||
borderBottomStyle|||
|
||||
borderBottomWidth|||
|
||||
borderCollapse|||
|
||||
borderColor|||
|
||||
borderLeft|||
|
||||
borderLeftColor|||
|
||||
borderLeftStyle|||
|
||||
borderLeftWidth|||
|
||||
borderRight|||
|
||||
borderRightColor|||
|
||||
borderRightStyle|||
|
||||
borderRightWidth|||
|
||||
borderSpacing|||
|
||||
borderStyle|||
|
||||
borderTop|||
|
||||
borderTopColor|||
|
||||
borderTopStyle|||
|
||||
borderTopWidth|||
|
||||
borderWidth|||
|
||||
bottom|||
|
||||
bubbles|||
|
||||
button|||
|
||||
cancelable|||
|
||||
caption|||
|
||||
captionSide|||
|
||||
ceil|int|(float x)|
|
||||
cellIndex|||
|
||||
cellPadding|||
|
||||
cellSpacing|||
|
||||
cells|||
|
||||
ch|||
|
||||
chOff|||
|
||||
charAt|string|(int index)|
|
||||
charCodeAt|int|(int index)|
|
||||
charset|||
|
||||
checked|||
|
||||
childNodes|||
|
||||
className|||
|
||||
clear|||
|
||||
clearInterval||(int id)|
|
||||
clearTimeout||(int id)|
|
||||
clientHeight|||
|
||||
clientWidth|||
|
||||
clientX|||
|
||||
clientY|||
|
||||
clip|||
|
||||
cloneNode|node|(bool deep)|
|
||||
closed|||
|
||||
code|||
|
||||
codeBase|||
|
||||
codeType|||
|
||||
colSpan|||
|
||||
color|||
|
||||
colorDepth|||
|
||||
cols|||
|
||||
compile|regexp|(regexp r,[ string modifier])|
|
||||
complete|||
|
||||
concat|string|(string s1, string s2[, ...])|
|
||||
confirm|bool|(string message)|
|
||||
constructor|||
|
||||
content|||
|
||||
contentDocument|||
|
||||
contentWindow|||
|
||||
cookie|||
|
||||
cookieEnabled|||
|
||||
coords|||
|
||||
cos|float|(float x)|
|
||||
counterIncrement|||
|
||||
counterReset|||
|
||||
cssFloat|||
|
||||
cssText|||
|
||||
ctrlKey|||
|
||||
currentTarget|||
|
||||
cursor|||
|
||||
data|||
|
||||
declare|||
|
||||
defaultChecked|||
|
||||
defaultSelected|||
|
||||
defaultStatus|||
|
||||
defaultValue|||
|
||||
deleteCell||(int index)|
|
||||
deleteRow||(int index)|
|
||||
dir|||
|
||||
direction|||
|
||||
disabled|||
|
||||
display|||
|
||||
document|||
|
||||
documentMode|||
|
||||
domain|||
|
||||
elements|||
|
||||
emptyCells|||
|
||||
enctype|||
|
||||
escape|string|(string str)|
|
||||
eval|mixed|(string code)|
|
||||
eventPhase|||
|
||||
exec|mixed|(string str)|
|
||||
exp|float|(float x)|
|
||||
firstChild|||
|
||||
floor|int|(float x)|
|
||||
font|||
|
||||
fontFamily|||
|
||||
fontSize|||
|
||||
fontSizeAdjust|||
|
||||
fontStretch|||
|
||||
fontStyle|||
|
||||
fontVariant|||
|
||||
fontWeight|||
|
||||
form|||
|
||||
frame|||
|
||||
frameBorder|||
|
||||
frames|||
|
||||
fromCharCode|string|(int c1[, int c2[, ...]])|
|
||||
getAttribute|mixed|(string name)|
|
||||
getElementById|mixed|(string id)|
|
||||
getElementsByName|array|(string name)|
|
||||
getElementsByTagName|array|(string tagname)|
|
||||
global|||
|
||||
go||(mixed value)|
|
||||
hash|||
|
||||
headers|||
|
||||
height|||
|
||||
history|||
|
||||
host|||
|
||||
hostname|||
|
||||
href|||
|
||||
hreflang|||
|
||||
hspace|||
|
||||
httpEquiv|||
|
||||
id|||
|
||||
ignoreCase|||
|
||||
index|||
|
||||
indexOf|int|(string search[, int start])|
|
||||
innerHTML|||
|
||||
innerHeight|||
|
||||
innerWidth|||
|
||||
insertBefore|node|(node newnode[, node refnode])|
|
||||
insertCell||(int index)|
|
||||
insertRow||(int index)|
|
||||
isFinite|bool|(mixed var)|
|
||||
isNaN|bool|(mixed var)|
|
||||
item|node|(int index)|
|
||||
join|string|(string separator)|
|
||||
label|||
|
||||
lang|||
|
||||
lastChild|||
|
||||
lastIndex|||
|
||||
lastIndexOf|int|(string search[, int start])|
|
||||
lastModified|||
|
||||
left|||
|
||||
length|||
|
||||
letterSpacing|||
|
||||
lineHeight|||
|
||||
link|||
|
||||
listStyle|||
|
||||
listStyleImage|||
|
||||
listStylePosition|||
|
||||
listStyleType|||
|
||||
location|||
|
||||
log|float|(float x)|
|
||||
longDesc|||
|
||||
lowsrc|||
|
||||
margin|||
|
||||
marginBottom|||
|
||||
marginHeight|||
|
||||
marginLeft|||
|
||||
marginRight|||
|
||||
marginTop|||
|
||||
marginWidth|||
|
||||
markerOffset|||
|
||||
marks|||
|
||||
match|bool|(regexp r)|
|
||||
max|float|(float f1[, float f2[, ...]])|
|
||||
maxHeight|||
|
||||
maxLength|||
|
||||
maxWidth|||
|
||||
media|||
|
||||
metaKey|||
|
||||
method|||
|
||||
min|float|(float f1[, float f2[, ...]])|
|
||||
minHeight|||
|
||||
minWidth|||
|
||||
moveBy||(int x, int y)|
|
||||
moveTo||(int x, int y)|
|
||||
multiline|||
|
||||
multiple|||
|
||||
name|||
|
||||
navigator|||
|
||||
nextSibling|||
|
||||
noHref|||
|
||||
noResize|||
|
||||
nodeName|||
|
||||
nodeType|||
|
||||
nodeValue|||
|
||||
offsetHeight|||
|
||||
offsetLeft|||
|
||||
offsetParent|||
|
||||
offsetTop|||
|
||||
offsetWidth|||
|
||||
onabort|||
|
||||
onblur|||
|
||||
onchange|||
|
||||
onclick|||
|
||||
ondblclick|||
|
||||
onerror|||
|
||||
onfocus|||
|
||||
onkeydown|||
|
||||
onkeypress|||
|
||||
onkeyup|||
|
||||
onload|||
|
||||
onmousedown|||
|
||||
onmousemove|||
|
||||
onmouseout|||
|
||||
onmouseover|||
|
||||
onmouseup|||
|
||||
onresize|||
|
||||
onselect|||
|
||||
onunload|||
|
||||
open||([string url[, string name[, string specs[, bool replace]]]])|
|
||||
opener|||
|
||||
options|||
|
||||
orphans|||
|
||||
outerHeight|||
|
||||
outerWidth|||
|
||||
outline|||
|
||||
outlineColor|||
|
||||
outlineStyle|||
|
||||
outlineWidth|||
|
||||
overflow|||
|
||||
ownerDocument|||
|
||||
padding|||
|
||||
paddingBottom|||
|
||||
paddingLeft|||
|
||||
paddingRight|||
|
||||
paddingTop|||
|
||||
page|||
|
||||
pageBreakAfter|||
|
||||
pageBreakBefore|||
|
||||
pageBreakInside|||
|
||||
pageXOffset|||
|
||||
pageYOffset|||
|
||||
parent|||
|
||||
parentNode|||
|
||||
parse|int|(string date)|
|
||||
parseFloat|float|(string str)|
|
||||
parseInt|int|(string str)|
|
||||
pathname|||
|
||||
pixelDepth|||
|
||||
platform|||
|
||||
port|||
|
||||
position|||
|
||||
pow|float|(float x, float y)|
|
||||
previousSibling|||
|
||||
prompt|string|(string message, string default)|
|
||||
protocol|||
|
||||
prototype|||
|
||||
push||(mixed value)|
|
||||
quotes|||
|
||||
readOnly|||
|
||||
readyState|||
|
||||
referrer|||
|
||||
rel|||
|
||||
relatedTarget|||
|
||||
remove||(int index)|
|
||||
removeAttribute||(string name)|
|
||||
removeChild||(node child)|
|
||||
replace|string|(regexp r, string newstring)|
|
||||
replaceChild|node|(node oldnode, node newnode)|
|
||||
resizeBy||(int width, int height)|
|
||||
resizeTo||(int width, int height)|
|
||||
rev|||
|
||||
right|||
|
||||
round|int|(float x)|
|
||||
rowIndex|||
|
||||
rowSpan|||
|
||||
rows|||
|
||||
rules|||
|
||||
scope|||
|
||||
screen|||
|
||||
screenLeft|||
|
||||
screenTop|||
|
||||
screenX|||
|
||||
screenY|||
|
||||
scrollBy||(int x, int y)|
|
||||
scrollHeight|||
|
||||
scrollLeft|||
|
||||
scrollTo||(int x, int y)|
|
||||
scrollTop|||
|
||||
scrollWidth|||
|
||||
scrolling|||
|
||||
search|int|(regexp r)|
|
||||
sectionRowIndex|||
|
||||
selected|||
|
||||
selectedIndex|||
|
||||
self|||
|
||||
setAttribute||(string name, mixed value)|
|
||||
setDate||(int day)|
|
||||
setFullYear||(int year)|
|
||||
setHours||(int hours)|
|
||||
setInterval|int|(mixed code, int millisec[, string language])|
|
||||
setMilliseconds||(int milliseconds)|
|
||||
setMinutes||(int minutes)|
|
||||
setMonth||(int month)|
|
||||
setSeconds||(int seconds)|
|
||||
setTime||(int timestamp)|
|
||||
setTimeout|int|(mixed code, int millisec[, string language])|
|
||||
setUTCDate||(int day)|
|
||||
setUTCFullYear||(int year)|
|
||||
setUTCHours||(int hour)|
|
||||
setUTCMilliseconds||(int milliseconds)|
|
||||
setUTCMinutes||(int minutes)|
|
||||
setUTCMonth||(int month)|
|
||||
setUTCSeconds||(int seconds)|
|
||||
setYear||(int year)|
|
||||
shape|||
|
||||
shiftKey|||
|
||||
sin|float|(float x)|
|
||||
size|||
|
||||
slice|string|(int begin[, int end])|
|
||||
sort|array|([function sortfunc])|
|
||||
source|||
|
||||
splice|array|(int index, int count[, mixed el1[, mixed el2[, ...]]])|
|
||||
split|array|([string separator[, int limit]])|
|
||||
sqrt|float|(float x)|
|
||||
src|||
|
||||
standby|||
|
||||
status|||
|
||||
style|||
|
||||
substr|string|(int start[, int length])|
|
||||
substring|string|(int from[, int to])|
|
||||
summary|||
|
||||
tBodies|||
|
||||
tFoot|||
|
||||
tHead|||
|
||||
tabIndex|||
|
||||
tableLayout|||
|
||||
tagName|||
|
||||
tan|float|(float x)|
|
||||
target|||
|
||||
test|bool|(string str)|
|
||||
text|||
|
||||
textAlign|||
|
||||
textDecoration|||
|
||||
textIndent|||
|
||||
textShadow|||
|
||||
textTransform|||
|
||||
timeStamp|||
|
||||
title|||
|
||||
toExponential|string|(int digits)|
|
||||
toFixed|string|(int digits)|
|
||||
toPrecision|string|(int digits)|
|
||||
top|||
|
||||
type|||
|
||||
undefined|||
|
||||
unescape|string|(string str)|
|
||||
unicodeBidi|||
|
||||
unshift|int|(mixed el1[, mixed el2[, ...]])|
|
||||
useMap|||
|
||||
userAgent|||
|
||||
vAlign|||
|
||||
value|||
|
||||
verticalAlign|||
|
||||
visibility|||
|
||||
vspace|||
|
||||
whiteSpace|||
|
||||
widows|||
|
||||
width|||
|
||||
write||(mixed e1[, mixed e2[, ...]])|
|
||||
writeln||(mixed e1[, mixed e2[, ...]])|
|
||||
zIndex|||
|
415
.config/geany/tags/node-v0.8.16.js.tags
Normal file
415
.config/geany/tags/node-v0.8.16.js.tags
Normal file
@ -0,0 +1,415 @@
|
||||
# format=pipe
|
||||
log|console.|([data], [...])|
|
||||
info|console.|([data], [...])|
|
||||
error|console.|([data], [...])|
|
||||
warn|console.|([data], [...])|
|
||||
dir|console.|(obj)|
|
||||
time|console.|(label)|
|
||||
timeEnd|console.|(label)|
|
||||
trace|console.|(label)|
|
||||
assert|console.|(expression, [message])|
|
||||
abort|process.|()|
|
||||
chdir|process.|(directory)|
|
||||
cwd|process.|()|
|
||||
exit|process.|([code])|
|
||||
getgid|process.|()|
|
||||
setgid|process.|(id)|
|
||||
getuid|process.|()|
|
||||
setuid|process.|(id)|
|
||||
kill|process.|(pid, [signal])|
|
||||
memoryUsage|process.|()|
|
||||
nextTick|process.|(callback)|
|
||||
umask|process.|([mask])|
|
||||
uptime|process.|()|
|
||||
hrtime|process.|()|
|
||||
resolve|require.|()|
|
||||
setTimeout||(cb, ms)|
|
||||
clearTimeout||(t)|
|
||||
setInterval||(cb, ms)|
|
||||
log|console.|([data], [...])|
|
||||
info|console.|([data], [...])|
|
||||
error|console.|([data], [...])|
|
||||
warn|console.|([data], [...])|
|
||||
dir|console.|(obj)|
|
||||
time|console.|(label)|
|
||||
timeEnd|console.|(label)|
|
||||
trace|console.|(label)|
|
||||
assert|console.|(expression, [message])|
|
||||
abort|process.|()|
|
||||
chdir|process.|(directory)|
|
||||
cwd|process.|()|
|
||||
exit|process.|([code])|
|
||||
getgid|process.|()|
|
||||
setgid|process.|(id)|
|
||||
getuid|process.|()|
|
||||
setuid|process.|(id)|
|
||||
kill|process.|(pid, [signal])|
|
||||
memoryUsage|process.|()|
|
||||
nextTick|process.|(callback)|
|
||||
umask|process.|([mask])|
|
||||
uptime|process.|()|
|
||||
hrtime|process.|()|
|
||||
resolve|require.|()|
|
||||
setTimeout||(cb, ms)|
|
||||
clearTimeout||(t)|
|
||||
setInterval||(cb, ms)|
|
||||
require|module.|(id): Object|
|
||||
format|util.|(format, [...])|
|
||||
debug|util.|(string)|
|
||||
error|util.|([...])|
|
||||
puts|util.|([...])|
|
||||
print|util.|([...])|
|
||||
log|util.|(string)|
|
||||
inspect|util.|(object, [showHidden], [depth], [colors])|
|
||||
isArray|util.|(object)|
|
||||
isRegExp|util.|(object)|
|
||||
isDate|util.|(object)|
|
||||
isError|util.|(object)|
|
||||
pump|util.|(readableStream, writableStream, [callback])|
|
||||
inherits|util.|(constructor, superConstructor)|
|
||||
addListener|events.EventEmitter#|(event, listener)|
|
||||
on|events.EventEmitter#|(event, listener)|
|
||||
once|events.EventEmitter#|(event, listener)|
|
||||
removeListener|events.EventEmitter#|(event, listener)|
|
||||
removeAllListeners|events.EventEmitter#|([event])|
|
||||
setMaxListeners|events.EventEmitter#|(n)|
|
||||
listeners|events.EventEmitter#|(event)|
|
||||
emit|events.EventEmitter#|(event, [arg1], [arg2], [...])|
|
||||
create|domain.|(): Domain|
|
||||
run|Domain#|(fn)|
|
||||
add|Domain#|(emitter)|
|
||||
remove|Domain#|(emitter)|
|
||||
bind|Domain#|(callback): Function|
|
||||
intercept|Domain#|(callback): Function|
|
||||
dispose|Domain#|()|
|
||||
write|Buffer#|(string, [offset], [length], [encoding])|
|
||||
toString|Buffer#|([encoding], [start], [end])|
|
||||
copy|Buffer#|(targetBuffer, [targetStart], [sourceStart], [sourceEnd])|
|
||||
slice|Buffer#|([start], [end])|
|
||||
readUInt8|Buffer#|(offset, [noAssert])|
|
||||
readUInt16LE|Buffer#|(offset, [noAssert])|
|
||||
readUInt16BE|Buffer#|(offset, [noAssert])|
|
||||
readUInt32LE|Buffer#|(offset, [noAssert])|
|
||||
readUInt32BE|Buffer#|(offset, [noAssert])|
|
||||
readInt8|Buffer#|(offset, [noAssert])|
|
||||
readInt16LE|Buffer#|(offset, [noAssert])|
|
||||
readInt16BE|Buffer#|(offset, [noAssert])|
|
||||
readInt32LE|Buffer#|(offset, [noAssert])|
|
||||
readInt32BE|Buffer#|(offset, [noAssert])|
|
||||
readFloatLE|Buffer#|(offset, [noAssert])|
|
||||
readFloatBE|Buffer#|(offset, [noAssert])|
|
||||
readDoubleLE|Buffer#|(offset, [noAssert])|
|
||||
readDoubleBE|Buffer#|(offset, [noAssert])|
|
||||
writeUInt8|Buffer#|(value, offset, [noAssert])|
|
||||
writeUInt16LE|Buffer#|(value, offset, [noAssert])|
|
||||
writeUInt16BE|Buffer#|(value, offset, [noAssert])|
|
||||
writeUInt32LE|Buffer#|(value, offset, [noAssert])|
|
||||
writeUInt32BE|Buffer#|(value, offset, [noAssert])|
|
||||
writeInt8|Buffer#|(value, offset, [noAssert])|
|
||||
writeInt16LE|Buffer#|(value, offset, [noAssert])|
|
||||
writeInt16BE|Buffer#|(value, offset, [noAssert])|
|
||||
writeInt32LE|Buffer#|(value, offset, [noAssert])|
|
||||
writeInt32BE|Buffer#|(value, offset, [noAssert])|
|
||||
writeFloatLE|Buffer#|(value, offset, [noAssert])|
|
||||
writeFloatBE|Buffer#|(value, offset, [noAssert])|
|
||||
writeDoubleLE|Buffer#|(value, offset, [noAssert])|
|
||||
writeDoubleBE|Buffer#|(value, offset, [noAssert])|
|
||||
fill|Buffer#|(value, [offset], [end])|
|
||||
isBuffer|Buffer#|(obj)|
|
||||
byteLength|Buffer#|(string, [encoding])|
|
||||
concat|Buffer#|(list, [totalLength])|
|
||||
Buffer|buffer.||
|
||||
setEncoding|Readable Stream#|([encoding])|
|
||||
pause|Readable Stream#|()|
|
||||
resume|Readable Stream#|()|
|
||||
destroy|Readable Stream#|()|
|
||||
pipe|Readable Stream#|(destination, [options])|
|
||||
write|Writable Stream#|(string, [encoding])|
|
||||
write|Writable Stream#|(buffer)|
|
||||
end|Writable Stream#|()|
|
||||
end|Writable Stream#|(string, encoding)|
|
||||
end|Writable Stream#|(buffer)|
|
||||
destroy|Writable Stream#|()|
|
||||
destroySoon|Writable Stream#|()|
|
||||
createCredentials|crypto.|(details)|
|
||||
createHash|crypto.|(algorithm)|
|
||||
createHmac|crypto.|(algorithm, key)|
|
||||
createCipher|crypto.|(algorithm, password)|
|
||||
createCipheriv|crypto.|(algorithm, key, iv)|
|
||||
createDecipher|crypto.|(algorithm, password)|
|
||||
createDecipheriv|crypto.|(algorithm, key, iv)|
|
||||
createSign|crypto.|(algorithm)|
|
||||
createVerify|crypto.|(algorithm)|
|
||||
createDiffieHellman|crypto.|(prime_length)|
|
||||
createDiffieHellman|crypto.|(prime, [encoding])|
|
||||
getDiffieHellman|crypto.|(group_name)|
|
||||
pbkdf2|crypto.|(password, salt, iterations, keylen, callback)|
|
||||
randomBytes|crypto.|(size, [callback])|
|
||||
update|Hash#|(data, [input_encoding])|
|
||||
digest|Hash#|([encoding])|
|
||||
update|Hmac#|(data)|
|
||||
digest|Hmac#|([encoding])|
|
||||
update|Cipher#|(data, [input_encoding], [output_encoding])|
|
||||
final|Cipher#|([output_encoding])|
|
||||
setAutoPadding|Cipher#|(auto_padding=true)|
|
||||
update|Decipher#|(data, [input_encoding], [output_encoding])|
|
||||
final|Decipher#|([output_encoding])|
|
||||
setAutoPadding|Decipher#|(auto_padding=true)|
|
||||
update|Signer#|(data)|
|
||||
sign|Signer#|(private_key, [output_format])|
|
||||
update|Verify#|(data)|
|
||||
verify|Verify#|(object, signature, [signature_format])|
|
||||
generateKeys|DiffieHellman#|([encoding])|
|
||||
computeSecret|DiffieHellman#|(other_public_key, [input_encoding], [output_encoding])|
|
||||
getPrime|DiffieHellman#|([encoding])|
|
||||
getGenerator|DiffieHellman#|([encoding])|
|
||||
getPublicKey|DiffieHellman#|([encoding])|
|
||||
getPrivateKey|DiffieHellman#|([encoding])|
|
||||
setPublicKey|DiffieHellman#|(public_key, [encoding])|
|
||||
setPrivateKey|DiffieHellman#|(public_key, [encoding])|
|
||||
createServer|tls_(ssl).|(options, [secureConnectionListener])|
|
||||
connect|tls_(ssl).|(options, [callback])|
|
||||
connect|tls_(ssl).|(port, [host], [options], [callback])|
|
||||
createSecurePair|tls_(ssl).|([credentials], [isServer], [requestCert], [rejectUnauthorized])|
|
||||
listen|tls.Server#|(port, [host], [callback])|
|
||||
close|tls.Server#|()|
|
||||
address|tls.Server#|()|
|
||||
addContext|tls.Server#|(hostname, credentials)|
|
||||
getPeerCertificate|tls.CleartextStream#|()|
|
||||
getCipher|tls.CleartextStream#|()|
|
||||
address|tls.CleartextStream#|()|
|
||||
write|StringDecoder#|(buffer)|
|
||||
rename|fs.|(oldPath, newPath, [callback])|
|
||||
renameSync|fs.|(oldPath, newPath)|
|
||||
truncate|fs.|(fd, len, [callback])|
|
||||
truncateSync|fs.|(fd, len)|
|
||||
chown|fs.|(path, uid, gid, [callback])|
|
||||
chownSync|fs.|(path, uid, gid)|
|
||||
fchown|fs.|(fd, uid, gid, [callback])|
|
||||
fchownSync|fs.|(fd, uid, gid)|
|
||||
lchown|fs.|(path, uid, gid, [callback])|
|
||||
lchownSync|fs.|(path, uid, gid)|
|
||||
chmod|fs.|(path, mode, [callback])|
|
||||
chmodSync|fs.|(path, mode)|
|
||||
fchmod|fs.|(fd, mode, [callback])|
|
||||
fchmodSync|fs.|(fd, mode)|
|
||||
lchmod|fs.|(path, mode, [callback])|
|
||||
lchmodSync|fs.|(path, mode)|
|
||||
stat|fs.|(path, [callback])|
|
||||
lstat|fs.|(path, [callback])|
|
||||
fstat|fs.|(fd, [callback])|
|
||||
statSync|fs.|(path)|
|
||||
lstatSync|fs.|(path)|
|
||||
fstatSync|fs.|(fd)|
|
||||
link|fs.|(srcpath, dstpath, [callback])|
|
||||
linkSync|fs.|(srcpath, dstpath)|
|
||||
symlink|fs.|(srcpath, dstpath, [type], [callback])|
|
||||
symlinkSync|fs.|(srcpath, dstpath, [type])|
|
||||
readlink|fs.|(path, [callback])|
|
||||
readlinkSync|fs.|(path)|
|
||||
realpath|fs.|(path, [cache], callback)|
|
||||
realpathSync|fs.|(path, [cache])|
|
||||
unlink|fs.|(path, [callback])|
|
||||
unlinkSync|fs.|(path)|
|
||||
rmdir|fs.|(path, [callback])|
|
||||
rmdirSync|fs.|(path)|
|
||||
mkdir|fs.|(path, [mode], [callback])|
|
||||
mkdirSync|fs.|(path, [mode])|
|
||||
readdir|fs.|(path, [callback])|
|
||||
readdirSync|fs.|(path)|
|
||||
close|fs.|(fd, [callback])|
|
||||
closeSync|fs.|(fd)|
|
||||
open|fs.|(path, flags, [mode], [callback])|
|
||||
openSync|fs.|(path, flags, [mode])|
|
||||
utimes|fs.|(path, atime, mtime, [callback])|
|
||||
utimesSync|fs.|(path, atime, mtime)|
|
||||
futimes|fs.|(fd, atime, mtime, [callback])|
|
||||
futimesSync|fs.|(fd, atime, mtime)|
|
||||
fsync|fs.|(fd, [callback])|
|
||||
fsyncSync|fs.|(fd)|
|
||||
write|fs.|(fd, buffer, offset, length, position, [callback])|
|
||||
writeSync|fs.|(fd, buffer, offset, length, position)|
|
||||
read|fs.|(fd, buffer, offset, length, position, [callback])|
|
||||
readSync|fs.|(fd, buffer, offset, length, position)|
|
||||
readFile|fs.|(filename, [encoding], [callback])|
|
||||
readFileSync|fs.|(filename, [encoding])|
|
||||
writeFile|fs.|(filename, data, [encoding], [callback])|
|
||||
writeFileSync|fs.|(filename, data, [encoding])|
|
||||
appendFile|fs.|(filename, data, encoding='utf8', [callback])|
|
||||
appendFileSync|fs.|(filename, data, encoding='utf8')|
|
||||
watchFile|fs.|(filename, [options], listener)|
|
||||
unwatchFile|fs.|(filename, [listener])|
|
||||
watch|fs.|(filename, [options], [listener])|
|
||||
exists|fs.|(path, [callback])|
|
||||
existsSync|fs.|(path)|
|
||||
createReadStream|fs.|(path, [options])|
|
||||
createWriteStream|fs.|(path, [options])|
|
||||
close|fs.FSWatcher#|()|
|
||||
normalize|path.|(p)|
|
||||
join|path.|([path1], [path2], [...])|
|
||||
resolve|path.|([from ...], to)|
|
||||
relative|path.|(from, to)|
|
||||
dirname|path.|(p)|
|
||||
basename|path.|(p, [ext])|
|
||||
extname|path.|(p)|
|
||||
createServer|net.|([options], [connectionListener])|
|
||||
connect|net.|(options, [connectionListener])|
|
||||
createConnection|net.|(options, [connectionListener])|
|
||||
connect|net.|(port, [host], [connectListener])|
|
||||
createConnection|net.|(port, [host], [connectListener])|
|
||||
connect|net.|(path, [connectListener])|
|
||||
createConnection|net.|(path, [connectListener])|
|
||||
isIP|net.|(input)|
|
||||
isIPv4|net.|(input)|
|
||||
isIPv6|net.|(input)|
|
||||
listen|net.Server#|(port, [host], [backlog], [callback])|
|
||||
listen|net.Server#|(path, [callback])|
|
||||
listen|net.Server#|(handle, [callback])|
|
||||
close|net.Server#|([callback])|
|
||||
address|net.Server#|()|
|
||||
Socket|net.Socket#|([options])|
|
||||
connect|net.Socket#|(port, [host], [connectListener])|
|
||||
connect|net.Socket#|(path, [connectListener])|
|
||||
setEncoding|net.Socket#|([encoding])|
|
||||
write|net.Socket#|(data, [encoding], [callback])|
|
||||
end|net.Socket#|([data], [encoding])|
|
||||
destroy|net.Socket#|()|
|
||||
pause|net.Socket#|()|
|
||||
resume|net.Socket#|()|
|
||||
setTimeout|net.Socket#|(timeout, [callback])|
|
||||
setNoDelay|net.Socket#|([noDelay])|
|
||||
setKeepAlive|net.Socket#|([enable], [initialDelay])|
|
||||
address|net.Socket#|()|
|
||||
createSocket|dgram.|(type, [callback])|
|
||||
send|Socket#|(buf, offset, length, port, address, [callback])|
|
||||
bind|Socket#|(port, [address])|
|
||||
close|Socket#|()|
|
||||
address|Socket#|()|
|
||||
setBroadcast|Socket#|(flag)|
|
||||
setTTL|Socket#|(ttl)|
|
||||
setMulticastTTL|Socket#|(ttl)|
|
||||
setMulticastLoopback|Socket#|(flag)|
|
||||
addMembership|Socket#|(multicastAddress, [multicastInterface])|
|
||||
dropMembership|Socket#|(multicastAddress, [multicastInterface])|
|
||||
lookup|dns.|(domain, [family], callback)|
|
||||
resolve|dns.|(domain, [rrtype], callback)|
|
||||
resolve4|dns.|(domain, callback)|
|
||||
resolve6|dns.|(domain, callback)|
|
||||
resolveMx|dns.|(domain, callback)|
|
||||
resolveTxt|dns.|(domain, callback)|
|
||||
resolveSrv|dns.|(domain, callback)|
|
||||
resolveNs|dns.|(domain, callback)|
|
||||
resolveCname|dns.|(domain, callback)|
|
||||
reverse|dns.|(ip, callback)|
|
||||
setEncoding|ClientResponse.|([encoding])|
|
||||
pause|ClientResponse.|()|
|
||||
resume|ClientResponse.|()|
|
||||
createServer|http.|([requestListener])|
|
||||
createClient|http.|([port], [host])|
|
||||
request|http.|(options, callback)|
|
||||
get|http.|(options, callback)|
|
||||
listen|http.Server#|(port, [hostname], [backlog], [callback])|
|
||||
listen|http.Server#|(path, [callback])|
|
||||
listen|http.Server#|(handle, [callback])|
|
||||
close|http.Server#|([callback])|
|
||||
setEncoding|http.ServerRequest#|([encoding])|
|
||||
pause|http.ServerRequest#|()|
|
||||
resume|http.ServerRequest#|()|
|
||||
writeContinue|http.ServerResponse#|()|
|
||||
writeHead|http.ServerResponse#|(statusCode, [reasonPhrase], [headers])|
|
||||
setHeader|http.ServerResponse#|(name, value)|
|
||||
getHeader|http.ServerResponse#|(name)|
|
||||
removeHeader|http.ServerResponse#|(name)|
|
||||
write|http.ServerResponse#|(chunk, [encoding])|
|
||||
addTrailers|http.ServerResponse#|(headers)|
|
||||
end|http.ServerResponse#|([data], [encoding])|
|
||||
write|http.ClientRequest#|(chunk, [encoding])|
|
||||
end|http.ClientRequest#|([data], [encoding])|
|
||||
abort|http.ClientRequest#|()|
|
||||
setTimeout|http.ClientRequest#|(timeout, [callback])|
|
||||
setNoDelay|http.ClientRequest#|([noDelay])|
|
||||
setSocketKeepAlive|http.ClientRequest#|([enable], [initialDelay])|
|
||||
listen|createServer.|(path, [callback])|
|
||||
listen|createServer.|(handle, [callback])|
|
||||
close|createServer.|([callback])|
|
||||
createServer|https.|(options, [requestListener])|
|
||||
request|https.|(options, callback)|
|
||||
get|https.|(options, callback)|
|
||||
parse|url.|(urlStr, [parseQueryString], [slashesDenoteHost])|
|
||||
format|url.|(urlObj)|
|
||||
resolve|url.|(from, to)|
|
||||
stringify|querystring.|(obj, [sep], [eq])|
|
||||
parse|querystring.|(str, [sep], [eq], [options])|
|
||||
decode|punycode.|(string)|
|
||||
encode|punycode.|(string)|
|
||||
toUnicode|punycode.|(domain)|
|
||||
toASCII|punycode.|(domain)|
|
||||
createInterface|readline.|(options)|
|
||||
setPrompt|Interface#|(prompt, length)|
|
||||
prompt|Interface#|([preserveCursor])|
|
||||
question|Interface#|(query, callback)|
|
||||
pause|Interface#|()|
|
||||
resume|Interface#|()|
|
||||
close|Interface#|()|
|
||||
write|Interface#|(data, [key])|
|
||||
start|repl.|(options)|
|
||||
runInThisContext|vm.|(code, [filename])|
|
||||
runInNewContext|vm.|(code, [sandbox], [filename])|
|
||||
runInContext|vm.|(code, context, [filename])|
|
||||
createContext|vm.|([initSandbox])|
|
||||
createScript|vm.|(code, [filename])|
|
||||
runInThisContext|Script#|()|
|
||||
runInNewContext|Script#|([sandbox])|
|
||||
kill|ChildProcess#|([signal])|
|
||||
send|ChildProcess#|(message, [sendHandle])|
|
||||
disconnect|ChildProcess#|()|
|
||||
spawn|child_process.|(command, [args], [options]): ChildProcess object|
|
||||
exec|child_process.|(command, [options], callback)|
|
||||
execFile|child_process.|(file, args, options, callback)|
|
||||
fork|child_process.|(modulePath, [args], [options])|
|
||||
fail|assert.|(actual, expected, message, operator)|
|
||||
ok|assert.|(value, message), assert.ok(value, [message])|
|
||||
equal|assert.|(actual, expected, [message])|
|
||||
notEqual|assert.|(actual, expected, [message])|
|
||||
deepEqual|assert.|(actual, expected, [message])|
|
||||
notDeepEqual|assert.|(actual, expected, [message])|
|
||||
strictEqual|assert.|(actual, expected, [message])|
|
||||
notStrictEqual|assert.|(actual, expected, [message])|
|
||||
throws|assert.|(block, [error], [message])|
|
||||
doesNotThrow|assert.|(block, [error], [message])|
|
||||
ifError|assert.|(value)|
|
||||
isatty|tty.|(fd)|
|
||||
setRawMode|tty.|(mode)|
|
||||
setRawMode|ReadStream#|(mode)|
|
||||
createGzip|zlib.|([options])|
|
||||
createGunzip|zlib.|([options])|
|
||||
createDeflate|zlib.|([options])|
|
||||
createInflate|zlib.|([options])|
|
||||
createDeflateRaw|zlib.|([options])|
|
||||
createInflateRaw|zlib.|([options])|
|
||||
createUnzip|zlib.|([options])|
|
||||
deflate|zlib.|(buf, callback)|
|
||||
deflateRaw|zlib.|(buf, callback)|
|
||||
gzip|zlib.|(buf, callback)|
|
||||
gunzip|zlib.|(buf, callback)|
|
||||
inflate|zlib.|(buf, callback)|
|
||||
inflateRaw|zlib.|(buf, callback)|
|
||||
unzip|zlib.|(buf, callback)|
|
||||
tmpDir|os.|()|
|
||||
hostname|os.|()|
|
||||
type|os.|()|
|
||||
platform|os.|()|
|
||||
arch|os.|()|
|
||||
release|os.|()|
|
||||
uptime|os.|()|
|
||||
loadavg|os.|()|
|
||||
totalmem|os.|()|
|
||||
freemem|os.|()|
|
||||
cpus|os.|()|
|
||||
networkInterfaces|os.|()|
|
||||
setupMaster|cluster.|([settings])|
|
||||
fork|cluster.|([env]): Worker object|
|
||||
disconnect|cluster.|([callback])|
|
||||
send|Worker#|(message, [sendHandle])|
|
||||
destroy|Worker#|()|
|
||||
disconnect|Worker#|()|
|
211
.config/geany/tags/std.js.tags
Normal file
211
.config/geany/tags/std.js.tags
Normal file
@ -0,0 +1,211 @@
|
||||
# format=pipe
|
||||
## global objects
|
||||
Array|||
|
||||
ArrayBuffer|||
|
||||
Boolean|||
|
||||
Date|||
|
||||
decodeURI||(encodedURI): string|
|
||||
decodeURIComponent||(encodedURI): string|
|
||||
encodeURI||(URI): string|
|
||||
encodeURIComponent||(str): string|
|
||||
Error|||
|
||||
eval||(string): void|
|
||||
EvalError|||
|
||||
Float32Array|||
|
||||
Float64Array|||
|
||||
Function|||
|
||||
Infinity|||
|
||||
Int16Array|||
|
||||
Int32Array|||
|
||||
Int8Array|||
|
||||
isFinite||(number): boolean|
|
||||
isNaN||(object): boolean|
|
||||
Iterator|||
|
||||
JSON|||
|
||||
Math|||
|
||||
NaN|||
|
||||
Number|||
|
||||
Object|||
|
||||
parseFloat||(string): number|
|
||||
parseInt||(string[, radix]): number|
|
||||
RangeError|||
|
||||
ReferenceError|||
|
||||
RegExp|||
|
||||
StopIteration|||
|
||||
String|||
|
||||
SyntaxError|||
|
||||
TypeError|||
|
||||
Uint16Array|||
|
||||
Uint32Array|||
|
||||
Uint8Array|||
|
||||
Uint8ClampedArray|||
|
||||
undefined|||
|
||||
uneval|||
|
||||
URIError|||
|
||||
## Array
|
||||
isArray|[static] Array.|(obj: Object): Boolean|
|
||||
length|Array.||
|
||||
pop|Array.|(): Array|
|
||||
push|Array.|(element1: Object, ..., elementN: Object): Number|
|
||||
reverse|Array.|(): Array|
|
||||
shift|Array.|(): Object|
|
||||
sort|Array.|([compareFunction]): Array|
|
||||
splice|Array.|(index: number[, howMany: number[, element1: Object[, ...[, elementN: Object]]]]): Array|
|
||||
unshift|Array.|(element1: Object, ..., elementN: Object): Number|
|
||||
concat|Array.|(value1: Object, value2: Object, ..., valueN: Object): Array|
|
||||
join|Array.|(separator: string): Array|
|
||||
slice|Array.|(begin: number[, end: number]): Array|
|
||||
indexOf|Array.|(element: Object): Number|
|
||||
lastIndexOf|Array.|(element: Object): Number|
|
||||
filter|Array.|(callback: Function[, thisObject: Object]): Array|
|
||||
forEach|Array.|(callback: Function[, thisObject: Object]): Array|
|
||||
every|Array.|(callback: Function[, thisObject: Object]): Boolean|
|
||||
map|Array.|(callback: Function[, thisObject: Object]): Array|
|
||||
some|Array.|(callback: Function[, thisObject: Object]): Boolean|
|
||||
reduce|Array.|(callback: Function[, initialValue: Object]): Object|
|
||||
reduceRight|Array.|(callback: Function[, initialValue: Object]): Object|
|
||||
## Date
|
||||
now|[static] Date.|(): void|
|
||||
parse|[static] Date.|(): number|
|
||||
UTC|[static] Date.|(): number|
|
||||
getDate|Date.|(): number|
|
||||
getDay|Date.|(): number|
|
||||
getFullYear|Date.|(): number|
|
||||
getHours|Date.|(): number|
|
||||
getMilliseconds|Date.|(): number|
|
||||
getMinutes|Date.|(): number|
|
||||
getMonth|Date.|(): number|
|
||||
getSeconds|Date.|(): number|
|
||||
getTime|Date.|(): number|
|
||||
getTimezoneOffset|Date.|(): number|
|
||||
getUTCDate|Date.|(): number|
|
||||
getUTCDay|Date.|(): number|
|
||||
getUTCFullYear|Date.|(): number|
|
||||
getUTCHours|Date.|(): number|
|
||||
getUTCMilliseconds|Date.|(): number|
|
||||
getUTCMinutes|Date.|(): number|
|
||||
getUTCMonth|Date.|(): number|
|
||||
getUTCSeconds|Date.|(): number|
|
||||
getYear|Date.|(): number|
|
||||
setFullYear|Date.|(year, [month], [day]): void|
|
||||
setMonth|Date.|(month, [day]): void|
|
||||
setDate|Date.|(day_of_month): void|
|
||||
setHours|Date.|(hours, [minutes], [seconds], [millisec]): void|
|
||||
setMinutes|Date.|(minutes, [seconds], [millisec]): void|
|
||||
setSeconds|Date.|(seconds, [millisec]): void|
|
||||
setMilliseconds|Date.|(milli): void|
|
||||
setTime|Date.|(milli): void|
|
||||
setUTCFullYear|Date.|(year, [month], [day]): void|
|
||||
setUTCMonth|Date.|(month, [day]): void|
|
||||
setUTCDate|Date.|(day_of_month): void|
|
||||
setUTCHours|Date.|(hours, [minutes], [seconds], [millisec]): void|
|
||||
setUTCMinutes|Date.|(minutes, [seconds], [millisec]): void|
|
||||
setUTCSeconds|Date.|(seconds, [millisec]): void|
|
||||
setUTCMilliseconds|Date.|(milli): void|
|
||||
setYear|Date.|(year): void|
|
||||
toDateString|Date.|(): string|
|
||||
toISOString|Date.|(): string|
|
||||
toGMTString|Date.|(): string|
|
||||
toLocaleDateString|Date.|(): string|
|
||||
toLocaleFormat|Date.|(): string|
|
||||
toLocaleString|Date.|(): string|
|
||||
toLocaleTimeString|Date.|(): string|
|
||||
toSource|Date.|(): string|
|
||||
toString|Date.|(): string|
|
||||
toTimeString|Date.|(): string|
|
||||
toUTCString|Date.|(): string|
|
||||
## Function
|
||||
arguments|function(){|: Object}|
|
||||
arguments.callee|||
|
||||
arguments.caller|||
|
||||
arguments.length|||
|
||||
length|Function.||
|
||||
apply|Function.|(thisArg[, argsArray]): void|
|
||||
bind|Function.|(thisArg[, arg1[, arg2[, ...]]]): Function|
|
||||
call|Function.|(thisArg[, arg1[, arg2[, ...]]]): void|
|
||||
isGenerator|Function.|(): boolean)|
|
||||
## Math
|
||||
E|[static] Math.||
|
||||
LN2|[static] Math.||
|
||||
LN10|[static] Math.||
|
||||
LOG2E|[static] Math.||
|
||||
LOG10E|[static] Math.||
|
||||
PI|[static] Math.||
|
||||
SQRT1_2|[static] Math.||
|
||||
SQRT2|[static] Math.||
|
||||
abs|[static] Math.|(x: number): number|
|
||||
acos|[static] Math.|(x: number): number|
|
||||
asin|[static] Math.|(x: number): number|
|
||||
atan|[static] Math.|(x: number): number|
|
||||
atan2|[static] Math.|(y: number, x: number): number|
|
||||
ceil|[static] Math.|(x: number): number|
|
||||
cos|[static] Math.|(x: number): number|
|
||||
exp|[static] Math.|(x: number): number|
|
||||
floor|[static] Math.|(x: number): number|
|
||||
log|[static] Math.|(x: number): number|
|
||||
max|[static] Math.|(a: number, b: number): number|
|
||||
min|[static] Math.|(a: number, b: number): number|
|
||||
pow|[static] Math.|(x: number, y: number): number|
|
||||
random|[static] Math.|(): number|
|
||||
round|[static] Math.|(x: number): number|
|
||||
sin|[static] Math.|(x: number): number|
|
||||
sqrt|[static] Math.|(x: number): number|
|
||||
tan|[static] Math.|(x: number): number|
|
||||
## Number
|
||||
MAX_VALUE|[static] Number.||
|
||||
MIN_VALUE|[static] Number.||
|
||||
NEGATIVE_INFINITY|[static] Number.||
|
||||
POSITIVE_INFINITY|[static] Number.||
|
||||
toExponential|Number.|(x: number): string|
|
||||
toFixed|Number.|(trail: number): string|
|
||||
toPrecision|Number.|(length: number): string|
|
||||
## Object
|
||||
create|[static] Object.|(proto [, propertiesObject ]): Object|
|
||||
defineProperty|[static] Object.|(obj, prop, descriptor): Object|
|
||||
defineProperties|[static] Object.|(obj, props): Object|
|
||||
getOwnPropertyDescriptor|[static] Object.|(obj, prop): Object|
|
||||
keys|[static] Object.|(obj): Array|
|
||||
getOwnPropertyNames|[static] Object.|(obj: Object): Array|
|
||||
getPrototypeOf|[static] Object.|(obj): Object|
|
||||
preventExtensions|[static] Object.|(obj): Object|
|
||||
isExtensible|[static] Object.|(): boolean|
|
||||
seal|[static] Object.|(obj): Object|
|
||||
isSealed|[static] Object.|(): boolean|
|
||||
freeze|[static] Object.|()|
|
||||
isFrozen|[static] Object.|(): boolean|
|
||||
constructor|Object.||
|
||||
hasOwnProperty|Object.|(prop: string): boolean|
|
||||
isPrototypeOf|Object.|(obj: Object): boolean|
|
||||
propertyIsEnumerable|Object.|(prop: string): boolean|
|
||||
toLocaleString|Object.|(): string|
|
||||
toString|Object.|(): string|
|
||||
valueOf|Object.|(): Object|
|
||||
## RegExp
|
||||
global|[static] RegExp.||
|
||||
ignoreCase|[static] RegExp.||
|
||||
lastIndex|[static] RegExp.||
|
||||
multiline|[static] RegExp.||
|
||||
exec|RegExp.|(str: string): Array|
|
||||
test|RegExp.|(str: string): boolean|
|
||||
## String
|
||||
fromCharCode|[static] String.|(num1, ..., numN): string|
|
||||
charAt|String.|(index: number): String|
|
||||
charCodeAt|String.|(index: number): Number|
|
||||
concat|String.|(v1: Object,..., vN: Object): String|
|
||||
indexOf|String.|(substr: string, [start: number]): Number|
|
||||
lastIndexOf|String.|(substr: string, [start: number]): Number|
|
||||
localeCompare|String.|(compareString: string): number|
|
||||
match|String.|(RegExp regexp): Array|
|
||||
replace|String.|(RegExp regexp, replacement: string): String|
|
||||
search|String.|(RegExp regexp): Number|
|
||||
slice|String.|(start: number, end: number): String|
|
||||
split|String.|(delimiter: string, [limit: number]): Array|
|
||||
substr|String.|(start: number[, length: number]): String|
|
||||
substring|String.|(from: number[, to: number]): String|
|
||||
toLocaleLowerCase|String.|(): String|
|
||||
toLocaleUpperCase|String.|(): String|
|
||||
toLowerCase|String.|(): String|
|
||||
toUpperCase|String.|(): String|
|
||||
trim|String.|(): String|
|
||||
trimLeft|String.|(): String|
|
||||
trimRight|String.|(): String|
|
2
.config/geany/templates/templates.README
Normal file
2
.config/geany/templates/templates.README
Normal file
@ -0,0 +1,2 @@
|
||||
There are several template files in this directory. For these templates you can use wildcards.
|
||||
For more information read the documentation (in /Applications/Geany.app/Contents/Resources/share/doc/geany/html/index.html or visit https://www.geany.org/).
|
44
.config/geany/ui_toolbar.xml
Normal file
44
.config/geany/ui_toolbar.xml
Normal file
@ -0,0 +1,44 @@
|
||||
<ui>
|
||||
<!--
|
||||
This is Geany's toolbar UI definition.
|
||||
The DTD can be found at
|
||||
https://docs.gtk.org/gtk3/class.UIManager.html.
|
||||
|
||||
You can re-order all items and freely add and remove available actions.
|
||||
You cannot add new actions which are not listed in the documentation.
|
||||
Everything you add or change must be inside the /ui/toolbar/ path.
|
||||
|
||||
For changes to take effect, you need to restart Geany. Alternatively you can use the toolbar
|
||||
editor in Geany.
|
||||
|
||||
A list of available actions can be found in the documentation included with Geany or
|
||||
at https://www.geany.org/manual/current/index.html#customizing-the-toolbar.
|
||||
-->
|
||||
<toolbar name='GeanyToolbar'>
|
||||
<toolitem action='SearchEntry' />
|
||||
<toolitem action='Search' />
|
||||
<separator/>
|
||||
<toolitem action='GotoEntry' />
|
||||
<toolitem action='Goto' />
|
||||
<separator/>
|
||||
<toolitem action='NavBack' />
|
||||
<toolitem action='NavFor' />
|
||||
<separator/>
|
||||
<toolitem action='New' />
|
||||
<toolitem action='Open' />
|
||||
<toolitem action='Save' />
|
||||
<toolitem action='SaveAll' />
|
||||
<separator/>
|
||||
<toolitem action='Reload' />
|
||||
<toolitem action='Close' />
|
||||
<separator/>
|
||||
<toolitem action='Compile' />
|
||||
<toolitem action='Build' />
|
||||
<toolitem action='Run' />
|
||||
<separator/>
|
||||
<toolitem action='Color' />
|
||||
<separator/>
|
||||
<toolitem action='Quit' />
|
||||
|
||||
</toolbar>
|
||||
</ui>
|
@ -1,8 +1,5 @@
|
||||
[filter "lfs"]
|
||||
clean = git-lfs clean -- %f
|
||||
smudge = git-lfs smudge -- %f
|
||||
process = git-lfs filter-process
|
||||
required = true
|
||||
[init]
|
||||
defaultBranch = main
|
||||
[user]
|
||||
name = Jan Andrle
|
||||
email = andrle.jan@centrum.cz
|
||||
@ -38,14 +35,22 @@
|
||||
editor = vim
|
||||
pager = delta
|
||||
whitespace = -trailing-space,-space-before-tab
|
||||
[filter "lfs"]
|
||||
clean = git-lfs clean -- %f
|
||||
smudge = git-lfs smudge -- %f
|
||||
process = git-lfs filter-process
|
||||
required = true
|
||||
[status]
|
||||
submoduleSummary = true
|
||||
[diff]
|
||||
tool = vimdiff
|
||||
colorMoved = default
|
||||
submodule = log
|
||||
[merge]
|
||||
tool = vimdiff
|
||||
conflictstyle = diff3
|
||||
[log]
|
||||
date=iso
|
||||
date = iso
|
||||
[interactive]
|
||||
diffFilter = delta --color-only
|
||||
[delta] # [dandavison/delta: A syntax-highlighting pager for git, diff, and grep output](https://github.com/dandavison/delta)
|
||||
@ -58,8 +63,6 @@
|
||||
reflogExpireUnreachable = 90
|
||||
[push]
|
||||
autoSetupRemote = true
|
||||
[init]
|
||||
defaultBranch = main
|
||||
[commit]
|
||||
gpgsign = true
|
||||
[rerere]
|
64
.config/git/gitk
Normal file
64
.config/git/gitk
Normal file
@ -0,0 +1,64 @@
|
||||
set mainfont {{Ubuntu Mono} 11}
|
||||
set textfont {{Ubuntu Mono} 11}
|
||||
set uifont {{Ubuntu Mono} 11 bold}
|
||||
set tabstop 8
|
||||
set findmergefiles 0
|
||||
set maxgraphpct 50
|
||||
set maxwidth 16
|
||||
set cmitmode patch
|
||||
set wrapcomment none
|
||||
set autoselect 1
|
||||
set autosellen 40
|
||||
set showneartags 1
|
||||
set maxrefs 20
|
||||
set visiblerefs {"master"}
|
||||
set hideremotes 0
|
||||
set showlocalchanges 1
|
||||
set datetimeformat {%Y-%m-%d %H:%M:%S}
|
||||
set limitdiffs 1
|
||||
set uicolor #302c2c
|
||||
set want_ttk 1
|
||||
set bgcolor #2e3031
|
||||
set fgcolor #d9dedc
|
||||
set uifgcolor black
|
||||
set uifgdisabledcolor #999
|
||||
set colors {"#00ff00" red blue magenta darkgrey brown orange}
|
||||
set diffcolors {{#ffffff} #ffffff #3376f0}
|
||||
set mergecolors {red blue "#00ff00" purple brown "#009090" magenta "#808000" "#009000" "#ff0080" cyan "#b07070" "#70b0f0" "#70f0b0" "#f0b070" "#ff70b0"}
|
||||
set markbgcolor #8b8b8e
|
||||
set diffcontext 3
|
||||
set selectbgcolor #000000
|
||||
set foundbgcolor yellow
|
||||
set currentsearchhitbgcolor orange
|
||||
set extdifftool meld
|
||||
set perfile_attrs 0
|
||||
set headbgcolor #00ff00
|
||||
set headfgcolor black
|
||||
set headoutlinecolor black
|
||||
set remotebgcolor #ffddaa
|
||||
set tagbgcolor yellow
|
||||
set tagfgcolor black
|
||||
set tagoutlinecolor black
|
||||
set reflinecolor black
|
||||
set filesepbgcolor #aaaaaa
|
||||
set filesepfgcolor black
|
||||
set linehoverbgcolor #ffff80
|
||||
set linehoverfgcolor black
|
||||
set linehoveroutlinecolor black
|
||||
set mainheadcirclecolor yellow
|
||||
set workingfilescirclecolor red
|
||||
set indexcirclecolor #00ff00
|
||||
set circlecolors {white blue gray blue blue}
|
||||
set linkfgcolor blue
|
||||
set circleoutlinecolor black
|
||||
set diffbgcolors {{#600000} #004800}
|
||||
set web_browser xdg-open
|
||||
set geometry(main) 1920x1023+0+26
|
||||
set geometry(state) normal
|
||||
set geometry(topwidth) 1920
|
||||
set geometry(topheight) 255
|
||||
set geometry(pwsash0) "672 1"
|
||||
set geometry(pwsash1) "1008 1"
|
||||
set geometry(botwidth) 836
|
||||
set geometry(botheight) 763
|
||||
set permviews {}
|
257
.config/github-releases/config.json
Normal file
257
.config/github-releases/config.json
Normal file
@ -0,0 +1,257 @@
|
||||
{
|
||||
"target": "/home/jaandrle/bin/",
|
||||
"packages": [
|
||||
{
|
||||
"repository": "shiftkey/desktop",
|
||||
"name": "GitHub Desktop",
|
||||
"group": "dev",
|
||||
"file_name": "github-desktop",
|
||||
"exec": "yes",
|
||||
"description": "Fork of GitHub Desktop to support various Linux distributions",
|
||||
"last_update": "2024-08-10T17:00:04Z",
|
||||
"downloads": "/home/jaandrle/bin/github-desktop",
|
||||
"version": "release-3.4.3-linux1",
|
||||
"glare": ".*x86_64.*.AppImage"
|
||||
},
|
||||
{
|
||||
"repository": "pinokiocomputer/pinokio",
|
||||
"name": "Pinokio",
|
||||
"group": "ai",
|
||||
"file_name": "pinokio",
|
||||
"exec": "yes",
|
||||
"description": "AI Browser",
|
||||
"glare": "AppImage",
|
||||
"last_update": "2024-07-29T15:29:11Z",
|
||||
"version": "2.1.17",
|
||||
"downloads": "/home/jaandrle/bin/pinokio"
|
||||
},
|
||||
{
|
||||
"repository": "jaandrle/jaaCSS-cli",
|
||||
"name": "jaaCSS",
|
||||
"description": "EXPERIMENT – Helper for managing functional CSS classes",
|
||||
"group": "dev",
|
||||
"file_name": "jaaCSS.js",
|
||||
"exec": "yes",
|
||||
"downloads": "/home/jaandrle/bin/jaaCSS.js",
|
||||
"version": "v1.3.2",
|
||||
"last_update": "2022-09-02T13:33:16Z",
|
||||
"glare": "jaaCSS.js"
|
||||
},
|
||||
{
|
||||
"repository": "th-ch/youtube-music",
|
||||
"name": "youtube-music",
|
||||
"description": "YouTube Music Desktop App bundled with custom plugins (and built-in ad blocker / downloader)",
|
||||
"group": "nondev",
|
||||
"file_name": "youtube-music",
|
||||
"exec": "yes",
|
||||
"last_update": "2024-08-01T11:48:59Z",
|
||||
"downloads": "/home/jaandrle/bin/youtube-music",
|
||||
"version": "v3.5.1",
|
||||
"glare": "AppImage"
|
||||
},
|
||||
{
|
||||
"repository": "ArchGPT/insomnium",
|
||||
"name": "insomnium",
|
||||
"description": "Insomnium is a fast local API testing tool that is privacy-focused and 100% local. For testing GraphQL, REST, WebSockets and gRPC. This is a fork of Kong/insomnia",
|
||||
"group": "dev",
|
||||
"file_name": "insomnium",
|
||||
"exec": "yes",
|
||||
"last_update": "2023-11-13T10:03:28Z",
|
||||
"downloads": "/home/jaandrle/bin/insomnium",
|
||||
"tag_name_regex": "core@.*",
|
||||
"version": "core@0.2.3-a",
|
||||
"glare": "AppImage"
|
||||
},
|
||||
{
|
||||
"repository": "Kong/insomnia",
|
||||
"name": "insomnia",
|
||||
"description": "The open-source, cross-platform API client for GraphQL, REST, and gRPC.",
|
||||
"group": "skip",
|
||||
"file_name": "insomnia",
|
||||
"exec": "yes",
|
||||
"last_update": "2024-04-17T16:38:03Z",
|
||||
"downloads": "/home/jaandrle/bin/insomnia",
|
||||
"tag_name_regex": "core@.*",
|
||||
"version": "core@9.0.0-beta.4",
|
||||
"glare": "AppImage"
|
||||
},
|
||||
{
|
||||
"repository": "rvpanoz/luna",
|
||||
"name": "luna",
|
||||
"description": "Manage npm dependencies through a modern UI.",
|
||||
"group": "skip",
|
||||
"file_name": "luna",
|
||||
"exec": "yes",
|
||||
"glare": "AppImage"
|
||||
},
|
||||
{
|
||||
"repository": "angela-d/wifi-channel-watcher",
|
||||
"name": "wifi-channel-watcher",
|
||||
"group": "skip",
|
||||
"file_name": "wifi-channel-watcher",
|
||||
"exec": "no",
|
||||
"description": "Monitor channel usage of neighboring routers & get an alert if your active channel is not optimal.\tTroubleshoot wifi without lifting a finger!"
|
||||
},
|
||||
{
|
||||
"repository": "vinceliuice/Tela-circle-icon-theme",
|
||||
"name": "Tela-circle-icon-theme",
|
||||
"description": "Tela-circle-icon-theme",
|
||||
"group": "skip",
|
||||
"file_name": "tela-circle-icon-theme.zip",
|
||||
"last_update": "2021-07-19T14:12:05Z",
|
||||
"exec": "no"
|
||||
},
|
||||
{
|
||||
"repository": "AppImage/AppImageKit",
|
||||
"name": "AppImageKit",
|
||||
"group": "skip",
|
||||
"file_name": "appimagekit",
|
||||
"exec": "yes",
|
||||
"description": "Package desktop applications as AppImages that run on common Linux-based operating systems, such as RHEL, CentOS, openSUSE, SLED, Ubuntu, Fedora, debian and derivatives. Join #AppImage on irc.freenode.net",
|
||||
"glare": ".*x86_64.*.AppImage"
|
||||
},
|
||||
{
|
||||
"repository": "dynobo/normcap",
|
||||
"name": "NormCap",
|
||||
"description": "Switched to flatpak version | OCR powered screen-capture tool to capture information instead of images",
|
||||
"group": "skip",
|
||||
"file_name": "normcap",
|
||||
"exec": "yes",
|
||||
"last_update": "2023-12-12T22:23:37Z",
|
||||
"downloads": "/home/jaandrle/bin/normcap",
|
||||
"version": "v0.5.2"
|
||||
},
|
||||
{
|
||||
"repository": "upscayl/upscayl",
|
||||
"name": "upscayl",
|
||||
"description": "🆙 Upscayl - Free and Open Source AI Image Upscaler for Linux, MacOS and Windows built with Linux-First philosophy.",
|
||||
"group": "nondev",
|
||||
"file_name": "upscayl",
|
||||
"exec": "yes",
|
||||
"last_update": "2024-06-01T14:48:20Z",
|
||||
"downloads": "/home/jaandrle/bin/upscayl",
|
||||
"version": "v2.11.5",
|
||||
"glare": "AppImage"
|
||||
},
|
||||
{
|
||||
"repository": "RasmusLindroth/tut",
|
||||
"name": "tut",
|
||||
"description": "TUI for Mastodon with vim inspired keys",
|
||||
"group": "nondev",
|
||||
"file_name": "tut",
|
||||
"exec": "yes",
|
||||
"last_update": "2023-01-26T17:48:00Z",
|
||||
"downloads": "/home/jaandrle/bin/tut",
|
||||
"version": "2.0.1",
|
||||
"glare": "tut-amd64"
|
||||
},
|
||||
{
|
||||
"repository": "sunner/ChatALL",
|
||||
"name": "ChatALL",
|
||||
"description": " Concurrently chat with ChatGPT, Bing Chat, bard, Alpaca, Vincuna, Claude, ChatGLM, MOSS, iFlytek Spark, ERNIE and more, discover the best answers",
|
||||
"group": "skip",
|
||||
"file_name": "chatall",
|
||||
"exec": "yes",
|
||||
"last_update": "2024-04-14T02:09:42Z",
|
||||
"downloads": "/home/jaandrle/bin/chatall",
|
||||
"version": "v1.71.100",
|
||||
"glare": ".*x86_64.*.AppImage"
|
||||
},
|
||||
{
|
||||
"repository": "jaandrle/bs",
|
||||
"name": "bs",
|
||||
"description": "The simplest possible build system using executables",
|
||||
"group": "dev",
|
||||
"file_name": "bs",
|
||||
"exec": "yes",
|
||||
"last_update": "2024-03-28T13:16:41Z",
|
||||
"downloads": "/home/jaandrle/bin/bs",
|
||||
"version": "v0.7.4",
|
||||
"glare": "bs-linux"
|
||||
},
|
||||
{
|
||||
"repository": "h3poteto/fedistar",
|
||||
"name": "Fedistar",
|
||||
"description": "Multi-column Mastodon, Pleroma, and Friendica client for desktop",
|
||||
"group": "nondev",
|
||||
"file_name": "fedistar",
|
||||
"exec": "yes",
|
||||
"last_update": "2024-08-08T13:46:23Z",
|
||||
"downloads": "/home/jaandrle/bin/fedistar",
|
||||
"version": "v1.9.10",
|
||||
"glare": ".*amd64.*.AppImage"
|
||||
},
|
||||
{
|
||||
"repository": "ollama/ollama",
|
||||
"name": "ollama",
|
||||
"description": "Get up and running with Llama 2 and other large language models locally",
|
||||
"group": "ai",
|
||||
"file_name": "ollama",
|
||||
"exec": "yes",
|
||||
"last_update": "2024-08-13T20:27:42Z",
|
||||
"downloads": "/home/jaandrle/bin/ollama",
|
||||
"version": "v0.3.6",
|
||||
"glare": "linux-amd64"
|
||||
},
|
||||
{
|
||||
"repository": "neovim/neovim",
|
||||
"name": "neovim",
|
||||
"tag_name_regex": "v.*",
|
||||
"description": "Vim-fork focused on extensibility and usability",
|
||||
"group": "skip",
|
||||
"file_name": "nvim",
|
||||
"exec": "yes",
|
||||
"downloads": "/home/jaandrle/bin/nvim",
|
||||
"version": "v0.9.5",
|
||||
"last_update": "2023-12-30T13:31:47Z"
|
||||
},
|
||||
{
|
||||
"repository": "viarotel-org/escrcpy",
|
||||
"name": "Escrcpy",
|
||||
"description": "📱 Graphical Scrcpy to display and control Android, devices powered by Electron. | 使用图形化的 Scrcpy 显示和控制您的 Android 设备,由 Electron 驱动。",
|
||||
"group": "dev",
|
||||
"file_name": "escrcpy",
|
||||
"exec": "yes",
|
||||
"last_update": "2024-08-03T17:09:45Z",
|
||||
"downloads": "/home/jaandrle/bin/escrcpy",
|
||||
"version": "v1.22.4",
|
||||
"glare": ".*x86_64.*.AppImage"
|
||||
},
|
||||
{
|
||||
"repository": "drovp/drovp",
|
||||
"name": "drovp",
|
||||
"description": "Desktop app for encoding, converting, upscaling, and much more.",
|
||||
"group": "dev-test",
|
||||
"file_name": "drovp",
|
||||
"exec": "yes",
|
||||
"last_update": "2023-12-06T11:30:02Z",
|
||||
"downloads": "/home/jaandrle/bin/drovp",
|
||||
"version": "0.8.0",
|
||||
"glare": "x64.AppImage"
|
||||
},
|
||||
{
|
||||
"repository": "janhq/jan",
|
||||
"name": "Jan",
|
||||
"description": "Jan is an open source alternative to ChatGPT that runs 100% offline on your computer",
|
||||
"group": "ai",
|
||||
"file_name": "jan",
|
||||
"exec": "yes",
|
||||
"last_update": "2024-07-15T08:37:42Z",
|
||||
"downloads": "/home/jaandrle/bin/jan",
|
||||
"version": "v0.5.2",
|
||||
"glare": ".*x86_64.*.AppImage"
|
||||
},
|
||||
{
|
||||
"repository": "Bin-Huang/chatbox",
|
||||
"name": "Chatbox",
|
||||
"description": "Chatbox is a desktop client for ChatGPT, Claude and other LLMs, available on Windows, Mac, Linux",
|
||||
"group": "ai",
|
||||
"file_name": "Chatbox",
|
||||
"exec": "yes",
|
||||
"last_update": "2024-05-15T06:10:47Z",
|
||||
"downloads": "/home/jaandrle/bin/Chatbox",
|
||||
"version": "v1.3.10",
|
||||
"glare": ".*x86_64.*.AppImage"
|
||||
}
|
||||
]
|
||||
}
|
@ -1,8 +1,3 @@
|
||||
[TabBox]
|
||||
DesktopLayout=org.kde.breeze.desktop
|
||||
DesktopListLayout=org.kde.breeze.desktop
|
||||
LayoutName=org.kde.breeze.desktop
|
||||
|
||||
[Windows]
|
||||
Placement=Centered
|
||||
|
||||
|
@ -32,6 +32,22 @@
|
||||
"--help",
|
||||
"--version"
|
||||
]
|
||||
},
|
||||
"§time.mjs": {
|
||||
"npx": false,
|
||||
"completions": {
|
||||
"diff": [
|
||||
"--unit"
|
||||
],
|
||||
"?": "diff",
|
||||
"zone": [
|
||||
"--z"
|
||||
]
|
||||
},
|
||||
"completions_all": [
|
||||
"--help",
|
||||
"--version"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
@ -1,8 +1,3 @@
|
||||
/* --print/--echo aliases */
|
||||
Reflect.defineProperty($, "nosed", { get(){ return this.stdin.text(""); }, });
|
||||
Reflect.defineProperty($, "nojq", { get(){ return this.stdin.json(null); }, });
|
||||
Reflect.defineProperty($, "noawk", { get(){ return this.stdin.lines([]); }, });
|
||||
|
||||
/* deprecated/fallback */
|
||||
globalThis.cyclicLoop= function*(items){
|
||||
if(!items) items= 'win32'===process.platform ? '|/-\\' : "⠋⠙⠹⠸⠼⠴⠦⠧⠇⠏";
|
||||
@ -14,5 +9,24 @@ globalThis.cyclicLoop= function*(items){
|
||||
}
|
||||
|
||||
Reflect.defineProperty($, "clipboard", {
|
||||
get(){ return s.$().run`xclip -o -selection clipboard`; }
|
||||
get(){
|
||||
if($.env.XDG_SESSION_TYPE === "x11")
|
||||
return s.$().run`xclip -o -selection clipboard`;
|
||||
return s.$().run`wl-paste`;
|
||||
}
|
||||
})
|
||||
|
||||
// /** Custom uncaughtException function */
|
||||
// export const uncaughtException= console.log;
|
||||
// /** Place for custom code when script starts */
|
||||
// export function onscript(){}
|
||||
/** Place for custom code when REPL starts (`--interactive`) */
|
||||
export function onrepl(){
|
||||
Reflect.defineProperty(s, "jq", { get(){ return file=> s.cat(file).xargs(JSON.parse); } });
|
||||
}
|
||||
/** Place for custom code when eval starts (`--eval`/`--print`) */
|
||||
export function oneval(){ /* --print/--echo aliases */
|
||||
Reflect.defineProperty($, "nosed", { get(){ return this.stdin.text(""); }, });
|
||||
Reflect.defineProperty($, "nojq", { get(){ return this.stdin.json(null); }, });
|
||||
Reflect.defineProperty($, "noawk", { get(){ return this.stdin.lines([]); }, });
|
||||
}
|
||||
|
@ -0,0 +1,6 @@
|
||||
// Settings in here override those in "Default/Preferences.sublime-settings",
|
||||
// and are overridden in turn by syntax-specific settings.
|
||||
{
|
||||
"theme": "Merge Dark.sublime-theme",
|
||||
"hardware_acceleration": "opengl",
|
||||
}
|
@ -0,0 +1,3 @@
|
||||
{
|
||||
"spell_check": false
|
||||
}
|
@ -0,0 +1,31 @@
|
||||
// https://github.com/Sublime-Instincts/CommandsBrowser/tree/master/sm_commands_metadata
|
||||
[
|
||||
{
|
||||
"caption": "Switch…",
|
||||
"command": "checkout_branch",
|
||||
},
|
||||
{
|
||||
"caption": "Switch -C…",
|
||||
"command": "create_branch",
|
||||
},
|
||||
{
|
||||
"caption": "Checkout -B…",
|
||||
"command": "create_branch",
|
||||
},
|
||||
{
|
||||
"caption": "Commit…",
|
||||
"command": "commit",
|
||||
},
|
||||
{
|
||||
"caption": "Browse repository",
|
||||
"command": "git",
|
||||
"args": { "argv": [ "browse" ] }
|
||||
},
|
||||
{
|
||||
"caption": "Branch -D --all (delete remote and local branch)",
|
||||
"command": "delete_branch",
|
||||
"args": {
|
||||
"argv": [ true, true, true ]
|
||||
}
|
||||
}
|
||||
]
|
@ -0,0 +1,6 @@
|
||||
[
|
||||
{
|
||||
"keys": ["ctrl+;"],
|
||||
"command": "show_command_palette"
|
||||
},
|
||||
]
|
@ -0,0 +1,3 @@
|
||||
{
|
||||
"draw_white_space": "all"
|
||||
}
|
@ -0,0 +1,12 @@
|
||||
// Settings in here override those in "Default/Preferences.sublime-settings",
|
||||
// and are overridden in turn by syntax-specific settings.
|
||||
{
|
||||
"hardware_acceleration": "opengl",
|
||||
"diff_algorithm": "match_git",
|
||||
"diff_style": "auto",
|
||||
"font_face": "Ubuntu Mono",
|
||||
"side_bar_layout": "tabs",
|
||||
"signature_error_highlighting": "no_public_key",
|
||||
"theme": "Merge Dark.sublime-theme",
|
||||
"expand_merge_commits_by_default": true,
|
||||
}
|
298
.config/tridactyl/themes/dark-soft.css
Normal file
298
.config/tridactyl/themes/dark-soft.css
Normal file
@ -0,0 +1,298 @@
|
||||
/* stylelint-disable declaration-colon-space-after, scss/dollar-variable-colon-space-after */
|
||||
:root {
|
||||
--background-0: #1d2021;
|
||||
--background-1: #282828;
|
||||
--background-2: #32302f;
|
||||
--background-3: #3c3836;
|
||||
--background-4: #504945;
|
||||
--background-5: #665c54;
|
||||
--foreground-0: #665c54;
|
||||
--foreground-1: #bdae93;
|
||||
--foreground-2: #d5c4a1;
|
||||
--foreground-3: #ebdbb2;
|
||||
--foreground-4: #fbf1c7;
|
||||
--red: #ea6962;
|
||||
--orange: #e78a4e;
|
||||
--yellow: #d8a657;
|
||||
--green: #a9b665;
|
||||
--cyan: #89b482;
|
||||
--blue: #7daea3;
|
||||
--magenta: #d3869b;
|
||||
}
|
||||
|
||||
:root {
|
||||
--border-radius-0: 3px;
|
||||
--border-radius-1: 4px;
|
||||
--border-radius-2: 6px;
|
||||
--border-radius-3: 8px;
|
||||
--space-1: 4px;
|
||||
--space-2: 8px;
|
||||
--space-3: 12px;
|
||||
--shadow-0:
|
||||
0 0.1px 0.1px 0 rgb(0 0 0 / 35%),
|
||||
0 0.4px 0.5px -0.7px rgb(0 0 0 / 35%),
|
||||
0 1.1px 1.2px -1.5px rgb(0 0 0 / 25%),
|
||||
0 2.7px 3.2px -2px rgb(0 0 0 / 35%),
|
||||
0 -0.1px 1.2px 0 rgb(0 0 0 / 20%),
|
||||
0 0 3.5px -2.2px rgb(0 0 0 / 30%);
|
||||
--shadow-1:
|
||||
rgb(0 0 0 / 7%) 0 0.4px 0.5px 0,
|
||||
rgb(0 0 0 / 7%) 0 1.2px 1.3px -0.8px,
|
||||
rgb(0 0 0 / 7%) 0 2.9px 3.3px -1.7px,
|
||||
rgb(0 0 0 / 7%) 0.1px 6.9px 7.8px -2.5px,
|
||||
rgb(0 0 0 / 10%) 0 0 7.8px -2.5px;
|
||||
--shadow-2:
|
||||
rgb(0 0 0 / 15%) 0 0.4px 0.5px 0,
|
||||
rgb(0 0 0 / 15%) 0 1.8px 2px -0.4px,
|
||||
rgb(0 0 0 / 15%) 0 3.3px 3.7px -0.7px,
|
||||
rgb(0 0 0 / 15%) 0.1px 5.3px 6px -1.1px,
|
||||
rgb(0 0 0 / 15%) 0.1px 8.4px 9.5px -1.4px,
|
||||
rgb(0 0 0 / 15%) 0.1px 13.1px 14.7px -1.8px,
|
||||
rgb(0 0 0 / 15%) 0.2px 19.9px 22.4px -2.1px,
|
||||
rgb(0 0 0 / 15%) 0.3px 29.3px 33px -2.5px,
|
||||
rgb(0 0 0 / 17.5%) 0 0 9.5px -1.4px;
|
||||
--font-family-sans:
|
||||
-apple-system,
|
||||
blinkmacsystemfont,
|
||||
"Open Sans",
|
||||
"Helvetica Neue",
|
||||
"Segoe UI",
|
||||
roboto,
|
||||
oxygen,
|
||||
ubuntu,
|
||||
cantarell,
|
||||
sans-serif;
|
||||
--font-family-mono:
|
||||
"Mono Lisa",
|
||||
sfmono-regular,
|
||||
"Source Code Pro",
|
||||
menlo,
|
||||
monaco,
|
||||
consolas,
|
||||
"Liberation Mono",
|
||||
monospace;
|
||||
--font-size-1: 10px;
|
||||
--font-size-2: 16px;
|
||||
--font-size-3: 20px;
|
||||
--font-weight-mono-normal: 400;
|
||||
--font-weight-sans-normal: 400;
|
||||
--font-weight-mono-semibold: 500;
|
||||
--font-weight-sans-semibold: 500;
|
||||
--font-weight-mono-bold: 600;
|
||||
--font-weight-sans-bold: 600;
|
||||
}
|
||||
|
||||
:root {
|
||||
--tridactyl-cmdl-font-size: var(--font-size-3);
|
||||
--tridactyl-header-font-size: var(--font-size-2);
|
||||
--tridactyl-cmdl-font-family: var(--font-family-mono);
|
||||
--tridactyl-cmplt-font-family: var(--font-family-mono);
|
||||
--tridactyl-header-font-weight: var(--font-weight-mono-semibold);
|
||||
--tridactyl-fg: var(--foreground-2);
|
||||
--tridactyl-bg: var(--background-2);
|
||||
--tridactyl-url-fg: var(--blue);
|
||||
--tridactyl-url-bg: var(--background-2);
|
||||
--tridactyl-highlight-box-bg: var(--green);
|
||||
--tridactyl-highlight-box-fg: var(--background-2);
|
||||
--tridactyl-photon-colours-accent-1: var(--blue);
|
||||
--tridactyl-hintspan-fg: var(--background-2) !important;
|
||||
--tridactyl-hintspan-bg: var(--cyan) !important;
|
||||
--tridactyl-hint-active-fg: none;
|
||||
--tridactyl-hint-active-bg: none;
|
||||
--tridactyl-hint-active-outline: none;
|
||||
--tridactyl-hint-bg: none;
|
||||
--tridactyl-hint-outline: none;
|
||||
}
|
||||
|
||||
span.TridactylHint {
|
||||
padding: 1px var(--space-1) 2px !important;
|
||||
border-radius: var(--border-radius-0) !important;
|
||||
font-family: var(--font-family-mono) !important;
|
||||
font-weight: var(--font-weight-mono-semibold) !important;
|
||||
box-shadow: var(--shadow-0) !important;
|
||||
animation: 3s linear 1s infinite running hint !important;
|
||||
}
|
||||
span.TridactylHint:nth-child(1n) {
|
||||
background: #ea6962 !important;
|
||||
}
|
||||
span.TridactylHint:nth-child(2n) {
|
||||
background: #e78a4e !important;
|
||||
}
|
||||
span.TridactylHint:nth-child(3n) {
|
||||
background: #d8a657 !important;
|
||||
}
|
||||
span.TridactylHint:nth-child(4n) {
|
||||
background: #a9b665 !important;
|
||||
}
|
||||
span.TridactylHint:nth-child(5n) {
|
||||
background: #89b482 !important;
|
||||
}
|
||||
span.TridactylHint:nth-child(6n) {
|
||||
background: #7daea3 !important;
|
||||
}
|
||||
span.TridactylHint:nth-child(7n) {
|
||||
background: #d3869b !important;
|
||||
}
|
||||
|
||||
#trinewtab > img {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.TridactylStatusIndicator {
|
||||
position: fixed !important;
|
||||
right: 5px !important;
|
||||
bottom: 0 !important;
|
||||
bottom: 5px !important;
|
||||
padding: 0.25rem 0.375rem !important;
|
||||
border: unset !important;
|
||||
background: var(--tridactyl-bg) !important;
|
||||
border-radius: var(--border-radius-1) !important;
|
||||
box-shadow: var(--shadow-1) !important;
|
||||
color: var(--yellow) !important;
|
||||
font-size: 0.75rem !important;
|
||||
font-weight: 500 !important;
|
||||
opacity: 0.75;
|
||||
}
|
||||
|
||||
#cmdline_iframe {
|
||||
position: fixed !important;
|
||||
z-index: 2147483647 !important;
|
||||
top: 20% !important;
|
||||
bottom: unset;
|
||||
left: 10% !important;
|
||||
width: 80% !important;
|
||||
color-scheme: light;
|
||||
}
|
||||
|
||||
.TridactylOwnNamespace > body {
|
||||
display: flex;
|
||||
box-sizing: border-box;
|
||||
flex-direction: column;
|
||||
align-items: stretch;
|
||||
padding: 3rem;
|
||||
}
|
||||
|
||||
#command-line-holder {
|
||||
display: flex;
|
||||
overflow: hidden;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
order: 1;
|
||||
background: var(--background-0);
|
||||
border-radius: 0;
|
||||
border-top-left-radius: var(--border-radius-3);
|
||||
border-top-right-radius: var(--border-radius-3);
|
||||
box-shadow: var(--shadow-2);
|
||||
color: var(--tridactyl-bg);
|
||||
opacity: 0.95;
|
||||
}
|
||||
#command-line-holder #tridactyl-colon {
|
||||
padding-left: 0.75rem;
|
||||
color: var(--foreground-1);
|
||||
font-size: 1.25rem;
|
||||
opacity: 0.5;
|
||||
}
|
||||
|
||||
#tridactyl-input {
|
||||
width: 100%;
|
||||
box-sizing: border-box;
|
||||
padding: 1rem;
|
||||
padding-left: 0.25rem;
|
||||
background: transparent;
|
||||
color: var(--tridactyl-fg);
|
||||
line-height: 1.5;
|
||||
}
|
||||
|
||||
#completions {
|
||||
--option-height: 1.4em;
|
||||
display: inline-block;
|
||||
overflow: hidden;
|
||||
width: auto;
|
||||
order: 2;
|
||||
padding-bottom: 0.5rem;
|
||||
border-top: unset;
|
||||
background: var(--tridactyl-bg);
|
||||
border-radius: 0;
|
||||
border-bottom-left-radius: var(--border-radius-3);
|
||||
border-bottom-right-radius: var(--border-radius-3);
|
||||
box-shadow: var(--shadow-2);
|
||||
color: var(--tridactyl-fg);
|
||||
font-size: unset;
|
||||
opacity: 0.95;
|
||||
}
|
||||
#completions > div {
|
||||
min-height: auto;
|
||||
max-height: calc(20 * var(--option-height));
|
||||
}
|
||||
#completions .sectionHeader {
|
||||
padding: 0.5rem !important;
|
||||
padding-bottom: 0.2rem;
|
||||
padding-left: unset;
|
||||
border-bottom: unset;
|
||||
background: var(--background-1);
|
||||
font-weight: var(--font-weight-mono-semibold);
|
||||
}
|
||||
#completions table.optionContainer {
|
||||
padding-top: 0;
|
||||
padding-bottom: 1rem;
|
||||
border-spacing: 0;
|
||||
table-layout: fixed;
|
||||
}
|
||||
#completions table.optionContainer td {
|
||||
padding: 0.25rem 0.5rem;
|
||||
}
|
||||
#completions table.optionContainer td.content, #completions table.optionContainer td.documentation, #completions table.optionContainer td.title {
|
||||
font-family: var(--font-family-sans);
|
||||
font-weight: var(--font-weight-sans-normal);
|
||||
}
|
||||
#completions table.optionContainer td.title {
|
||||
width: 50%;
|
||||
font-weight: var(--font-weight-sans-semibold);
|
||||
}
|
||||
#completions table.optionContainer td.privatewindow, #completions table.optionContainer td.container {
|
||||
display: none;
|
||||
}
|
||||
#completions table.optionContainer td.prefix {
|
||||
color: var(--foreground-0);
|
||||
font-weight: var(--font-weight-mono-bold);
|
||||
}
|
||||
#completions table.optionContainer td.icon {
|
||||
position: relative;
|
||||
}
|
||||
#completions table.optionContainer td.icon img {
|
||||
filter: sepia(100%);
|
||||
}
|
||||
#completions .focused {
|
||||
background: var(--background-4);
|
||||
color: var(--foreground-3);
|
||||
}
|
||||
#completions .focused .excmd {
|
||||
color: var(--magenta);
|
||||
}
|
||||
#completions .focused .url {
|
||||
background: var(--background-4);
|
||||
color: var(--magenta);
|
||||
}
|
||||
#completions .BmarkCompletionSource {
|
||||
min-height: unset;
|
||||
max-height: unset;
|
||||
}
|
||||
#completions .BufferCompletionSource {
|
||||
min-height: unset;
|
||||
max-height: unset;
|
||||
}
|
||||
#completions .HistoryCompletionSource {
|
||||
min-height: unset;
|
||||
max-height: unset;
|
||||
}
|
||||
#completions .BufferCompletionSource tablecompletion-table {
|
||||
width: unset;
|
||||
border-spacing: unset;
|
||||
font-size: unset;
|
||||
table-layout: unset;
|
||||
}
|
||||
#completions .HistoryCompletionSource td.prefix {
|
||||
display: none;
|
||||
}
|
||||
|
||||
/*# sourceMappingURL=dark-soft.css.map */
|
133
.config/tridactyl/themes/rustmenu.css
Normal file
133
.config/tridactyl/themes/rustmenu.css
Normal file
@ -0,0 +1,133 @@
|
||||
:root {
|
||||
/* Generic */
|
||||
--tridactyl-font-family: Monospace;
|
||||
--tridactyl-font-size: 12pt;
|
||||
--tridactyl-bg: #141414;
|
||||
--tridactyl-highlight: #C25C3C;
|
||||
--tridactyl-focused-bg: #2F2F2F;
|
||||
--tridactyl-fg: #E0D3B3;
|
||||
--tridactyl-url: #4988BF;
|
||||
--tridactyl-hint-fg: #FF774D;
|
||||
|
||||
/* Hint character tags */
|
||||
--tridactyl-hintspan-font-family: var(--tridactyl-font-family);
|
||||
--tridactyl-hintspan-font-size: var(--tridactyl-font-size);
|
||||
--tridactyl-hintspan-font-weight: bold;
|
||||
--tridactyl-hintspan-fg: var(--tridactyl-hint-fg);
|
||||
--tridactyl-hintspan-bg: rgba(0, 0, 0, 0.7);
|
||||
--tridactyl-hintspan-border-color: black;
|
||||
--tridactyl-hintspan-border-width: 1px;
|
||||
--tridactyl-hintspan-border-style: solid;
|
||||
--tridactyl-hintspan-js-background: hsla(0, 0%, 65%);
|
||||
|
||||
/* Element highlights */
|
||||
--tridactyl-hint-active-fg: none;
|
||||
--tridactyl-hint-active-bg: none;
|
||||
--tridactyl-hint-active-outline: none;
|
||||
|
||||
--tridactyl-hint-bg: none;
|
||||
--tridactyl-hint-outline: 0px solid black;
|
||||
|
||||
/* :viewsource */
|
||||
--tridactyl-vs-bg: var(--tridactyl-bg);
|
||||
--tridactyl-vs-fg: var(--tridactyl-fg);
|
||||
--tridactyl-vs-font-family: var(--tridactyl-font-family);
|
||||
|
||||
/*commandline*/
|
||||
--tridactyl-cmdl-bg: var(--tridactyl-bg);
|
||||
--tridactyl-cmdl-fg: var(--tridactyl-fg);
|
||||
--tridactyl-font-size-cmdl: 1.30rem;
|
||||
--tridactyl-cmdl-line-height: 1.30em;
|
||||
--tridactyl-cmdl-font-family: var(--tridactyl-font-family);
|
||||
--tridactyl-cmdl-font-size: var(--tridactyl-font-size-cmdl);
|
||||
--tridactyl-cmdl-font-weight: 800;
|
||||
|
||||
/*completions*/
|
||||
--tridactyl-cmplt-option-height: 1.60em;
|
||||
--tridactyl-cmplt-fg: var(--tridactyl-fg);
|
||||
--tridactyl-cmplt-bg: var(--tridactyl-bg);
|
||||
--tridactyl-cmplt-font-size: var(--tridactyl-font-size);
|
||||
--tridactyl-cmplt-font-family: var(--tridactyl-font-family);
|
||||
|
||||
/*url style*/
|
||||
--tridactyl-url-text-decoration: none;
|
||||
--tridactyl-url-fg: var(--tridactyl-url);
|
||||
--tridactyl-url-bg: var(--tridactyl-bg);
|
||||
--tridactyl-url-cursor: pointer;
|
||||
}
|
||||
|
||||
.TridactylOwnNamespace body {
|
||||
max-height: 500px;
|
||||
min-height: 500px;
|
||||
}
|
||||
|
||||
:root #command-line-holder {
|
||||
order: 2;
|
||||
border-top: 1px solid black; /* cmdline top */
|
||||
background: var(--tridactyl-focused-bg);
|
||||
}
|
||||
:root #tridactyl-input {
|
||||
background: var(--tridactyl-focused-bg);
|
||||
}
|
||||
|
||||
:root #completions {
|
||||
max-height: 470px;
|
||||
min-height: 470px;
|
||||
font-weight: 200;
|
||||
}
|
||||
:root #completions .sectionHeader {
|
||||
display: none;
|
||||
}
|
||||
|
||||
:root #tridactyl-colon::before {
|
||||
content: " :";
|
||||
font-size: var(--tridactyl-font-size-cmdl);
|
||||
}
|
||||
|
||||
:root #completions > div {
|
||||
max-height: 500px;
|
||||
min-height: 500px;
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
:root #completions table {
|
||||
white-space: nowrap;
|
||||
-webkit-mask-image: linear-gradient(to right, rgba(0,0,0,1) 97%, rgba(0,0,0,0));
|
||||
}
|
||||
|
||||
:root #completions table tr td.prefix,
|
||||
:root #completions table tr td.privatewindow,
|
||||
:root #completions table tr td.container {
|
||||
display: none;
|
||||
}
|
||||
|
||||
:root #completions .focused,
|
||||
:root #completions .focused .url {
|
||||
background: var(--tridactyl-focused-bg);
|
||||
color: var(--tridactyl-highlight);
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
:root #completions .SessionCompletionOption .extraInfo {
|
||||
color: var(--tridactyl-url);
|
||||
}
|
||||
|
||||
:root #completions table tr .title {
|
||||
padding-left: 5px !important;
|
||||
}
|
||||
|
||||
:root #cmdline_iframe {
|
||||
position: fixed !important;
|
||||
bottom: unset;
|
||||
/* opacity: 1; */
|
||||
top: 30% !important;
|
||||
left: 23% !important;
|
||||
width: 60% !important;
|
||||
z-index: 2147483647 !important;
|
||||
border: 1px solid black !important; /* around window */
|
||||
box-shadow: rgba(0, 0, 0, 0.8) 0px 0px 5px !important;
|
||||
}
|
||||
|
||||
:root #cmdline_iframe.cleanslate.hidden {
|
||||
display: none !important;
|
||||
}
|
@ -43,8 +43,10 @@ unbindurl ^https://www.youtube.com/* <<
|
||||
" see https://gist.github.com/jaandrle/031198ab5130deb903065138532cc066
|
||||
bindurl ^https://www.youtube.com/* ss fillcmdline open B: YT
|
||||
bindurl ^https://www.o2tv.cz/* ss fillcmdline open B: O2
|
||||
bindurl ^https://chat.openai.com/* ss fillcmdline open B: OPENAI
|
||||
|
||||
bindurl ^https://chatgpt.com/* ss fillcmdline open B: OPENAI
|
||||
bindurl ^https://chat.mistral.ai/chat* ss fillcmdline open B: OPENAI
|
||||
bindurl ^https://rss.jaandrle.cz/* ss nmode ignore 1 mode normal
|
||||
bindurl ^https://rss.jaandrle.cz/* sn hint -c div
|
||||
|
||||
command pauseVideos js Array.from(document.querySelectorAll("video")).forEach(el=> ( location.hostname!=="www.o2tv.cz" ? el.pause() : [ "Pauza" ].map(l=> document.querySelector(`[aria-label=${l}]`)).find(Boolean)?.dispatchEvent(new Event("click")) ))
|
||||
tri.controller.acceptExCmd(`tabopen -c pracovní https://gist.github.com/jaandrle/ff1de72c500557f401e190b4ec05aa62#${document.title.replace(/["':|\.,\?\!_]/g, '').replace(/ /g, '-').toLowerCase()}`)
|
||||
@ -64,6 +66,7 @@ bind dd tabclose
|
||||
|
||||
unbind --mode=normal s
|
||||
bind st fillcmdline_notrail tab
|
||||
bind \t fillcmdline_notrail tab
|
||||
|
||||
" h keyboardlayoutoverrides … https://gistpreview.github.io/?324119c773fac31651f6422087b36804
|
||||
" set keyboardlayoutoverrides "Digit2: ;, Backquote: :"
|
||||
@ -83,7 +86,7 @@ bind --mode=normal n fillcmdline tabopen
|
||||
bind --mode=normal N current_url tabopen
|
||||
|
||||
bind -c fillcmdline recontain
|
||||
bind sc fillcmdline_notrail container
|
||||
bind \c fillcmdline_notrail container
|
||||
|
||||
bind --mode=visual \t composite js "https://libretranslate.com/?source=auto&target=cs&q="+encodeURI(document.getSelection().toString()) | tabopen
|
||||
bind --mode=visual \T composite js "https://translate.google.com/?sl=auto&tl=cs&op=translate&text="+encodeURI(document.getSelection().toString()) | tabopen
|
||||
@ -96,12 +99,6 @@ bind gnC tabopen -c osobní https://calendar.google.com
|
||||
bind goC open -c osobní https://calendar.google.com
|
||||
bind gwC winopen -c osobní https://calendar.google.com
|
||||
|
||||
" Sites (mails) notes using Github Gists
|
||||
bind sn js tri.controller.acceptExCmd(`tabopen -c pracovní https://gist.github.com/jaandrle/ff1de72c500557f401e190b4ec05aa62#${document.title.replace(/["':|\.,\?\!_]/g, '').replace(/ /g, '-').toLowerCase()}`)
|
||||
bind sN composite clipboard yankmd ; tabopen -c pracovní https://gist.github.com/jaandrle/ff1de72c500557f401e190b4ec05aa62/edit
|
||||
bindurl ^https://mail.centrum.cz/* sn js tri.controller.acceptExCmd(`tabopen -c pracovní https://gist.github.com/jaandrle/ff1de72c500557f401e190b4ec05aa62#${(new URLSearchParams(window.location.search)).get("msg")}`)
|
||||
bindurl ^https://mail.centrum.cz/* sN composite js tri.controller.acceptExCmd(`clipboard yank [${(new URLSearchParams(window.location.search)).get("msg")}](https://mail.centrum.cz/?msg=${(new URLSearchParams(window.location.search)).get("msg")})`) ; tabopen -c pracovní https://gist.github.com/jaandrle/ff1de72c500557f401e190b4ec05aa62/edit
|
||||
|
||||
alias hint_focus hint -;
|
||||
quickmark c moz-extension://616498c0-3916-4f0b-b0a9-ce01ecf2298d/popup.html
|
||||
|
4
.config/xremap.yml
Normal file
4
.config/xremap.yml
Normal file
@ -0,0 +1,4 @@
|
||||
keymap:
|
||||
- name: Ctrl+tab alias
|
||||
remap:
|
||||
C-KEY_KPSLASH: C-KEY_TAB
|
206
.ctags
Normal file
206
.ctags
Normal file
@ -0,0 +1,206 @@
|
||||
--exclude="*/node_modules/*"
|
||||
--exclude=*.min.js
|
||||
--exclude=*.min.css
|
||||
--exclude=*.map
|
||||
--exclude=.backup
|
||||
--exclude=.sass-cache
|
||||
--exclude=vendors
|
||||
--exclude=.git
|
||||
|
||||
--langdef=css
|
||||
--langmap=css:.css
|
||||
--langmap=css:+.styl
|
||||
--langmap=css:+.less
|
||||
--regex-css=/^[ \t]*\.([A-Za-z0-9_-]+)/\1/c,class,classes/
|
||||
--regex-css=/^[ \t]*#([A-Za-z0-9_-]+)/\1/i,id,ids/
|
||||
--regex-css=/^[ \t]*(([A-Za-z0-9_-]+[ \t\n,]+)+)\{/\1/t,tag,tags/
|
||||
--regex-css=/^[ \t]*@media\s+([A-Za-z0-9_-]+)/\1/m,media,medias/
|
||||
|
||||
--langdef=scss
|
||||
--langmap=scss:.sass
|
||||
--langmap=scss:+.scss
|
||||
--regex-scss=/^[ \t]*@mixin ([A-Za-z0-9_-]+)/\1/m,mixin,mixins/
|
||||
--regex-scss=/^[ \t]*@function ([A-Za-z0-9_-]+)/\1/f,function,functions/
|
||||
--regex-scss=/^[ \t]*\$([A-Za-z0-9_-]+)/\1/v,variable,variables/
|
||||
--regex-scss=/^([A-Za-z0-9_-]*)*\.([A-Za-z0-9_-]+) *[,{]/\2/c,class,classes/
|
||||
--regex-scss=/^[ \t]+\.([A-Za-z0-9_-]+) *[,{]/\1/c,class,classes/
|
||||
--regex-scss=/^(.*)*\#([A-Za-z0-9_-]+) *[,{]/\2/i,id,ids/
|
||||
--regex-scss=/^[ \t]*#([A-Za-z0-9_-]+)/\1/i,id,ids/
|
||||
--regex-scss=/(^([A-Za-z0-9_-])*([A-Za-z0-9_-]+)) *[,|\{]/\1/t,tag,tags/
|
||||
--regex-scss=/(^([^\/\/])*)[ \t]+([A-Za-z0-9_-]+)) *[,|\{]/\3/t,tag,tags/
|
||||
--regex-scss=/(^(.*, *)([A-Za-z0-9_-]+)) *[,|\{]/\3/t,tag,tags/
|
||||
--regex-scss=/(^[ \t]+([A-Za-z0-9_-]+)) *[,|\{]/\1/t,tag,tags/
|
||||
--regex-scss=/^[ \t]*@media\s+([A-Za-z0-9_-]+)/\1/d,media,media/
|
||||
|
||||
--langdef=stylus
|
||||
--langmap=stylus:.styl
|
||||
--regex-stylus=/^[ \t]*\.([A-Za-z0-9_-]+)/\1/c,class,classes/
|
||||
--regex-stylus=/^[ \t]*#([A-Za-z0-9_-]+)/\1/i,id,ids/
|
||||
--regex-stylus=/^[ \t]*(([A-Za-z0-9_-]+[ \t\n,]+)+)\{/\1/t,tag,tags/
|
||||
--regex-stylus=/^[ \t]*@media\s+([A-Za-z0-9_-]+)/\1/m,media,medias/
|
||||
|
||||
--langdef=markdown
|
||||
--langmap=markdown:.md
|
||||
--regex-markdown=/^# (<.*>)?(.+)/\2/i,h1/
|
||||
--regex-markdown=/^## (<.*>)?(.+)/\2/i,h2/
|
||||
--regex-markdown=/^### (<.*>)?(.+)/\2/i,h3/
|
||||
|
||||
--langdef=js
|
||||
--langmap=javascript:.js.es6.es.jsx.mjs
|
||||
--javascript-kinds=-c-f-m-p-v
|
||||
|
||||
--regex-javascript=/^[ \t]*var[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*=[ \t]*\[/\1/A,Array,Arrays/b
|
||||
--regex-javascript=/^[ \t]*let[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*=[ \t]*\[/\1/A,Array,Arrays/b
|
||||
--regex-javascript=/^[ \t]*const[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*=[ \t]*\[/\1/A,Array,Arrays/b
|
||||
|
||||
--regex-javascript=/^[ \t]*class[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)/\1/C,Class,Classes/b
|
||||
|
||||
--regex-javascript=/^[ \t]*export[ \t]\{1,\}\({[ \t]*\)*\([A-Za-z0-9_\*]*[ \t]as[ \t]\)\([A-Za-z0-9_]\{1,\}\)/\3/E,Export,Exports/b
|
||||
--regex-javascript=/^[ \t]*export[ \t]\{1,\}\({[ \t]*\)*\([A-Za-z0-9_\*]*[ \t]as[ \t]\)*\([A-Za-z0-9_]\{1,\}\),[ \t]*\([A-Za-z0-9_\*]*[ \t]as[ \t]\)\([A-Za-z0-9_]\{1,\}\)/\5/E,Export,Exports/b
|
||||
--regex-javascript=/^[ \t]*export[ \t]\{1,\}\({[ \t]*\)*\([A-Za-z0-9_\*]*[ \t]as[ \t]\)*\([A-Za-z0-9_]\{1,\}\),[ \t]*\([A-Za-z0-9_\*]*[ \t]as[ \t]\)*\([A-Za-z0-9_]\{1,\}\),[ \t]*\([A-Za-z0-9_\*]*[ \t]as[ \t]\)\([A-Za-z0-9_]\{1,\}\)/\7/E,Export,Exports/b
|
||||
--regex-javascript=/^[ \t]*export[ \t]\{1,\}var[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)/\1/E,Export,Exports/b
|
||||
--regex-javascript=/^[ \t]*export[ \t]\{1,\}let[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)/\1/E,Export,Exports/b
|
||||
--regex-javascript=/^[ \t]*export[ \t]\{1,\}const[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)/\1/E,Export,Exports/b
|
||||
--regex-javascript=/^[ \t]*export[ \t]\{1,\}function[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)/\1/E,Export,Exports/b
|
||||
--regex-javascript=/^[ \t]*export[ \t]\{1,\}var[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*[^,]\{1,\},[ \t]*\([A-Za-z0-9_$]\{1,\}\)/\2/E,Export,Exports/b
|
||||
--regex-javascript=/^[ \t]*export[ \t]\{1,\}let[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*[^,]\{1,\},[ \t]*\([A-Za-z0-9_$]\{1,\}\)/\2/E,Export,Exports/b
|
||||
--regex-javascript=/^[ \t]*export[ \t]\{1,\}const[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*[^,]\{1,\},[ \t]*\([A-Za-z0-9_$]\{1,\}\)/\2/E,Export,Exports/b
|
||||
--regex-javascript=/^[ \t]*export[ \t]\{1,\}var[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*[^,]\{1,\},[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)/\3/E,Export,Exports/b
|
||||
--regex-javascript=/^[ \t]*export[ \t]\{1,\}let[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*[^,]\{1,\},[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)/\3/E,Export,Exports/b
|
||||
--regex-javascript=/^[ \t]*export[ \t]\{1,\}const[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*[^,]\{1,\},[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)/\3/E,Export,Exports/b
|
||||
|
||||
--regex-javascript=/^[ \t]*export[ \t]\{1,\}default[ \t]\{1,\}\({[ \t]*\)*\([A-Za-z0-9_\*]*[ \t]as[ \t]\)\([A-Za-z0-9_]\{1,\}\)/\3/E,Export,Exports/b
|
||||
--regex-javascript=/^[ \t]*export[ \t]\{1,\}default[ \t]\{1,\}\({[ \t]*\)*\([A-Za-z0-9_\*]*[ \t]as[ \t]\)*\([A-Za-z0-9_]\{1,\}\),[ \t]*\([A-Za-z0-9_\*]*[ \t]as[ \t]\)\([A-Za-z0-9_]\{1,\}\)/\5/E,Export,Exports/b
|
||||
--regex-javascript=/^[ \t]*export[ \t]\{1,\}default[ \t]\{1,\}\({[ \t]*\)*\([A-Za-z0-9_\*]*[ \t]as[ \t]\)*\([A-Za-z0-9_]\{1,\}\),[ \t]*\([A-Za-z0-9_\*]*[ \t]as[ \t]\)*\([A-Za-z0-9_]\{1,\}\),[ \t]*\([A-Za-z0-9_\*]*[ \t]as[ \t]\)\([A-Za-z0-9_]\{1,\}\)/\7/E,Export,Exports/b
|
||||
--regex-javascript=/^[ \t]*export[ \t]\{1,\}default[ \t]\{1,\}var[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)/\1/E,Export,Exports/b
|
||||
--regex-javascript=/^[ \t]*export[ \t]\{1,\}default[ \t]\{1,\}let[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)/\1/E,Export,Exports/b
|
||||
--regex-javascript=/^[ \t]*export[ \t]\{1,\}default[ \t]\{1,\}const[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)/\1/E,Export,Exports/b
|
||||
--regex-javascript=/^[ \t]*export[ \t]\{1,\}default[ \t]\{1,\}function[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)/\1/E,Export,Exports/b
|
||||
--regex-javascript=/^[ \t]*export[ \t]\{1,\}default[ \t]\{1,\}var[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*[^,]\{1,\},[ \t]*\([A-Za-z0-9_$]\{1,\}\)/\2/E,Export,Exports/b
|
||||
--regex-javascript=/^[ \t]*export[ \t]\{1,\}default[ \t]\{1,\}let[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*[^,]\{1,\},[ \t]*\([A-Za-z0-9_$]\{1,\}\)/\2/E,Export,Exports/b
|
||||
--regex-javascript=/^[ \t]*export[ \t]\{1,\}default[ \t]\{1,\}const[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*[^,]\{1,\},[ \t]*\([A-Za-z0-9_$]\{1,\}\)/\2/E,Export,Exports/b
|
||||
--regex-javascript=/^[ \t]*export[ \t]\{1,\}default[ \t]\{1,\}var[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*[^,]\{1,\},[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)/\3/E,Export,Exports/b
|
||||
--regex-javascript=/^[ \t]*export[ \t]\{1,\}default[ \t]\{1,\}let[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*[^,]\{1,\},[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)/\3/E,Export,Exports/b
|
||||
--regex-javascript=/^[ \t]*export[ \t]\{1,\}default[ \t]\{1,\}const[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*[^,]\{1,\},[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)/\3/E,Export,Exports/b
|
||||
|
||||
--regex-javascript=/^[ \t]*function[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t(]/\1/F,Function,Functions/b
|
||||
--regex-javascript=/^[ \t]*[(]function[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t(]/\1/F,Function,Functions/b
|
||||
--regex-javascript=/^[ \t]*async[ \t]function[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t(]/\1/F,Function,Functions/b
|
||||
--regex-javascript=/^[ \t]*[(]async[ \t]function[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t(]/\1/F,Function,Functions/b
|
||||
--regex-javascript=/^[ \t]*var[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*=[ \t]*\(async[ \t]\{1,\}\)*function[^\*][^\*]/\1/F,Function,Functions/b
|
||||
--regex-javascript=/^[ \t]*let[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*=[ \t]*\(async[ \t]\{1,\}\)*function[^\*][^\*]/\1/F,Function,Functions/b
|
||||
--regex-javascript=/^[ \t]*const[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*=[ \t]*\(async[ \t]\{1,\}\)*function[^\*][^\*]/\1/F,Function,Functions/b
|
||||
--regex-javascript=/^[ \t]*var[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*=[ \t]*([^)]*$/\1/F,Function,Functions/b
|
||||
--regex-javascript=/^[ \t]*let[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*=[ \t]*([^)]*$/\1/F,Function,Functions/b
|
||||
--regex-javascript=/^[ \t]*const[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*=[ \t]*([^)]*$/\1/F,Function,Functions/b
|
||||
--regex-javascript=/^[ \t]*var[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*=.\{1,\}=>/\1/F,Function,Functions/b
|
||||
--regex-javascript=/^[ \t]*let[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*=.\{1,\}=>/\1/F,Function,Functions/b
|
||||
--regex-javascript=/^[ \t]*const[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*=.\{1,\}=>/\1/F,Function,Functions/b
|
||||
|
||||
--regex-javascript=/^[ \t]*function[ \t]*\*[ \t]*\([A-Za-z0-9_$]\{1,\}\)/\1/G,Generator,Generators/b
|
||||
--regex-javascript=/^[ \t]*var[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*=[ \t]*function\([ \t]*\*\)/\1/G,Generator,Generators/b
|
||||
--regex-javascript=/^[ \t]*let[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*=[ \t]*function\([ \t]*\*\)/\1/G,Generator,Generators/b
|
||||
--regex-javascript=/^[ \t]*const[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*=[ \t]*function\([ \t]*\*\)/\1/G,Generator,Generators/b
|
||||
--regex-javascript=/^[ \t]*\(\*[ \t]\)\([A-Za-z0-9_$]\{1,\}\)[ \t]*(.*)[ \t]*[{]/\2/G,Generator,Generators/b
|
||||
|
||||
--regex-javascript=/^[ \t]*import[ \t]\{1,\}\([{][ \t]*\)*\([A-Za-z0-9_\*]*[ \t]as[ \t]\)\([A-Za-z0-9_]\{1,\}\)/\3/I,Import,Imports/b
|
||||
--regex-javascript=/^[ \t]*import[ \t]\{1,\}\([{][ \t]*\)*\([A-Za-z0-9_\*]*[ \t]as[ \t]\)*\([A-Za-z0-9_]\{1,\}\),[ \t]*\([A-Za-z0-9_\*]*[ \t]as[ \t]\)\([A-Za-z0-9_]\{1,\}\)/\5/I,Import,Imports/b
|
||||
--regex-javascript=/^[ \t]*import[ \t]\{1,\}\([{][ \t]*\)*\([A-Za-z0-9_\*]*[ \t]as[ \t]\)*\([A-Za-z0-9_]\{1,\}\),[ \t]*\([A-Za-z0-9_\*]*[ \t]as[ \t]\)*\([A-Za-z0-9_]\{1,\}\),[ \t]*\([A-Za-z0-9_\*]*[ \t]as[ \t]\)\([A-Za-z0-9_]\{1,\}\)/\7/I,Import,Imports/b
|
||||
--regex-javascript=/^[ \t]*import[ \t]\{1,\}type[ \t]\{1,\}\([{][ \t]*\)*\([A-Za-z0-9_\*]*[ \t]as[ \t]\)\([A-Za-z0-9_]\{1,\}\)/\3/I,Import,Imports/b
|
||||
--regex-javascript=/^[ \t]*import[ \t]\{1,\}typeof[ \t]\{1,\}\([{][ \t]*\)*\([A-Za-z0-9_\*]*[ \t]as[ \t]\)\([A-Za-z0-9_]\{1,\}\)/\3/I,Import,Imports/b
|
||||
--regex-javascript=/^[ \t]*[A-Za-z0-9_]\{1,\}[ \t]as[ \t]\([A-Za-z0-9_]\{1,\}\)/\1/I,Import,Imports/b
|
||||
|
||||
--regex-javascript=/^[ \t]*\([A-Za-z0-9_$]\{1,\}\)\.\([A-Za-z0-9_$]\{1,\}\)[ \t]*=[ \t]*function/\2/M,Method,Methods/b
|
||||
--regex-javascript=/^[ \t]*\([A-Za-z0-9_$]\{1,\}\)\.\([A-Za-z0-9_$]\{1,\}\)[ \t]*=[ \t]*(/\2/M,Method,Methods/b
|
||||
--regex-javascript=/^[ \t]*\([A-Za-z0-9_$]\{1,\}\)\.\([A-Za-z0-9_$]\{1,\}\)\.\([A-Za-z0-9_$]\{1,\}\)[ \t]*=[ \t]*function/\3/M,Method,Methods/b
|
||||
--regex-javascript=/^[ \t]*\([A-Za-z0-9_$]\{1,\}\)\.\([A-Za-z0-9_$]\{1,\}\)\.\([A-Za-z0-9_$]\{1,\}\)[ \t]*=[ \t]*(/\3/M,Method,Methods/b
|
||||
--regex-javascript=/^[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*[:=][ \t]*[(]*function[ \t]*(/\1/M,Method,Methods/b
|
||||
--regex-javascript=/^[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*[:=][ \t](\{1,\}/\1/M,Method,Methods/b
|
||||
--regex-javascript=/^[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*[:=][ \t]\{1,\}async[ \t](\{1,\}/\1/M,Method,Methods/b
|
||||
--regex-javascript=/^[ \t]*static[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*(/\1/M,Method,Methods/b
|
||||
--regex-javascript=/^[ \t]*async[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*(/\1/M,Method,Methods/b
|
||||
--regex-javascript=/^[ \t]*\([A-Za-z0-9_$]\{1,\}\)(.*)[ \t]*[{]/\1/M,Method,Methods/b
|
||||
--regex-javascript=/^[ \t]*get[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*(/\1/M,Method,Methods/b
|
||||
--regex-javascript=/^[ \t]*set[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*(/\1/M,Method,Methods/b
|
||||
|
||||
--regex-javascript=/^[ \t]*\([A-Za-z0-9_$]\{1,\}\)\.\([A-Za-z0-9_$]\{1,\}\)[ \t]*[=][ \t]*{/\2/P,Property,Properties/b
|
||||
--regex-javascript=/^[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*:[ \t]*[{"\/\[]/\1/P,Property,Properties/b
|
||||
--regex-javascript=/^[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*:[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t,]*$/\1/P,Property,Properties/b
|
||||
|
||||
--regex-javascript=/^[ \t]*var[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*=[ \t]*[{]/\1/O,Object,Objects/b
|
||||
--regex-javascript=/^[ \t]*let[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*=[ \t]*[{]/\1/O,Object,Objects/b
|
||||
--regex-javascript=/^[ \t]*const[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*=[ \t]*[{]/\1/O,Object,Objects/b
|
||||
|
||||
--regex-javascript=/^[ \t]*var[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*=[ \t]*styled/\1/S,StyledComponent,StyledComponents/b
|
||||
--regex-javascript=/^[ \t]*let[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*=[ \t]*styled/\1/S,StyledComponent,StyledComponents/b
|
||||
--regex-javascript=/^[ \t]*const[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*=[ \t]*styled/\1/S,StyledComponent,StyledComponents/b
|
||||
--regex-javascript=/^[ \t]*var[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*=[ \t]*createGlobalStyle/\1/S,StyledComponent,StyledComponents/b
|
||||
--regex-javascript=/^[ \t]*let[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*=[ \t]*createGlobalStyle/\1/S,StyledComponent,StyledComponents/b
|
||||
--regex-javascript=/^[ \t]*const[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*=[ \t]*createGlobalStyle/\1/S,StyledComponent,StyledComponents/b
|
||||
|
||||
--regex-javascript=/\/\/[ \t]*\(FIXME\)[ \t]*:*\(.*\)/\1/T,Tag,Tags/b
|
||||
--regex-javascript=/\/\/[ \t]*\(TODO\)[ \t]*:*\(.*\)/\1/T,Tag,Tags/b
|
||||
--regex-javascript=/\/\/[ \t]*\(BUG\)[ \t]*:*\(.*\)/\1/T,Tag,Tags/b
|
||||
--regex-javascript=/\/\/[ \t]*\(NOBUG\)[ \t]*:*\(.*\)/\1/T,Tag,Tags/b
|
||||
--regex-javascript=/\/\/[ \t]*\(???\)[ \t]*:*\(.*\)/\1/T,Tag,Tags/b
|
||||
--regex-javascript=/\/\/[ \t]*\(!!!\)[ \t]*:*\(.*\)/\1/T,Tag,Tags/b
|
||||
--regex-javascript=/\/\/[ \t]*\(HACK\)[ \t]*:*\(.*\)/\1/T,Tag,Tags/b
|
||||
--regex-javascript=/\/\/[ \t]*\(XXX\)[ \t]*:*\(.*\)/\1/T,Tag,Tags/b
|
||||
|
||||
--regex-javascript=/^[ \t]*var[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*=[ \t]*[0-9\"'\/]/\1/V,Variable,Variables/b
|
||||
--regex-javascript=/^[ \t]*let[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*=[ \t]*[0-9\"'\/]/\1/V,Variable,Variables/b
|
||||
--regex-javascript=/^[ \t]*const[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*=[ \t]*[0-9\"'\/]/\1/V,Variable,Variables/b
|
||||
--regex-javascript=/^[ \t]*var[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*=[ \t]*new/\1/V,Variable,Variables/b
|
||||
--regex-javascript=/^[ \t]*let[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*=[ \t]*new/\1/V,Variable,Variables/b
|
||||
--regex-javascript=/^[ \t]*const[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*=[ \t]*new/\1/V,Variable,Variables/b
|
||||
|
||||
--regex-javascript=/^[ \t]*var[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*[,;]/\1/V,Variable,Variables/b
|
||||
--regex-javascript=/^[ \t]*let[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*[,;]/\1/V,Variable,Variables/b
|
||||
--regex-javascript=/^[ \t]*var[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)/\2/V,Variable,Variables/b
|
||||
--regex-javascript=/^[ \t]*let[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)/\2/V,Variable,Variables/b
|
||||
--regex-javascript=/^[ \t]*var[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)/\3/V,Variable,Variables/b
|
||||
--regex-javascript=/^[ \t]*let[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)/\3/V,Variable,Variables/b
|
||||
|
||||
--regex-javascript=/^[ \t]*const[ \t]\{1,\}{[ \t]*\([A-Za-z0-9_$]\{1,\}\)[^}]*}[ \t]*=/\1/V,Variable,Variables/b
|
||||
--regex-javascript=/^[ \t]*const[ \t]\{1,\}{[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)[^}]*}[ \t]*=/\2/V,Variable,Variables/b
|
||||
--regex-javascript=/^[ \t]*const[ \t]\{1,\}{[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)[^}]*}[ \t]*=/\3/V,Variable,Variables/b
|
||||
--regex-javascript=/^[ \t]*const[ \t]\{1,\}{[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)[^}]*}[ \t]*=/\4/V,Variable,Variables/b
|
||||
--regex-javascript=/^[ \t]*const[ \t]\{1,\}\[[ \t]*\([A-Za-z0-9_$]\{1,\}\).*\][ \t]*=/\1/V,Variable,Variables/b
|
||||
--regex-javascript=/^[ \t]*const[ \t]\{1,\}\[[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\).*\][ \t]*=/\2/V,Variable,Variables/b
|
||||
--regex-javascript=/^[ \t]*const[ \t]\{1,\}\[[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\).*\][ \t]*=/\3/V,Variable,Variables/b
|
||||
--regex-javascript=/^[ \t]*const[ \t]\{1,\}\[[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\).*\][ \t]*=/\4/V,Variable,Variables/b
|
||||
|
||||
--regex-javascript=/^[ \t]*var[ \t]\{1,\}{[ \t]*\([A-Za-z0-9_$]\{1,\}\)[^}]*}[ \t]*=/\1/V,Variable,Variables/b
|
||||
--regex-javascript=/^[ \t]*var[ \t]\{1,\}{[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)[^}]*}[ \t]*=/\2/V,Variable,Variables/b
|
||||
--regex-javascript=/^[ \t]*var[ \t]\{1,\}{[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)[^}]*}[ \t]*=/\3/V,Variable,Variables/b
|
||||
--regex-javascript=/^[ \t]*var[ \t]\{1,\}{[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)[^}]*}[ \t]*=/\4/V,Variable,Variables/b
|
||||
--regex-javascript=/^[ \t]*var[ \t]\{1,\}\[[ \t]*\([A-Za-z0-9_$]\{1,\}\).*\][ \t]*=/\1/V,Variable,Variables/b
|
||||
--regex-javascript=/^[ \t]*var[ \t]\{1,\}\[[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\).*\][ \t]*=/\2/V,Variable,Variables/b
|
||||
--regex-javascript=/^[ \t]*var[ \t]\{1,\}\[[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\).*\][ \t]*=/\3/V,Variable,Variables/b
|
||||
--regex-javascript=/^[ \t]*var[ \t]\{1,\}\[[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\).*\][ \t]*=/\4/V,Variable,Variables/b
|
||||
|
||||
--regex-javascript=/^[ \t]*let[ \t]\{1,\}{[ \t]*\([A-Za-z0-9_$]\{1,\}\)[^}]*}[ \t]*=/\1/V,Variable,Variables/b
|
||||
--regex-javascript=/^[ \t]*let[ \t]\{1,\}{[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)[^}]*}[ \t]*=/\2/V,Variable,Variables/b
|
||||
--regex-javascript=/^[ \t]*let[ \t]\{1,\}{[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)[^}]*}[ \t]*=/\3/V,Variable,Variables/b
|
||||
--regex-javascript=/^[ \t]*let[ \t]\{1,\}{[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)[^}]*}[ \t]*=/\4/V,Variable,Variables/b
|
||||
--regex-javascript=/^[ \t]*let[ \t]\{1,\}\[[ \t]*\([A-Za-z0-9_$]\{1,\}\).*\][ \t]*=/\1/V,Variable,Variables/b
|
||||
--regex-javascript=/^[ \t]*let[ \t]\{1,\}\[[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\).*\][ \t]*=/\2/V,Variable,Variables/b
|
||||
--regex-javascript=/^[ \t]*let[ \t]\{1,\}\[[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\).*\][ \t]*=/\3/V,Variable,Variables/b
|
||||
--regex-javascript=/^[ \t]*let[ \t]\{1,\}\[[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\)[ \t]*,[ \t]*\([A-Za-z0-9_$]\{1,\}\).*\][ \t]*=/\4/V,Variable,Variables/b
|
||||
|
||||
--regex-javascript=/^[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\),$/\1/V,Variable,Variables/b
|
||||
--regex-javascript=/^[ \t]\{1,\}\([A-Za-z0-9_$]\{1,\}\)$/\1/V,Variable,Variables/b
|
||||
|
||||
--langdef=typescript
|
||||
--langmap=typescript:.ts.tsx
|
||||
--regex-typescript=/^[ \t]*(export[ \t]+([a-z]+[ \t]+)?)?class[ \t]+([a-zA-Z0-9_$]+)/\3/c,classes/
|
||||
--regex-typescript=/^[ \t]*(declare[ \t]+)?namespace[ \t]+([a-zA-Z0-9_$]+)/\2/c,modules/
|
||||
--regex-typescript=/^[ \t]*(export[ \t]+)?module[ \t]+([a-zA-Z0-9_$]+)/\2/n,modules/
|
||||
--regex-typescript=/^[ \t]*(export[ \t]+)?(default[ \t]+)?(async[ \t]+)?function(\*)?[ \t]+([a-zA-Z0-9_$]+)/\5/f,functions/
|
||||
--regex-typescript=/^[ \t]*export[ \t]+(var|let|const)[ \t]+([a-zA-Z0-9_$]+)/\2/v,variables/
|
||||
--regex-typescript=/^[ \t]*(var|let|const)[ \t]+([a-zA-Z0-9_$]+)[ \t]*=[ \t]*function[ \t]*[*]?[ \t]*\(\)/\2/v,varlambdas/
|
||||
--regex-typescript=/^[ \t]*(export[ \t]+)?(public|protected|private)?[ \t]*(static[ \t]+)?(abstract[ \t]+)?(((get|set|readonly)[ \t]+)|(async[ \t]+[*]*[ \t]*))?(#?[a-zA-Z1-9_$]+)[ \t]*[:(]/\9/m,members/
|
||||
--regex-typescript=/^[ \t]*(export[ \t]+)?interface[ \t]+([a-zA-Z0-9_$]+)/\2/i,interfaces/
|
||||
--regex-typescript=/^[ \t]*(export[ \t]+)?type[ \t]+([a-zA-Z0-9_$]+)/\2/t,types/
|
||||
--regex-typescript=/^[ \t]*(export[ \t]+)?enum[ \t]+([a-zA-Z0-9_$]+)/\2/e,enums/
|
||||
--regex-typescript=/^[ \t]*import[ \t]+([a-zA-Z0-9_$]+)/\1/I,imports/
|
5
.inputrc
5
.inputrc
@ -8,7 +8,7 @@ set keymap vi-insert
|
||||
set show-mode-in-prompt on
|
||||
set vi-ins-mode-string ">_"
|
||||
set vi-cmd-mode-string "$_"
|
||||
# aka set wildmode=longest:full:list,full
|
||||
# aka set wildmode=longest:full:list,full (tab and shift+tab)
|
||||
TAB: menu-complete
|
||||
"\e[Z": menu-complete-backward
|
||||
set show-all-if-ambiguous on
|
||||
@ -17,7 +17,8 @@ set menu-complete-display-prefix on
|
||||
"\e[A":history-search-backward
|
||||
"\e[B":history-search-forward
|
||||
|
||||
"\e\C-e": history-and-alias-expand-line
|
||||
# shift+enter
|
||||
"OM": history-and-alias-expand-line
|
||||
|
||||
set colored-stats On
|
||||
|
||||
|
@ -3,7 +3,7 @@ AntiAliasFonts=true
|
||||
BoldIntense=true
|
||||
ColorScheme=DarkPastels
|
||||
DimmValue=54
|
||||
Font=Ubuntu Mono,9,-1,5,75,0,0,0,0,0,Bold
|
||||
Font=Ubuntu Mono,9,-1,5,700,0,0,0,0,0,0,0,0,0,0,1,Bold
|
||||
UseFontLineChararacters=false
|
||||
|
||||
[General]
|
||||
@ -12,4 +12,5 @@ Name=Můj
|
||||
Parent=FALLBACK/
|
||||
|
||||
[Scrolling]
|
||||
HistoryMode=2
|
||||
ScrollBarPosition=2
|
||||
|
@ -3,7 +3,7 @@ In fact, lots of settings are synced by Firefox itself.
|
||||
So this folder contains just some infos around and settings for [tridactyl](#tridactyl).
|
||||
|
||||
## Related files
|
||||
- [../../.tridactylrc](../../.tridactylrc)
|
||||
- [../../.config/tridactyl/](../../.config/tridactyl/)
|
||||
- [../native-messaging-hosts/tridactyl.json](../native-messaging-hosts/tridactyl.json)
|
||||
|
||||
## Extensions
|
||||
|
@ -53,6 +53,7 @@ bind-key U show-urls
|
||||
unbind-key ^B
|
||||
bind-key m bookmark
|
||||
|
||||
# TODO: replace with nocodb
|
||||
bookmark-cmd "~/bin/pocket-sh-add.sh"
|
||||
bookmark-autopilot yes
|
||||
|
||||
|
183
.newsboat/urls
183
.newsboat/urls
@ -1,25 +1,21 @@
|
||||
https://www.youtube.com/feeds/videos.xml?channel_id=UCMiyV_Ib77XLpzHPQH_q0qQ video
|
||||
https://www.youtube.com/feeds/videos.xml?channel_id=UCVls1GmFKf6WlTraIb_IaJg video
|
||||
https://www.youtube.com/feeds/videos.xml?channel_id=UCACJQqtYw6sASWAHXWkBWpw ! video
|
||||
https://www.youtube.com/feeds/videos.xml?playlist_id=PLanJ0JNOqYbysIbQ3KnHkWeotmTEWXCTA ! video
|
||||
https://www.youtube.com/feeds/videos.xml?channel_id=UC0398rTdnjLI1V_QypTEP4g ! video
|
||||
https://www.youtube.com/feeds/videos.xml?playlist_id=PLCKZKxlikAKzhux_uS3BZgejHhYk8yOYO ! video
|
||||
https://www.youtube.com/feeds/videos.xml?channel_id=UCPeHT7xKjaw_-8hHW0GEXLg ! video
|
||||
https://www.youtube.com/feeds/videos.xml?channel_id=UCD9L1HvpYpmZ8rrXABARCRQ ! video
|
||||
https://www.youtube.com/feeds/videos.xml?channel_id=UCONH73CdRXUjlh3-DdLGCPw ! video
|
||||
https://herohero.co/services/functions/rss-feed?token=eyJhbGciOiJSUzI1NiJ9.eyJ1IjoiYWpzbHV6YnlsdXh1dnlueSIsImMiOiJuYXBvdGl0a3V6d3VhdWhvZCIsInQiOjE2ODU2MDk1ODl9.LfJHvtdm4fPq25NCfoC5ZU6cPmZLRjXO2Xhl6fcG78j-8tjatznyBDQdKwKiMfdQMKK9peOkYAKyIXTBvjBBN9XJ9CKoOnAfIyHiBlyo200TWeG3Ll37U8LRN7So4npT4-Qr_FzZGSMYO_ispVL6Gj2HYfwYORq6-1t78v9k5Ke7up-w4aM4-jUXD3_Zdsu70jJV5-fEAM11pgkfh8HydW9vm_MvkZ1q1DSIRlZR8jQNQZgGWeYMjzF9owD00TQGUGsXGNH0lit-IhFX9_VFqG5so5i6ugv8AyCJK7g3B59YV6TsWVANtWN5NB_B3f-TXSE4Cs7tOZrU0riVxI-4Ew ! video
|
||||
https://www.youtube.com/feeds/videos.xml?channel_id=UCKlOmM_eB0nzTNiDFZibSSA !
|
||||
"query:Sakitech – Note/Update:title =~ \"(Note|Phones|phones)\" and title !~ \"(Wallpaper|wallpaper)\" and rssurl == \"https://www.youtube.com/feeds/videos.xml?channel_id=UCKlOmM_eB0nzTNiDFZibSSA\"" video
|
||||
"exec:~/.newsboat/html2rss-streamCZ.mjs 'Kokoti na neděli' 'https://www.stream.cz/kokoti-na-nedeli'" ! video
|
||||
"exec:~/.newsboat/html2rss-streamCZ.mjs 'Šťastné pondělí' 'https://www.stream.cz/stastne-pondeli'" !
|
||||
"query:Šťastné pondělí:title =~ \"Šťastné pondělí\" and feedtitle == \"Šťastné pondělí\"" video
|
||||
https://www.mall.tv/rssfeed/mikyrova-uzasna-pout-internetem ! video
|
||||
"query:📹:tags # \"video\""
|
||||
|
||||
https://nitter.cz/spreadmastodon/rss
|
||||
|
||||
https://www.mfcr.cz/cs/rss/vydali-jsme-k-hospodareni-statu ! stát
|
||||
https://www.sporicidluhopisycr.cz/cs/rss/aktuality ! stát
|
||||
https://nitter.cz/gov_cz/rss ! stát
|
||||
http://www.vlada.cz/cs/urad/RSS/rss.xml ! stát
|
||||
https://mastodonczech.cz/@SpravedlnostCZ.rss ! stát
|
||||
https://zpravobot.news/@NUKIB_CZ.rss ! stát
|
||||
https://www.ceskezajmy.eu/feed/ ! stát
|
||||
https://poladprahu.cz/category/novinky/feed/ ! stát
|
||||
https://sdilenedomy.cz/feed/ ! stát
|
||||
@ -27,18 +23,25 @@ https://sdilenedomy.cz/feed/ ! stát
|
||||
|
||||
https://www.irozhlas.cz/rss/irozhlas ! news
|
||||
https://denikn.cz/feed?ref=inc ! news
|
||||
# Voxpot Klub
|
||||
https://kill-the-newsletter.com/feeds/qghk07pleeqa2hiy6054.xml ! news
|
||||
https://www.voxpot.cz/feed/ ! news
|
||||
https://www.investigace.cz/feed/ ! news
|
||||
# PageNotFound.CZ
|
||||
https://kill-the-newsletter.com/feeds/rblo6you9l4fpbgs3i53.xml ! news
|
||||
https://gitea.jaandrle.cz/jaandrle/pagenotfound-cli/raw/branch/main/rss.xml
|
||||
"query:📰👋:tags # \"news\""
|
||||
|
||||
https://denikn.cz/veda/feed?ref=inc ! news/science
|
||||
"query:Petr Koubský:author = \"Petr Koubský\"" news/science
|
||||
https://vedator.org/feed/ ! news/science
|
||||
# TODO: https://www.threads.net/@vedator_cz
|
||||
http://feeds.feedburner.com/Backreaction ! news/science
|
||||
https://www.osel.cz/rss/rss.php ! news/science
|
||||
https://news.mit.edu/rss/feed ! news/science
|
||||
https://news.mit.edu/rss/research ! news/science
|
||||
https://nautil.us/feed/ ! news/science
|
||||
https://nitter.cz/PatrikKorenar/rss ! news/science
|
||||
# ? tw PatrikKorenar → patreon, https://www.instagram.com/patrikkorenar
|
||||
"query:📰🔬:tags # \"news/science\""
|
||||
|
||||
https://www.lupa.cz/rss/clanky/ ! news/tech
|
||||
@ -50,6 +53,8 @@ https://www.vzhurudolu.cz/rss ! news/tech
|
||||
https://anuradha.hashnode.dev/rss.xml ! news/tech
|
||||
https://lea.verou.me/feed.xml ! news/tech
|
||||
https://developer.mozilla.org/en-US/blog/rss.xml ! news/tech
|
||||
# mozilla.ai
|
||||
https://kill-the-newsletter.com/feeds/9a4r1e63xui0n5ozxs3j.xml ! news/tech
|
||||
https://www.omgubuntu.co.uk/feed ! news/tech
|
||||
https://servis.idnes.cz/rss.aspx?c=technet ! news/tech
|
||||
"query:📰💻💡:tags # \"news/tech\""
|
||||
@ -66,118 +71,75 @@ https://lemmy.ml/feeds/c/kde.xml?sort=Active ! lemmy
|
||||
"query:📰👋💻💡 – Lemmy:tags # \"lemmy\""
|
||||
|
||||
https://github.com/jordwalke.atom ! twitter/α
|
||||
# https://nitter.cz/ell2cz/rss ! twitter/α
|
||||
# https://nitter.cz/fieldsofmoab/rss ! twitter/α
|
||||
# https://nitter.cz/cztomsik/rss ! twitter/α
|
||||
# https://nitter.cz/sw_samuraj/rss ! twitter/α
|
||||
# https://nitter.cz/AndroidDev/rss ! twitter/α
|
||||
# https://nitter.cz/EduardStula/rss ! twitter/α
|
||||
# https://nitter.cz/ubuntu_unity/rss ! twitter/α → ?https://ubuntuunity.org/blog/
|
||||
https://gts.eilhart.cz/@kayla/feed.rss ! twitter/α
|
||||
# TODO: https://www.threads.net/@annie.tumova
|
||||
# TODO: https://www.threads.net/@filip.titlbach
|
||||
https://www.youtube.com/feeds/videos.xml?channel_id=UCVHFbqXqoYvEWM1Ddxl0QDg ! twitter/α_hide
|
||||
"query:#TheAndroidShow:title =~ \"^#TheAndroidShow\" and rssurl == \"https://www.youtube.com/feeds/videos.xml?channel_id=UCVHFbqXqoYvEWM1Ddxl0QDg\"" twitter/α
|
||||
# TODO: https://ubuntuunity.org/blog/
|
||||
https://blog.neon.kde.org/feed/ ! twitter/α
|
||||
https://undinealmani.com/feed/ ! twitter/α
|
||||
# https://nitter.cz/erikengheim/rss ! twitter/α
|
||||
# https://nitter.cz/LeaVerou/rss ! twitter/α
|
||||
# https://nitter.cz/jpschroeder/rss ! twitter/α
|
||||
# https://nitter.cz/machal/rss ! twitter/α
|
||||
# https://nitter.cz/devgirlFL/rss ! twitter/α
|
||||
# https://nitter.cz/maxiorel/rss ! twitter/α
|
||||
# https://nitter.cz/firt/rss ! twitter/α
|
||||
https://princiya.com/newblog/feeds/all.atom.xml ! twitter/α
|
||||
https://techhub.social/@erikengheim.rss ! twitter/α
|
||||
https://github.com/justin-schroeder.atom ! twitter/α
|
||||
# TODO: @jpschroeder@fosstodon.org
|
||||
https://mastodon.social/@firt.rss ! twitter/α
|
||||
https://princiya.com/feed/ ! twitter/α
|
||||
https://davidwalsh.name/feed ! twitter/α
|
||||
# https://nitter.cz/jakubvrana/rss ! twitter/α
|
||||
https://jecas.cz/rss ! twitter/α
|
||||
# JanKoWeb geekovo zdrojak
|
||||
"query:📰👋💻💡 – Twitter/α:tags # \"twitter/α\""
|
||||
|
||||
# https://nitter.cz/Zeptej_se_vedce/rss ! twitter/mixed
|
||||
# https://nitter.cz/Olinium42/rss ! twitter/mixed
|
||||
#
|
||||
https://nitter.cz/narodnitymzen/rss ! twitter/mixed
|
||||
# https://nitter.cz/Julianne_SF/rss ! twitter/α
|
||||
#!
|
||||
https://nitter.cz/_Case/rss ! twitter/α
|
||||
#!
|
||||
https://nitter.cz/olgarichterova/rss ! twitter/mixed
|
||||
# https://nitter.cz/eicul/rss ! twitter/mixed
|
||||
# https://nitter.cz/CO2IN/rss ! twitter/mixed
|
||||
#
|
||||
https://nitter.cz/Iluminator_cz/rss ! twitter/mixed
|
||||
# TODO: https://www.threads.net/@Zeptej_se_vedce
|
||||
# TODO: https://www.threads.net/@oliniumchemistry
|
||||
# TODO: https://www.threads.net/@narodnitymzen
|
||||
https://mindly.social/@adrianacerna.rss ! twitter/mixed
|
||||
https://olgarichterova.cz/feed/ ! twitter/mixed
|
||||
https://faktaoklimatu.cz/feed.xml ! twitter/mixed
|
||||
#?
|
||||
https://nitter.cz/anna_gumplova/rss ! twitter/mixed
|
||||
#?
|
||||
https://nitter.cz/DearAbbyHansen/rss ! twitter/mixed
|
||||
# https://nitter.cz/FZU_AVCR/rss ! twitter/mixed
|
||||
#!
|
||||
https://nitter.cz/_A_d_e_l_k_a_/rss ! twitter/mixed
|
||||
#!
|
||||
https://nitter.cz/TGuthJarkovsky/rss ! twitter/mixed
|
||||
# https://nitter.cz/ClaireAccendit/rss ! twitter/mixed
|
||||
# https://nitter.cz/PavlaHub/rss ! twitter/mixed
|
||||
# https://nitter.cz/laurencikova_k/rss ! twitter/mixed
|
||||
# https://popculturedetective.tumblr.com/rss twitter/mixed
|
||||
#!
|
||||
https://nitter.cz/dan_prokop/rss ! twitter/mixed
|
||||
https://www.paqresearch.cz/blog-feed.xml ! twitter/mixed
|
||||
#!
|
||||
https://nitter.cz/danusenerudova/rss ! twitter/mixed
|
||||
#!
|
||||
https://nitter.cz/Akademie_ved_CR/rss ! twitter/mixed
|
||||
#!
|
||||
https://nitter.cz/glacier_ecology/rss ! twitter/mixed
|
||||
https://www.youtube.com/feeds/videos.xml?channel_id=UCtYxnvekc2-3P74TdLx0srQ ! twitter/mixed
|
||||
# https://genderaveda.cz/
|
||||
https://kill-the-newsletter.com/feeds/c6e1z94wpw0eds67.xml ! twitter/mixed
|
||||
# FZU_AVCR
|
||||
https://kill-the-newsletter.com/feeds/39xfn7p1cvf8dif4.xml ! twitter/mixed
|
||||
# AVCR
|
||||
https://kill-the-newsletter.com/feeds/5tww0ecg9y4twnxz.xml ! twitter/mixed
|
||||
https://mastodonczech.cz/@ewajelinek.rss ! twitter/mixed
|
||||
# TODO: https://www.threads.net/@claireklingenberg
|
||||
# TODO: https://www.threads.net/@pavlahubalkova
|
||||
# TODO: https://www.threads.net/@popdetective
|
||||
https://zpravobot.news/@dan_prokop.rss ! twitter/mixed
|
||||
https://www.paqresearch.cz/studie-a-clanky/rss/ ! twitter/mixed
|
||||
https://archetypal.cz/feed/ ! twitter/mixed
|
||||
# https://nitter.cz/MarieHermanova/rss ! twitter/mixed
|
||||
# https://nitter.cz/NKC_CZ/rss ! twitter/mixed
|
||||
#!
|
||||
https://nitter.cz/lkristoufek/rss ! twitter/mixed
|
||||
# https://nitter.cz/OSAliance/rss ! twitter/mixed
|
||||
# https://nitter.cz/Madla_G/rss ! twitter/mixed
|
||||
# https://nitter.cz/matfyz/rss ! twitter/mixed
|
||||
#!
|
||||
https://nitter.cz/Mitokochan/rss twitter/mixed
|
||||
# TODO: https://www.threads.net/@mariehermanova
|
||||
# Sociologicky
|
||||
https://kill-the-newsletter.com/feeds/xmub9gn72ecekvbi.xml ! twitter/mixed
|
||||
https://www.mimoagendu.cz/rss/ ! twitter/mixed
|
||||
# https://nitter.cz/malyvedec/rss ! twitter/mixed
|
||||
#!
|
||||
https://nitter.cz/kasikp/rss ! twitter/mixed
|
||||
# https://nitter.cz/CERN/rss ! twitter/mixed
|
||||
# https://nitter.cz/josefslerka/rss ! twitter/mixed
|
||||
# https://nitter.cz/hassmanm/rss ! twitter/mixed
|
||||
#!
|
||||
https://nitter.cz/marenamat/rss ! twitter/mixed
|
||||
# https://nitter.cz/traintravels42/rss ! twitter/mixed
|
||||
https://nitter.cz/JulieMontek/rss ! twitter/mixed
|
||||
#
|
||||
https://nitter.cz/bara_soukup/rss ! twitter/mixed
|
||||
# TODO: https://www.threads.net/@barasoukup
|
||||
# PulseofEuropeCZ KohoVolitEU
|
||||
"query:📰👋💻💡 – Twitter/mixed:tags # \"twitter/mixed\""
|
||||
|
||||
https://us8.campaign-archive.com/feed?u=5ec4c91d59d1b26aefb919e61&id=2ebe3120ac ! newsletters
|
||||
# UX that actually works in 3 minutes or less
|
||||
https://kill-the-newsletter.com/feeds/mx8wi1fifxu6scj8.xml ! newsletters
|
||||
# Lékaři bez hranic
|
||||
https://kill-the-newsletter.com/feeds/9l096daq56dxjw3z.xml ! newsletters
|
||||
https://denikn.cz/autor/toman/feed/ ! newsletters
|
||||
https://denikn.cz/tag/vylety-n/feed/ ! newsletters
|
||||
https://denikn.cz/tag/evropska-unie/feed/ ! newsletters
|
||||
"query:🗞️📰💡 – Newsletters:tags # \"newsletters\""
|
||||
|
||||
# https://nitter.cz/randomMDN/rss dev/servises
|
||||
# "exec:randomMDN rss --limit 3" dev/servises
|
||||
https://botsin.space/@randomMDN.rss dev/servises
|
||||
https://github.com/evanw/esbuild/releases.atom ! dev/servises
|
||||
https://bun.sh/rss.xml ! dev/servises
|
||||
https://www.githubstatus.com/history.rss ! dev/servises
|
||||
# https://nitter.cz/GitHubSecurity/rss ! dev/servises
|
||||
https://developer.apple.com/news/rss/news.rss "~Apple Dev News" dev/servises
|
||||
# https://nitter.cz/JetBrains_Fleet/rss ! dev/servises → ?https://blog.jetbrains.com/feed/
|
||||
# https://nitter.cz/NativeScript/rss ! dev/servises
|
||||
# https://nitter.cz/sveltejs/rss ! dev/servises
|
||||
# https://nitter.cz/github/rss ! dev/servises
|
||||
https://cordova.apache.org/feed.xml ! twitter/α
|
||||
https://www.mozilla.cz/feed/ ! twitter/α
|
||||
#! https://nitter.cz/janovsky/rss ! twitter/α
|
||||
# https://www.githubstatus.com/history.rss ! dev/servises
|
||||
"query:⌨🖱:tags # \"dev/servises\""
|
||||
|
||||
https://github.com/mdn.atom ! dev/github
|
||||
# Charles Games
|
||||
https://kill-the-newsletter.com/feeds/spatxxuabdy4yboqeenu.xml ! dev/github
|
||||
https://github.com/LeaVerou.atom ! dev/github
|
||||
https://github.com/susieward/witchly-js/commits/main.atom ! dev/github
|
||||
https://github.com/staltz.atom ! dev/github
|
||||
@ -195,7 +157,6 @@ https://manipulatori.cz/feed/ ! desinfo
|
||||
https://n3wjack.net/feed/ ! blogs
|
||||
https://boundedlyrational.substack.com/feed ! blogs
|
||||
https://blog.eischmann.cz/feed/ ! blogs
|
||||
https://www.zoonpolitikon.cz/feed/ ! blogs
|
||||
https://blog.zvestov.cz/feed.xml ! blogs
|
||||
https://www.pirati.cz/feed.xml ! blogs
|
||||
https://www.kdu.cz/system/rss ! blogs
|
||||
@ -211,15 +172,51 @@ https://www.edna.cz/doctor-who/rss/ ! news/info
|
||||
"query:🗞 💰📱:tags # \"news/info\""
|
||||
|
||||
http://feeds.bbci.co.uk/news/world/rss.xml ! news/rest
|
||||
# https://feeds.a.dj.com/rss/RSSWorldNews.xml ! news/rest news/rest-wsj
|
||||
# https://feeds.a.dj.com/rss/RSSWSJD.xml ! news/rest news/rest-wsj
|
||||
https://domaci.hn.cz/?m=rss ! news/rest
|
||||
https://ekonom.cz/?m=rss ! news/rest
|
||||
https://vikend.hn.cz/?m=rss ! news/rest
|
||||
https://procne.hn.cz/?m=rss ! news/rest
|
||||
http://casopisargument.cz/?feed=rss2 ! news/rest
|
||||
"query:↓ The Wall Street Journal:tags # \"news/rest-wsj\""
|
||||
"query:🗞 🌐⏩:tags # \"news/rest\""
|
||||
|
||||
https://www.seznamzpravy.cz/rss ! rest
|
||||
"query:🗞 💤:tags # \"rest\""
|
||||
|
||||
# TODO: https://www.threads.net/@pirativanbartos
|
||||
https://mastodonczech.cz/@jantvrdon.rss ! mastodon/neak
|
||||
https://mastodonczech.cz/@eliska.rss ! mastodon/neak
|
||||
https://mastodon.rozhlas.cz/@kristinarohackova.rss ! mastodon/neak
|
||||
https://mastodon.social/@Prof_Mirya.rss ! mastodon/neak
|
||||
https://mastodonczech.cz/@NAKIT.rss ! mastodon/neak
|
||||
https://mastodonczech.cz/@strakovka.rss ! mastodon/neak
|
||||
https://mastodonczech.cz/@SpravedlnostCZ.rss ! mastodon/neak
|
||||
https://witter.cz/@petrinfinite.rss ! mastodon/neak
|
||||
https://mastodonczech.cz/@danusenerudova.rss ! mastodon/neak
|
||||
# TODO: https://www.threads.net/@danusenerudova
|
||||
https://witter.cz/@Apolenarychlikova.rss ! mastodon/neak
|
||||
# TODO: https://www.threads.net/@apolenarychlikova
|
||||
https://mastodonczech.cz/@marekl.rss ! mastodon/neak
|
||||
https://mastodon.social/@spreadmastodon.rss ! mastodon/neak
|
||||
https://mastodon.pirati.cz/@OlgaRichterova.rss ! mastodon/neak
|
||||
# TODO: https://www.threads.net/@olga_piratka_richterova
|
||||
https://witter.cz/@zeleni.rss ! mastodon/neak
|
||||
https://mastodonczech.cz/@Lenislavka.rss ! mastodon/neak
|
||||
https://witter.cz/@guth.rss ! mastodon/neak
|
||||
# TODO: https://www.threads.net/@tgjarkovsky
|
||||
https://mastodonczech.cz/@madla.rss ! mastodon/neak
|
||||
# TODO: https://www.threads.net/@madla__g
|
||||
https://witter.cz/@malyvedec.rss ! mastodon/neak
|
||||
# TODO: https://www.threads.net/@malyvedec
|
||||
"query:🗞 🐘:tags # \"mastodon/neak\""
|
||||
|
||||
|
||||
# TW bez náhrady:
|
||||
# fieldsofmoab, machal, devgirlFL,
|
||||
# jakubvrana, _Case, eicul,
|
||||
# CO2IN, Iluminator_cz, DearAbbyHansen,
|
||||
# _A_d_e_l_k_a_, ClaireAccendit, laurencikova_k,
|
||||
# PopDetective, dan_prokop, danusenerudova,
|
||||
# glacier_ecology, MarieHermanova, lkristoufek,
|
||||
# matfyz, Mitokochan, kasikp,
|
||||
# CERN, josefslerka, traintravels42,
|
||||
# JulieMontek, bara_soukup, janovsky
|
||||
|
5
.profile
5
.profile
@ -35,3 +35,8 @@ export JAVA_HOME="/usr/lib/jvm/java-8-openjdk-amd64/"
|
||||
PATH=/home/jaandrle/.local/share/umake/bin:$PATH
|
||||
|
||||
[ -f /home/jaandrle/.bash/.profile_androidsdk ] && . /home/jaandrle/.bash/.profile_androidsdk
|
||||
|
||||
|
||||
# Added by Toolbox App
|
||||
export PATH="$PATH:/home/jaandrle/.local/share/JetBrains/Toolbox/scripts"
|
||||
|
||||
|
@ -1,3 +1,3 @@
|
||||
execute "source ".system("mdexpr-agenda vim 2> /dev/null")
|
||||
command MDEXPRclose lclose | lexpr []
|
||||
call scommands#map('m', 'MDEXPR', "n")
|
||||
cabbrev žm feedkeys("MDEXPR")
|
||||
|
@ -9,9 +9,13 @@ let g:user_tips_list= [
|
||||
\ ':set foldopen-=search',
|
||||
\ 'Buffer info → <c-g> g<c-g> … :map <buffer><tab>',
|
||||
\ 'Rename file → :saveas * | :silent !rm # | :bw #',
|
||||
\ 'packadd cfilter',
|
||||
\ 'packadd cfilter justify',
|
||||
\ 'Next word location → ]I [I ]<c-I> [<c-I> … <leader>]I <leader>[I',
|
||||
\ ':w !sudo tee > /dev/null %',
|
||||
\ 'v`]o`[ visual last change — https://www.reddit.com/r/vim/comments/ypt6uf/comment/ivl68xu/?utm_source=share&utm_medium=web2x&context=3',
|
||||
\ ':exec ''argdo bw'' | %argdelete',
|
||||
\ 'changes g, g; || jumps ^i ^o || marks g`…',
|
||||
\ 'set foldmethod=marker/indent foldlevel=i foldnestmax=j',
|
||||
\ '`0·`"·`.·`` … last exit·edit·change·pre-jump … also g''*',
|
||||
\ 'q: q? q/ … @: ?<cr> /<cr> :&<cr> , ;',
|
||||
\ '<c-n><c-p> <c-x><c-l> <c-x><c-f> … :h ins-completion',
|
||||
|
83
.vimrc
83
.vimrc
@ -1,10 +1,10 @@
|
||||
""" VIM config file | Jan Andrle | 2024-02-07 (VIM >=8.1)
|
||||
""" VIM config file | Jan Andrle | 2024-07-10 (VIM >=8.1)
|
||||
"" #region B – Base
|
||||
scriptencoding utf-8 | set encoding=utf-8
|
||||
let $BASH_ENV = "~/.bashrc"
|
||||
set runtimepath^=~/.vim/bundle/*
|
||||
packadd! matchit
|
||||
set hidden
|
||||
" set hidden
|
||||
|
||||
set title
|
||||
colorscheme codedark
|
||||
@ -13,6 +13,7 @@
|
||||
set belloff=esc
|
||||
set confirm
|
||||
set guioptions-=T
|
||||
set shortmess-=i
|
||||
|
||||
cabbrev <expr> %PWD% execute('pwd')
|
||||
cabbrev <expr> %CD% fnameescape(expand('%:p:h'))
|
||||
@ -48,25 +49,15 @@
|
||||
let g:vifm_replace_netrw= 1 | let g:loaded_netrw= 1 | let g:loaded_netrwPlugin= 1 " this line needs to be commented to let vim dowmload spelllangs!!! … see http://jdem.cz/fgyw25
|
||||
""" #endregion BB
|
||||
"" #endregion B
|
||||
"" #region H – Helpers + remap 'sS' (primary ss, see `vim-scommands`)
|
||||
nmap sh :execute 'ALTredir :map s \<bar> map '.mapleader.' \<bar> map § \<bar> map ů \<bar> map ; \<bar> map U \<bar> map ž'<cr>:g/^$/d<cr>:g/^v s/m$<cr>úgg
|
||||
call scommands#map('s', 'CL', "n,v")
|
||||
"" #region H – Helpers
|
||||
command! -nargs=? CLscratch 10split | enew | setlocal buftype=nofile bufhidden=wipe noswapfile nobuflisted | if <q-args>!='' | execute 'normal "'.<q-args>.'p' | endif | nnoremap <buffer> ;q :q<cr>
|
||||
|
||||
call scommands#map('S', 'SET', "n,v")
|
||||
call scommands#map('a', 'ALT', "n,V")
|
||||
cabbrev ALTR ALTredrawSyntax
|
||||
set grepprg=LC_ALL=C\ grep\ -nrsH
|
||||
command! -nargs=0
|
||||
\ ALTredrawSyntax edit | exec 'normal `"' | exec 'set ft='.&ft
|
||||
command! -complete=command -bar -range -nargs=+
|
||||
\ ALTredir call jaandrle_utils#redir(0, <q-args>, <range>, <line1>, <line2>)
|
||||
command! -nargs=+ -complete=file_in_path -bar
|
||||
\ ALTgrep cgetexpr jaandrle_utils#grep(<f-args>) | call setqflist([], 'a', {'title': ':' . g:jaandrle_utils#last_command})
|
||||
command! -nargs=+ -complete=file_in_path -bar
|
||||
\ ALTlgrep lgetexpr jaandrle_utils#grep(<f-args>) | call setloclist(0, [], 'a', {'title': ':' . g:jaandrle_utils#last_command})
|
||||
command! -nargs=0
|
||||
\ ALTargsBWQA execute 'argdo bw' | %argdelete
|
||||
|
||||
let g:quickfix_len= 0
|
||||
function! QuickFixStatus() abort
|
||||
@ -99,7 +90,7 @@
|
||||
"" #endregion H
|
||||
"" #region SLH – Status Line + Command Line + History (general) + Sessions + File Update, …
|
||||
set showcmd cmdheight=2 showmode
|
||||
set wildmenu wildoptions=pum
|
||||
set wildmenu wildoptions=pum,fuzzy
|
||||
"" wildmode=list:longest,list:full " Tab autocomplete in command mode
|
||||
|
||||
cabbrev wbw w<bar>bw
|
||||
@ -144,13 +135,12 @@
|
||||
set pastetoggle=<F2> | nnoremap <F2> :set invpaste paste?<CR>
|
||||
nnoremap <silent> <leader>" :call jaandrle_utils#copyRegister()<cr>
|
||||
|
||||
nmap <expr> š buffer_number("#")==-1 ? "sš<cr>" : "\<c-^>"
|
||||
nmap s3 :buffers<cr>:b<space>
|
||||
nmap sš :CtrlPBuffer<cr>
|
||||
nmap č sš
|
||||
nmap <expr> š buffer_number("#")==-1 ? "\<leader>š<cr>" : "\<c-^>"
|
||||
nmap <leader>3 :buffers<cr>:b<space>
|
||||
nmap <leader>š :CtrlPBuffer<cr>
|
||||
nmap č <leader>š
|
||||
let g:ctrlp_map = 'ě'
|
||||
command! -nargs=? SETctrlp execute 'nnoremap '.g:ctrlp_map.' :CtrlP <args><cr>'
|
||||
call scommands#map(g:ctrlp_map, 'CtrlP', "n")
|
||||
let g:ctrlp_clear_cache_on_exit = 0
|
||||
let g:ctrlp_prompt_mappings= {
|
||||
\ 'ToggleType(1)': ['<c-up>'],
|
||||
@ -173,7 +163,6 @@
|
||||
set wildignore+=*.pdf,*.psd
|
||||
|
||||
nmap <leader>e :Vifm<cr>
|
||||
call scommands#map('e', 'Vifm', "n")
|
||||
nnoremap gx :silent exec "!xdg-open '".shellescape(substitute(expand('<cfile>'), '?', '\\?', ''), 1)."'" \| redraw!<cr>
|
||||
vnoremap gx :silent exec "!xdg-open '".shellescape(substitute(mini_enhancement#selectedText(), '?', '\\?', ''), 1)."'" \| redraw!<cr>
|
||||
"" #endregion FOS
|
||||
@ -181,13 +170,9 @@
|
||||
set hlsearch incsearch " highlight search, start when typing
|
||||
if maparg('<C-L>', 'n') ==# ''
|
||||
nnoremap <silent> <c-l> :nohlsearch<c-r>=has('diff')?'<bar>diffupdate':''<cr><cr><c-l> | endif
|
||||
|
||||
call scommands#map('n', 'NAV', "n")
|
||||
command! NAVjumps call jaandrle_utils#gotoJumpChange('jump')
|
||||
command! NAVchanges call jaandrle_utils#gotoJumpChange('change')
|
||||
command! NAVmarks call jaandrle_utils#gotoMarks()
|
||||
|
||||
let g:markbar_persist_mark_names = v:false
|
||||
let g:markbar_cache_with_hidden_buffers = v:false " last buffers are reopened as hidden https://github.com/Yilin-Yang/vim-markbar/blob/9f5a948d44652074bf2b90d3da6a400d8a369ba5/doc/vim-markbar.txt#L136
|
||||
nmap <Leader>m <Plug>ToggleMarkbar
|
||||
"" #endregion EN
|
||||
"" #region EA – Editing adjustment + Syntax + White chars + Folds
|
||||
@ -200,7 +185,7 @@
|
||||
let g:markdown_fenced_languages= [ 'javascript', 'js=javascript', 'json', 'html', 'php', 'bash', 'vim', 'vimscript=javascript', 'sass' ]
|
||||
augroup conceal
|
||||
autocmd!
|
||||
au FileType markdown
|
||||
au FileType markdown
|
||||
\ syn region markdownLink matchgroup=markdownLinkDelimiter start="(" end=")" contains=markdownUrl keepend contained conceal
|
||||
\| syn region markdownLinkText matchgroup=markdownLinkTextDelimiter start="!\=\[\%(\%(\_[^][]\|\[\_[^][]*\]\)*]\%( \=[[(]\)\)\@=" end="\]\%( \=[[(]\)\@=" nextgroup=markdownLink,markdownId skipwhite contains=@markdownInline,markdownLineStart concealends
|
||||
au FileType markdown,json
|
||||
@ -250,14 +235,10 @@
|
||||
nnoremap <s-k> a<cr><esc>
|
||||
for l in [ 'y', 'p', 'P', 'd' ] | for m in [ 'n', 'v' ]
|
||||
execute m.'noremap <leader>'.l.' "+'.l | endfor | endfor
|
||||
" ik ak (last change pseudo-text objects) – src: https://www.reddit.com/r/vim/comments/ypt6uf/comment/ivl68xu/?utm_source=share&utm_medium=web2x&context=3
|
||||
xnoremap ik `]o`[
|
||||
onoremap ik :<C-u>normal vik<cr>
|
||||
onoremap ak :<C-u>normal vikV<cr>
|
||||
" FOLDS
|
||||
command! -nargs=0 SETFOLDregions set foldmethod=marker
|
||||
command! -nargs=1 SETFOLDindent set foldmethod=indent | let &foldlevel=<q-args> | let &foldnestmax=<q-args>+1
|
||||
command! -nargs=* SETFOLDindents set foldmethod=indent | let &foldlevel=split(<q-args>, ' ')[0] | let &foldnestmax=split(<q-args>, ' ')[1]
|
||||
" TODO DEL: FOLDS
|
||||
" TODO DEL: command! -nargs=0 SETFOLDregions set foldmethod=marker
|
||||
" TODO DEL: command! -nargs=1 SETFOLDindent set foldmethod=indent | let &foldlevel=<q-args> | let &foldnestmax=<q-args>+1
|
||||
" TODO DEL: command! -nargs=* SETFOLDindents set foldmethod=indent | let &foldlevel=split(<q-args>, ' ')[0] | let &foldnestmax=split(<q-args>, ' ')[1]
|
||||
set foldmarker=#region,#endregion
|
||||
" SAVE VIEW
|
||||
set viewoptions=cursor,folds
|
||||
@ -268,7 +249,6 @@
|
||||
augroup END
|
||||
"" #endregion EA
|
||||
"" #region GIT
|
||||
call scommands#map('g', 'GIT', "n,V")
|
||||
function s:gitCompletion(_, CmdLine, __)
|
||||
let l:cmd= a:CmdLine->split()
|
||||
let l:cmd_start= l:cmd[0]
|
||||
@ -306,7 +286,7 @@
|
||||
\ GITblameThis GitMessenger
|
||||
"" #endregion GIT
|
||||
"" #region COC – COC and so on, compilers, code/commands completions
|
||||
let g:coc_global_extensions= ['coc-css', 'coc-docthis', 'coc-emmet', 'coc-emoji', 'coc-eslint', 'coc-gitmoji', 'coc-html', 'coc-json', 'coc-marketplace', 'coc-phpls', 'coc-sh', 'coc-snippets', 'coc-styled-components', 'coc-svg', 'coc-tabnine', 'coc-tsserver']
|
||||
let g:coc_global_extensions= ['coc-css', 'coc-docthis', 'coc-emmet', 'coc-emoji', 'coc-pretty-ts-errors', 'coc-eslint', 'coc-gitmoji', 'coc-html', 'coc-json', 'coc-marketplace', 'coc-phpls', 'coc-sh', 'coc-snippets', 'coc-styled-components', 'coc-svg', 'coc-tabnine', 'coc-tsserver']
|
||||
" https://github.com/antonk52/cssmodules-language-server
|
||||
call coc#config('languageserver.cssmodules', {
|
||||
\ "command": "cssmodules-language-server",
|
||||
@ -343,7 +323,7 @@
|
||||
endif
|
||||
endfunction
|
||||
|
||||
set completeopt=menuone,preview,noinsert,noselect
|
||||
set completeopt=menuone,longest,preview "longest vs ,noinsert,noselect
|
||||
inoremap <silent><expr> <F1> coc#pum#visible() ? coc#pum#confirm() : coc#refresh()
|
||||
set wildcharm=<f1>
|
||||
inoremap <silent><expr> <tab> coc#pum#visible() ? coc#pum#next(1) : <sid>check_back_space() ? "\<tab>" : coc#refresh()
|
||||
@ -356,11 +336,13 @@
|
||||
nmap <silent> gd <Plug>(coc-definition)
|
||||
nmap <leader>/ :CocSearch
|
||||
nmap <leader>? <leader>/
|
||||
command! -bang NAVdiagnostic call CocActionAsync('diagnostic'.( "<bang>" == '!' ? 'Previous' : 'Next' ))
|
||||
command! NAVdefinition call CocActionAsync('jumpDefinition')
|
||||
command! NAVtype call CocActionAsync('jumpTypeDefinition')
|
||||
command! NAVimplementation call CocActionAsync('jumpImplementation')
|
||||
command! NAVreferences call CocActionAsync('jumpReferences')
|
||||
command! -nargs=* -complete=customlist,<sid>SCommandCocActionComplete CocAction call CocActionAsync(<f-args>)
|
||||
function s:SCommandCocActionComplete(argLead, cmdLine, cursorPos)
|
||||
return readfile(expand('~/.vim/pack/coc/start/coc.nvim/doc/tags'), 'r')
|
||||
\->filter('v:val =~ ''^CocAction''')
|
||||
\->map({ k, v -> strpart(v, 11, stridx(v, ')')-12) })
|
||||
\->filter({ k, v -> v =~ a:argLead && !v->empty() })
|
||||
endfunction
|
||||
" navigate diagnostics, use `:CocDiagnostics` to get all diagnostics of current buffer in location list.
|
||||
nnoremap <silent> gh :call <sid>show_documentation(expand("<cword>"))<cr>
|
||||
vnoremap <silent> gh :<c-u>call <sid>show_documentation(mini_enhancement#selectedText())<cr>
|
||||
@ -376,11 +358,13 @@
|
||||
vnoremap <silent><nowait><expr> <C-b> coc#float#has_scroll() ? coc#float#scroll(0) : "\<C-b>"
|
||||
endif
|
||||
""" #endregion COCP
|
||||
command! -nargs=? SETFOLDcoc :call CocAction('fold', <f-args>)
|
||||
" TODO DEL: command! -nargs=? SETFOLDcoc :call CocAction('fold', <f-args>)
|
||||
|
||||
call scommands#map('C', 'Coc', "n,v")
|
||||
nmap sc :CocList lists<cr>
|
||||
nmap Sc :CocListResume<cr>
|
||||
command! -nargs=? CLhelpMy if <q-args>!='' | exec 'map '.<q-args> | else | call popup_notification([
|
||||
\ 'Custom mappings starting: '.mapleader.',§, ů, ;, U, ž',
|
||||
\ 'Custom commands starting: CL, SET, ALT, CtrlP, Vifm, GIT, Coc',
|
||||
\ 'Helpful commands: CocAction, CocCommand, CocList',
|
||||
\], #{ line: &lines-3, pos: 'botleft', moved: 'any', close: 'button', time: 6000 }) | endif
|
||||
nnoremap <c-g> :CLwhereami<cr>
|
||||
command! CLwhereami :call popup_notification([
|
||||
\expand('%:t').( coc#status() != "" ? '/'.CocAction("getCurrentFunctionSymbol")."\t…\t".coc#status() : '' ),
|
||||
@ -388,18 +372,13 @@
|
||||
\"Line:\t".line('.').' / '.line('$'),
|
||||
\"Column:\t".col('.').' / '.col('$'),
|
||||
\"Path:\t".expand('%:p:h')
|
||||
\], #{ line: &lines-3, pos: 'botleft', moved: 'any', close: 'button', time: 3000 })
|
||||
\], #{ line: &lines-3, pos: 'botleft', moved: 'any', close: 'button', time: 6000 })
|
||||
command! CLhelpCocPlug call feedkeys(':<c-u>help <Plug>(coc ', 'tn')
|
||||
command! CLhelpCocAction call feedkeys(':<c-u>help CocAction('' ', 'tn')
|
||||
command! CLrename call CocActionAsync('rename')
|
||||
command! CLrenameFile exec 'CocCommand workspace.renameCurrentFile'
|
||||
command! -nargs=? -bang
|
||||
\ CLreplace call feedkeys(':<c-u>'.(<q-args>==''?'.':<q-args>).'s/'.("<bang>"=='!'?mini_enhancement#selectedText():expand('<cword>')).'//cgODODOD', 'tn')
|
||||
command! CLrepeatLastChange call feedkeys('/\V<C-r>"<CR>cgn<C-a><Esc>', 'tn')
|
||||
command! CLjsdoc exec 'CocCommand docthis.documentThis'
|
||||
command! CLjshintGlobal normal yiwmm?\/\* global<cr><c-l>f*hi, p`m
|
||||
command! CLcodeactionCursor call CocActionAsync('codeAction', 'cursor')
|
||||
command! CLfixCodeQuick call CocActionAsync('doQuickfix')
|
||||
|
||||
function! AIcodeFn(range, ...) range abort
|
||||
let l:instruction = 'Hi, can you help me with ' . &filetype . 'code? Thanks in advance. I would like to: '
|
||||
|
@ -1,26 +1,27 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>Bing Image Of The Day</title>
|
||||
<style>
|
||||
body{ display: flex; flex-flow: row nowrap;
|
||||
width: 100vw; height: 100vh; overflow: hidden; margin: 0;
|
||||
}
|
||||
div{ position: relative; flex: 1; }
|
||||
img{ height: 100%; width: 100%; object-fit: contain; }
|
||||
.detail{ position: absolute; bottom: 0; left: 0; padding: .5rem 1rem;
|
||||
text-align: center; background: rgba(0, 0, 0, .35); color: whitesmoke; }
|
||||
.prev .detail{ left: initial; right: 0; }
|
||||
@media screen and (max-aspect-ratio: 16/9){
|
||||
.prev{display: none;}
|
||||
}
|
||||
</style>
|
||||
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>Bing Image Of The Day</title>
|
||||
<style>
|
||||
body{ display: flex; flex-flow: row nowrap;
|
||||
width: 100vw; height: 100vh; overflow: hidden; margin: 0;
|
||||
}
|
||||
div{ position: relative; flex: 1; }
|
||||
img{ height: 100%; width: 100%; object-fit: cover; }
|
||||
.detail{ position: absolute; bottom: 0; left: 0; padding: .5rem 1rem;
|
||||
max-width: 35ch;
|
||||
text-align: center; background: rgba(0, 0, 0, .35); color: whitesmoke; }
|
||||
.prev .detail{ left: initial; right: 0; }
|
||||
@media screen and (max-aspect-ratio: 16/9){
|
||||
.prev{display: none;}
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div class="now"> <img src="now.jpg"> <div class="detail">::now::</div> </div>
|
||||
<div class="prev"> <img src="prev.jpg"> <div class="detail">::prev::</div> </div>
|
||||
<div class="now"> <img src="now.jpg"> <div class="detail">::now::</div> </div>
|
||||
<div class="prev"> <img src="prev.jpg"> <div class="detail">::prev::</div> </div>
|
||||
</body>
|
||||
</html>
|
||||
|
73
README.md
73
README.md
@ -14,10 +14,11 @@ see for example [How to Store Dotfiles - A Bare Git Repository \| Atlassian Git
|
||||
## Files overview
|
||||
- [Bash](./.bash/README.md)
|
||||
- [Vim](./.vim/README.md)
|
||||
- [Geany](./.config/geany/README.md)
|
||||
- [Vifm](./.config/vifm/README.md)
|
||||
- [SSH](./.ssh/README.md)
|
||||
- [Newsboat](./.newsboat/README.md)
|
||||
- Git: [.gitconfig](./.gitconfig), [gh](./.config/gh/config.yml)
|
||||
- [git](./.config/git/config), [gh](./.config/gh/config.yml)
|
||||
- [KDE Neon](#kde-neon)
|
||||
- [Mozilla Firefox](./.mozilla/firefox/README.md)
|
||||
- [Bin – scripts and executables](./bin/README.md)
|
||||
@ -25,7 +26,7 @@ see for example [How to Store Dotfiles - A Bare Git Repository \| Atlassian Git
|
||||
## On a new machine
|
||||
1. install git
|
||||
1. `cd ~`
|
||||
1. `gd_branch=main`
|
||||
1. `gd_branch=main` (see also variants `main-termux`)
|
||||
1. `git clone --bare --branch $gd_branch --depth 1 --recurse-submodules --shallow-submodules git@jaandrle.cz:jaandrle/dotfiles.git ~/.dotfiles`
|
||||
1. `alias gitdotfiles='/usr/bin/git --git-dir="$HOME/.dotfiles/" --work-tree="$HOME"'`
|
||||
1. `gitdotfiles config --local status.showUntrackedFiles no`
|
||||
@ -34,23 +35,48 @@ see for example [How to Store Dotfiles - A Bare Git Repository \| Atlassian Git
|
||||
1. `gitdotfiles checkout -f`
|
||||
1. `gitdotfiles submodule update --init --recursive`
|
||||
|
||||
## KDE Neon
|
||||
- [KDE Plasma5 Fixes](https://zren.github.io/kde/)
|
||||
- Using ‘HTML Wallpaper’ (wip)
|
||||
- [Bing Image Of The Day](./Obrázky/Bing Image Of The Day/index_template.html)
|
||||
- [GNOME Keyring in KDE Plasma - JWillikers](https://www.jwillikers.com/gnome-keyring-in-kde-plasma)
|
||||
- `sudo apt install $(check-language-support)`, see [Popup Language support is incomplete](http://unix.stackexchange.com/questions/421066/ddg#421079)
|
||||
- [KDE Neon does not have an hibernation option? : kde](https://www.reddit.com/r/kde/comments/6n5m49/kde_neon_does_not_have_an_hibernation_option/dk7hd8v/)
|
||||
- [kde plasma 5 - How to use miracast as an extended desktop on Linux? - Super User](https://superuser.com/questions/1160078/how-to-use-miracast-as-an-extended-desktop-on-linux)
|
||||
- [Best tiling extensions for kwin? : kde](https://www.reddit.com/r/kde/comments/qgsv2u/best_tiling_extensions_for_kwin/?sort=new)
|
||||
- [KDE Plasma5 Fixes](https://zren.github.io/kde/)
|
||||
- [Setup git on the CLI to use 2FA with GitHub](https://gist.github.com/ateucher/4634038875263d10fb4817e5ad3d332f)
|
||||
- [G'MIC - GREYC's Magic for Image Computing: A Full-Featured Open-Source Framework for Image Processing - Main](https://gmic.eu/)
|
||||
|
||||
|
||||
## PC log (cs)
|
||||
Sekce obsahuje log změn v Tuxedo laptopu s KDE Neon.
|
||||
|
||||
- [Aloxaf/silicon: Create beautiful image of your source code.](https://github.com/Aloxaf/silicon) {DONE <2024-03-07> *utils* agenda}$
|
||||
|
||||
### KDE Neon 6.0 (22.04)
|
||||
{NEXT <2024-03-20> *tilling* *hud* *html-wallpaper* *virtual-desktop* *klipper* agenda}$
|
||||
|
||||
- mostly OK
|
||||
- [ ] Kup is missing in Settings (only restore files option is available): *investigation → report a bug*
|
||||
- [ ] !!! Event calendar widget (in progress [ALikesToCode/plasma-applet-eventcalendar at plasma-6](https://github.com/ALikesToCode/plasma-applet-eventcalendar/tree/plasma-6))
|
||||
- [ ] tilling → try to use native, try to use [zeroxoneafour/polonium: Tiling window manager for KWin 5.27](https://github.com/zeroxoneafour/polonium) (when there will be a new release)
|
||||
- [ ] WIP: hud ([uszie/plasma-hud), in KDE Plasma.](https://github.com/uszie/plasma-hud)/[Zren/plasma-hud](https://github.com/Zren/plasma-hud) still works on X11), but maybe Ctrl+Alt+i and so on is OK?
|
||||
- testing to use command palletes in programs and sets shortcuts to `ctr+;` (✓ kde programs, ✓ gimp, ✓ libreoffice, ✓ inkscape, ✓ vscode)
|
||||
- [ ] [Fingerprint reader support : r/tuxedocomputers](https://www.reddit.com/r/tuxedocomputers/comments/176fscp/fingerprint_reader_support/), still receiving “no match”
|
||||
- [ ] [Clipboard support in Wayland · Issue #5157 · vim/vim](https://github.com/vim/vim/issues/5157#issuecomment-776008833)
|
||||
- [ ] partially FIXED by update: Wayland go to sleep even the external monitor is connected (HDMI)
|
||||
- *→ seems to be this issue [438716 – Lid close leads to suspend even when external monitor is attached](https://bugs.kde.org/show_bug.cgi?id=438716)*
|
||||
- needs to keyboard/mouse imput to intterupt the go sleep process
|
||||
- [x] [PSA: How to re-enable LibreOffice integration in Plasma 6 : r/kde](https://www.reddit.com/r/kde/comments/1b9k755/psa_how_to_reenable_libreoffice_integration_in/)
|
||||
- [x] FIXED by update: ~desktop exceptionally freeze for less than a second: *investigation → report a bug*~
|
||||
- [x] FIXED by update: ~logout/poweroff dialog not showing and not working: *investigation → report a bug* … see below~
|
||||
- [x] krunner not launching → created `/usr/share/dbus-1/services/org.kde.krunner.service` (see below)
|
||||
- [x] meta+tab (last virtual desktop) → workaround [./bin/kde6-workarounds.mjs](./bin/kde6-workarounds.mjs)
|
||||
- [x] klipper (edit last item) → workaround [./bin/kde6-workarounds.mjs](./bin/kde6-workarounds.mjs)
|
||||
- [x] Active Window Control replaced with Window Title widget and its better
|
||||
- [x] FIXED by widget update: ~html wallpaper → workaround just concat images (see [./bin/§wallpaper\_BIOTD](./bin/§wallpaper_BIOTD))~
|
||||
- [x] ctrl+tab using [k0kubun/xremap: Key remapper for X11 and Wayland](https://github.com/k0kubun/xremap) and `sudo crontab -e`+`@reboot` and [./.config/xremap.yml](./.config/xremap.yml)
|
||||
|
||||
- [ ] [`npx npmkill` — Why are node_modules SO BIG 🤦♂️ #javascript #software #technology #code #webdev - YouTube](https://www.youtube.com/shorts/VgPNtow7fNM?app=desktop&si=Kl7CH3vCoyH7tqFU)
|
||||
|
||||
```bash
|
||||
qdbus org.kde.ksmserver /KSMServer org.kde.KSMServerInterface.logout 1
|
||||
Cannot find 'org.kde.KSMServerInterface.logout' in object /KSMServer at org.kde.ksmserver
|
||||
```
|
||||
[KDE Bugtracking System Main Page](https://bugs.kde.org/)
|
||||
```ini
|
||||
[D-BUS Service]
|
||||
Name=org.kde.krunner
|
||||
Exec=/usr/bin/krunner
|
||||
```
|
||||
|
||||
### KDE neon 5.26 (22.04)
|
||||
{DONE <2022-10-25 17:21> *mail* *hud* *klíčenka* agenda}$
|
||||
|
||||
@ -80,9 +106,18 @@ Sekce obsahuje log změn v Tuxedo laptopu s KDE Neon.
|
||||
|
||||
Postupováno podle návodu [Rename the `~/.local/lib/python3.8/site-packages/pkg_resources` folder to `pkg_resources_back`](https://askubuntu.com/a/1398073).
|
||||
|
||||
### kwin-tiling
|
||||
- https://gitlab.com/faho/kwin-tiling/
|
||||
|
||||
### KDE Neon
|
||||
- [KDE Plasma5 Fixes](https://zren.github.io/kde/)
|
||||
- Using ‘HTML Wallpaper’ (wip)
|
||||
- [Bing Image Of The Day](./Obrázky/Bing Image Of The Day/index_template.html)
|
||||
- [GNOME Keyring in KDE Plasma - JWillikers](https://www.jwillikers.com/gnome-keyring-in-kde-plasma)
|
||||
- `sudo apt install $(check-language-support)`, see [Popup Language support is incomplete](http://unix.stackexchange.com/questions/421066/ddg#421079)
|
||||
- [KDE Neon does not have an hibernation option? : kde](https://www.reddit.com/r/kde/comments/6n5m49/kde_neon_does_not_have_an_hibernation_option/dk7hd8v/)
|
||||
- [kde plasma 5 - How to use miracast as an extended desktop on Linux? - Super User](https://superuser.com/questions/1160078/how-to-use-miracast-as-an-extended-desktop-on-linux)
|
||||
- [Best tiling extensions for kwin? : kde](https://www.reddit.com/r/kde/comments/qgsv2u/best_tiling_extensions_for_kwin/?sort=new), https://gitlab.com/faho/kwin-tiling/
|
||||
- [KDE Plasma5 Fixes](https://zren.github.io/kde/)
|
||||
- [Setup git on the CLI to use 2FA with GitHub](https://gist.github.com/ateucher/4634038875263d10fb4817e5ad3d332f)
|
||||
- [G'MIC - GREYC's Magic for Image Computing: A Full-Featured Open-Source Framework for Image Processing - Main](https://gmic.eu/)
|
||||
|
||||
<details>
|
||||
<summary>`{… cmd}$` explanation</summary>
|
||||
|
@ -7,9 +7,9 @@
|
||||
"file_name": "github-desktop",
|
||||
"exec": "yes",
|
||||
"description": "Fork of GitHub Desktop to support various Linux distributions",
|
||||
"last_update": "2023-12-20T15:25:06Z",
|
||||
"last_update": "2024-03-31T17:49:36Z",
|
||||
"downloads": "/home/jaandrle/bin/github-desktop",
|
||||
"version": "release-3.3.6-linux3"
|
||||
"version": "release-3.3.12-linux2"
|
||||
},
|
||||
{
|
||||
"repository": "jaandrle/jaaCSS-cli",
|
||||
@ -29,9 +29,9 @@
|
||||
"group": "nondev",
|
||||
"file_name": "youtube-music",
|
||||
"exec": "yes",
|
||||
"last_update": "2024-01-05T14:44:27Z",
|
||||
"last_update": "2024-03-26T10:58:44Z",
|
||||
"downloads": "/home/jaandrle/bin/youtube-music",
|
||||
"version": "v3.2.2"
|
||||
"version": "v3.3.5"
|
||||
},
|
||||
{
|
||||
"repository": "ArchGPT/insomnium",
|
||||
@ -93,8 +93,8 @@
|
||||
{
|
||||
"repository": "dynobo/normcap",
|
||||
"name": "NormCap",
|
||||
"description": "OCR powered screen-capture tool to capture information instead of images",
|
||||
"group": "nondev",
|
||||
"description": "Switched to flatpak version | OCR powered screen-capture tool to capture information instead of images",
|
||||
"group": "skip",
|
||||
"file_name": "normcap",
|
||||
"exec": "yes",
|
||||
"last_update": "2023-12-12T22:23:37Z",
|
||||
@ -108,9 +108,9 @@
|
||||
"group": "nondev",
|
||||
"file_name": "upscayl",
|
||||
"exec": "yes",
|
||||
"last_update": "2024-01-16T09:54:25Z",
|
||||
"last_update": "2024-02-29T16:31:09Z",
|
||||
"downloads": "/home/jaandrle/bin/upscayl",
|
||||
"version": "v2.9.8"
|
||||
"version": "v2.10.0"
|
||||
},
|
||||
{
|
||||
"repository": "RasmusLindroth/tut",
|
||||
@ -141,9 +141,9 @@
|
||||
"group": "dev",
|
||||
"file_name": "bs",
|
||||
"exec": "yes",
|
||||
"last_update": "2023-06-30T07:48:58Z",
|
||||
"last_update": "2024-03-28T13:16:41Z",
|
||||
"downloads": "/home/jaandrle/bin/bs",
|
||||
"version": "v0.7.3"
|
||||
"version": "v0.7.4"
|
||||
},
|
||||
{
|
||||
"repository": "h3poteto/fedistar",
|
||||
@ -152,9 +152,9 @@
|
||||
"group": "nondev",
|
||||
"file_name": "fedistar",
|
||||
"exec": "yes",
|
||||
"last_update": "2024-01-29T10:29:58Z",
|
||||
"last_update": "2024-03-29T15:39:36Z",
|
||||
"downloads": "/home/jaandrle/bin/fedistar",
|
||||
"version": "v1.8.3"
|
||||
"version": "v1.9.2"
|
||||
},
|
||||
{
|
||||
"repository": "ollama/ollama",
|
||||
@ -163,9 +163,9 @@
|
||||
"group": "ai",
|
||||
"file_name": "ollama",
|
||||
"exec": "yes",
|
||||
"last_update": "2024-01-26T18:19:36Z",
|
||||
"last_update": "2024-03-10T02:24:04Z",
|
||||
"downloads": "/home/jaandrle/bin/ollama",
|
||||
"version": "v0.1.22"
|
||||
"version": "v0.1.29"
|
||||
},
|
||||
{
|
||||
"repository": "neovim/neovim",
|
||||
@ -186,9 +186,9 @@
|
||||
"group": "dev",
|
||||
"file_name": "escrcpy",
|
||||
"exec": "yes",
|
||||
"last_update": "2023-12-27T01:18:21Z",
|
||||
"last_update": "2024-03-29T03:30:14Z",
|
||||
"downloads": "/home/jaandrle/bin/escrcpy",
|
||||
"version": "v1.16.8"
|
||||
"version": "v1.17.8"
|
||||
},
|
||||
{
|
||||
"repository": "drovp/drovp",
|
||||
@ -208,9 +208,31 @@
|
||||
"group": "ai",
|
||||
"file_name": "jan",
|
||||
"exec": "yes",
|
||||
"last_update": "2024-01-29T05:19:22Z",
|
||||
"last_update": "2024-03-11T06:34:40Z",
|
||||
"downloads": "/home/jaandrle/bin/jan",
|
||||
"version": "v0.4.5"
|
||||
"version": "v0.4.8"
|
||||
},
|
||||
{
|
||||
"repository": "Bin-Huang/chatbox",
|
||||
"name": "Chatbox",
|
||||
"description": "Chatbox is a desktop client for ChatGPT, Claude and other LLMs, available on Windows, Mac, Linux",
|
||||
"group": "ai",
|
||||
"file_name": "Chatbox",
|
||||
"exec": "yes",
|
||||
"last_update": "2024-03-15T15:58:59Z",
|
||||
"downloads": "/home/jaandrle/bin/Chatbox",
|
||||
"version": "v1.3.1"
|
||||
},
|
||||
{
|
||||
"repository": "Helium314/HeliBoard",
|
||||
"name": "HeliBoard",
|
||||
"description": "Customizable and privacy-conscious open-source keyboard",
|
||||
"group": "android",
|
||||
"file_name": "heliboard.apk",
|
||||
"exec": "no",
|
||||
"last_update": "2024-03-31T20:11:03Z",
|
||||
"downloads": "/home/jaandrle/bin/heliboard.apk",
|
||||
"version": "v1.0"
|
||||
}
|
||||
]
|
||||
}
|
253
bin/github-releases.mjs
Executable file
253
bin/github-releases.mjs
Executable file
@ -0,0 +1,253 @@
|
||||
#!/usr/bin/env nodejsscript
|
||||
/* jshint esversion: 11,-W097, -W040, module: true, node: true, expr: true, undef: true *//* global echo, $, pipe, s, fetch, cyclicLoop */
|
||||
// "\x1b[38;2;150;150;150m"
|
||||
// https://talyian.github.io/ansicolors/
|
||||
/**
|
||||
* Represents a package record stored locally
|
||||
*
|
||||
* @typedef ConfigPackage
|
||||
* @type {Object}
|
||||
* @property {string} repository - Repo in the form `<owner>/<repo>`
|
||||
* @property {string} name - Name/Identifier
|
||||
* @property {string} description - A description of the repo/package
|
||||
* @property {string} file_name - The name of the file as stored locally
|
||||
* @property {"yes"|"no"} exec - Whether the file is executable
|
||||
* @property {string} last_update - The date and time of the last update
|
||||
* @property {string} downloads - The path to the file
|
||||
* @property {string} version - The version of the file
|
||||
* @property {string} tag_name_regex - Filter only matching releases
|
||||
* */
|
||||
/**
|
||||
* @typedef Config
|
||||
* @type {{ packages: ConfigPackage[] }}
|
||||
* */
|
||||
/**
|
||||
* Represents a GitHub release information.
|
||||
*
|
||||
* @typedef {Object} GitHubRelease
|
||||
* @property {number} id - The ID of the GitHub release.
|
||||
* @property {string} url - The URL of the GitHub release.
|
||||
* @property {string} assets_url - The URL of the assets associated with the GitHub release.
|
||||
* @property {string} html_url - The HTML URL of the GitHub release.
|
||||
* @property {string} tag_name - The tag name of the GitHub release.
|
||||
* @property {string} published_at - The publication date of the GitHub release.
|
||||
*/
|
||||
import { join } from "node:path";
|
||||
const path_config= $.xdg.config`github-releases`;
|
||||
const path_config_json= join(path_config, "config.json");
|
||||
const path_config_lock= join(path_config, "lock");
|
||||
const path_temp= $.xdg.temp`github-releases.json`;
|
||||
let url_api= "github";
|
||||
const urls_api= {
|
||||
github: "https://api.github.com/repos/",
|
||||
ungh: "https://ungh.cc/repos/"
|
||||
};
|
||||
const url_download= "https://glare.now.sh/"; // https://github.com/Contextualist/glare
|
||||
const css= echo.css`
|
||||
.pkg { color: lightcyan; }
|
||||
.ok { color: lightgreen; }
|
||||
.err { color: lightred; }
|
||||
.skip { color: red; color: gray; }
|
||||
.spin { display: list-item; list-style: --terminal-spin; }
|
||||
`;
|
||||
|
||||
$.api()
|
||||
.version("2.1.0")
|
||||
.describe("Helper for working with “packages” stored in GitHub releases.")
|
||||
.option("--verbose", "Verbose output (WIP)")
|
||||
.option("--group, -G", "Filter by group (not awaiable for noGRA)")
|
||||
.option("--repository, -R", "Filter by repository (not awaiable for noGRA)")
|
||||
.option("--api", [ "Choose API URL",
|
||||
"- GitHub (default): https://api.github.com/repos/",
|
||||
"- Ungh: https://ungh.cc/repos/", "(not awaiable for noGRA)" ], "github")
|
||||
.command("unlock", "[noGRA] DANGER: Removes lock file. Use only if you know what you are doing!")
|
||||
.action(function(){
|
||||
s.rm(path_config_lock);
|
||||
})
|
||||
.command("config [mode]", [ "[noGR] Config (file), use `mode` with these options:",
|
||||
"- `edit`: opens config file in terminal editor using `$EDITOR` (defaults to vim)",
|
||||
"- `path`: prints path to config file"
|
||||
])
|
||||
.action(async function(mode= "path"){
|
||||
switch(mode){
|
||||
case "path": echo(path_config_json); break;
|
||||
case "edit":
|
||||
const editor= $.env.EDITOR || "vim";
|
||||
await s.runA`${editor} ${path_config_json}`.pipe(process.stdout);
|
||||
break;
|
||||
default:
|
||||
echo(`Unknown mode: '${mode}'. See '--help' for details.`);
|
||||
}
|
||||
$.exit(0);
|
||||
})
|
||||
.command("ls", [ "Lists registered packages",
|
||||
"Repositories marked with `-` signifies that the package is in the 'skip' group.",
|
||||
"These are registered by this script but not managed by it (updates, etc).",
|
||||
"Repositories marked with `+` signify that updates of the package are checked."
|
||||
])
|
||||
.action(function(filter){
|
||||
const config = readConfig();
|
||||
for(const { repository, version, description, group } of grepPackages(config, filter))
|
||||
if(group!=="skip")
|
||||
echo(`+ %c${repository}%c@${version ? version : "—"}: %c${description}`, css.pkg, css.unset, css.skip);
|
||||
else
|
||||
echo(`- %c${repository}: ${description}`, css.skip);
|
||||
$.exit(0);
|
||||
})
|
||||
.command("check", "Shows/checks updates for registered packages")
|
||||
.option("--cache", "Use cache [yes, no]", "yes")
|
||||
.action(async function({ cache, ...filter }){
|
||||
const config = readConfig();
|
||||
const results= await check(grepPackages(config, filter), cache);
|
||||
for(const { status, value } of results)
|
||||
echoPkgStatus(status, value);
|
||||
if(!results.length) echo("Nothing to do.");
|
||||
$.exit(0);
|
||||
})
|
||||
.command("update", "Updates registered packages")
|
||||
.action(async function(filter){
|
||||
if(s.test("-f", path_config_lock))
|
||||
return $.error(`The lock file '${path_config_lock}' already exists! Check if some other instance is running.`);
|
||||
s.touch(path_config_lock);
|
||||
const config = readConfig();
|
||||
const results= await check(grepPackages(config, filter));
|
||||
const start= Date.now();
|
||||
let done= 0;
|
||||
let todo= [];
|
||||
echo("Collecting packages to update…");
|
||||
for(const { status, value } of results){
|
||||
if(status!==3 || value.local.group==="skip") continue;
|
||||
echo("%c"+value.local.repository, css.pkg);
|
||||
todo.push(download(
|
||||
value,
|
||||
()=> done+= 1,
|
||||
config.target
|
||||
));
|
||||
}
|
||||
const { length }= todo;
|
||||
if(!length){
|
||||
echo("%cAll up-to-date!%c Nothing to do.", css.ok);
|
||||
} else {
|
||||
const id= setInterval(()=>
|
||||
echo.use("-R", `%cUpdating packages (${done}/${length})`, css.spin), 500);
|
||||
const updates= await Promise.allSettled(todo);
|
||||
clearInterval(id);
|
||||
echo("Updating packages completed:");
|
||||
for (const { status, value, reason } of updates) {
|
||||
if(status==="rejected"){
|
||||
echo("%c✗ TBD reason.local.repository: %c"+reason.err, css.err);
|
||||
continue;
|
||||
}
|
||||
const { local, remote }= value;
|
||||
echo("%c✓ "+local.repository+"%c@"+remote.tag_name, css.ok, css.skip);
|
||||
}
|
||||
s.echo(JSON.stringify(config, null, "\t")).to(path_config_json);
|
||||
}
|
||||
s.rm(path_config_lock);
|
||||
$.exit(0);
|
||||
})
|
||||
.parse();
|
||||
|
||||
import { createWriteStream } from "node:fs";
|
||||
async function download(value, onprogress, target){
|
||||
const { repository, glare }= value.local;
|
||||
const { tag_name }= value.remote;
|
||||
if(!glare) return Promise.reject({ err: "Missing 'glare' in config.", ...value });
|
||||
|
||||
const response= await fetch(url_download+repository+`@${tag_name}/${glare}`);
|
||||
const buffer= Buffer.from(await response.arrayBuffer());
|
||||
const downloads= target+value.local.file_name;
|
||||
const ws= createWriteStream(downloads, { flags: "w" });
|
||||
ws.write(buffer);
|
||||
Object.assign(value.local, {
|
||||
last_update: value.remote.published_at,
|
||||
version: value.remote.tag_name,
|
||||
downloads
|
||||
});
|
||||
if(value.local.exec==="yes")
|
||||
s.chmod("+x", downloads);
|
||||
onprogress();
|
||||
return value;
|
||||
}
|
||||
|
||||
function grepPackages({ packages }, { group, repository, api, verbose }){
|
||||
if(api && api!==url_api && urls_api.hasOwnProperty(api))
|
||||
url_api= api;
|
||||
if(verbose)
|
||||
echo(`Using API: ${url_api} (${urls_api[url_api]})`);
|
||||
const f= {};
|
||||
let is_filter= false;
|
||||
if(group){ is_filter= true; f.group= group; }
|
||||
if(repository){ is_filter= true; f.repository= repository; }
|
||||
if(verbose)
|
||||
echo("Filter:", f);
|
||||
if(!is_filter) return packages;
|
||||
return packages.filter(r=> Object.keys(f).every(k=> r[k]===f[k]));
|
||||
}
|
||||
function echoPkgStatus(status, { local, remote }){
|
||||
let status_css, status_text;
|
||||
if(local.group==="skip"){
|
||||
status_text= "skipped";
|
||||
status_css= "skip";
|
||||
} else {
|
||||
status_text= status===3 ? "outdated" : "up-to-date";
|
||||
status_css= status===3 ? "err" : "ok";
|
||||
}
|
||||
echo((status_text==="outdated" ? "+" : "-") + " %c"+local.repository + "%c: %c"+status_text+"%c (%c"+remote.tag_name+"%c)",
|
||||
css.pkg, css.unset, css[status_css], css.unset, css.skip, css.unset);
|
||||
}
|
||||
/**
|
||||
* @param {Config.packages} packages
|
||||
* @return {{ status: 0|1|2|3, value: { remote: GitHubRelease, local: ConfigPackage } }}
|
||||
* */
|
||||
async function check(packages, cache){
|
||||
return (await pipe(
|
||||
ps=> ps.map(p=> fetchRelease(p, cache).then(remote=> ({ local: p, remote }))),
|
||||
ps=> Promise.allSettled(ps)
|
||||
)(packages))
|
||||
.map(({ status, ...v })=> status==="rejected" ?
|
||||
{ status: -1, value: v } :
|
||||
{ status: packageStatus(v.value.local, v.value.remote), value: v.value })
|
||||
.filter(({ status, value })=> {
|
||||
if(status!==-1) return true;
|
||||
echo("%c"+value.reason, css.err);
|
||||
|
||||
});
|
||||
}
|
||||
/** @type {(local: ConfigPackage, remote: GitHubRelease)=> 0|1|2|3} */
|
||||
function packageStatus({ last_update: local }, { published_at: remote }){
|
||||
if(!remote) return 0;
|
||||
if(!local) return 3;
|
||||
if(remote===local) return 1;
|
||||
return 2+(local<remote);
|
||||
}
|
||||
/** @param {ConfigPackage} package */
|
||||
async function fetchRelease({ repository, tag_name_regex }, cache){
|
||||
const headers= { 'User-Agent': 'node' };
|
||||
if(cache==="no") headers['Cache-Control'] = 'no-cache';
|
||||
const url= urls_api[url_api]+repository+"/releases";
|
||||
const releases= await fetch(url, { headers }).then(res=> res.json());
|
||||
if(releases.message) return $.error(url+": "+releases.message);
|
||||
|
||||
if(url.includes("github.com"))
|
||||
return releases.find(function ({ draft, published_at, tag_name }){
|
||||
if(draft||!published_at) return false;
|
||||
if(!tag_name_regex) return true;
|
||||
return (new RegExp(tag_name_regex, 'g')).test(tag_name);
|
||||
});
|
||||
|
||||
const { draft, publishedAt, tag }= releases.releases.find(function ({ draft, publishedAt, tag }){
|
||||
if(draft||!publishedAt) return false;
|
||||
if(!tag_name_regex) return true;
|
||||
return (new RegExp(tag_name_regex, 'g')).test(tag);
|
||||
});
|
||||
return { draft, published_at: publishedAt, tag_name: tag };
|
||||
}
|
||||
|
||||
function readConfig(){
|
||||
if(!s.test("-f", path_config_json)) return { packages: [] };
|
||||
const out= Object.assign({ target: "~/bin/" },
|
||||
s.cat(path_config_json).xargs(JSON.parse));
|
||||
if(out.target.startsWith("~/")) out.target= $.xdg.home(out.target.slice(2));
|
||||
return out;
|
||||
}
|
78
bin/kde6-workarounds.mjs
Executable file
78
bin/kde6-workarounds.mjs
Executable file
@ -0,0 +1,78 @@
|
||||
#!/usr/bin/env nodejsscript
|
||||
/* jshint esversion: 11,-W097, -W040, module: true, node: true, expr: true, undef: true *//* global echo, $, pipe, s, fetch, cyclicLoop */
|
||||
|
||||
const pathLastDesktop= ()=> $.xdg.temp`kde6-workarounds-last-desktop.txt`;
|
||||
const css= echo.css`
|
||||
.code { color: gray; }
|
||||
`;
|
||||
|
||||
$.api()
|
||||
.version("2024-02-29")
|
||||
.describe("Workarounds for KDE6.")
|
||||
.command("logout")
|
||||
.action(function(){
|
||||
$.is_silent= true;
|
||||
const res= s.run([
|
||||
"echo ::options::",
|
||||
"|",
|
||||
"rofi -dmenu -p 'Logout' -l 4 -theme-str 'window { width: 25ch; }' -normal-window"
|
||||
].join(" "), {
|
||||
options: [ "-", "poweroff", "reboot" ].join("\n")
|
||||
}).trim();
|
||||
if(res && res!=="-") s.run(res);
|
||||
$.exit(0);
|
||||
})
|
||||
.command("klipper-edit", "Edit last item in klipper.")
|
||||
.action(async function(){
|
||||
$.is_silent= true;
|
||||
const qdbus= "qdbus org.kde.klipper /klipper org.kde.klipper.klipper.";
|
||||
try{
|
||||
const candidate= s.run(`${qdbus}getClipboardContents`).trim();
|
||||
const content= await $.read({ "-p": "Edit", completions: [ candidate ] });
|
||||
s.run(`${qdbus}setClipboardContents "${content}"`);
|
||||
$.exit(0);
|
||||
} catch (_){
|
||||
$.exit(1);
|
||||
}
|
||||
})
|
||||
.command("desktops-alttab", "Workaround for KDE6 alt-tab between virtual desktops.")
|
||||
.action(function(){
|
||||
const path= pathLastDesktop();
|
||||
// Regarding ★ : this is a workaround for diagonal switching (it duplicates desktop index)
|
||||
let desktop= s.cat(path).trim() || "1";
|
||||
if(desktop.length>3){ // ★
|
||||
const [ _1, _2, ..._3 ]= desktop.slice(-4, desktop.length);
|
||||
if(_1===_2)
|
||||
desktop= desktop.slice(0, -4).concat(_1, ..._3);
|
||||
}
|
||||
if(desktop.length>2){ // ★
|
||||
const [ _1, _2 ]= desktop.slice(-2, desktop.length);
|
||||
if(_1===_2)
|
||||
desktop= desktop.slice(0, -1);
|
||||
}
|
||||
if(desktop.length>2){
|
||||
desktop= desktop.slice(-2, desktop.length);
|
||||
s.echo(desktop).to(path);
|
||||
}
|
||||
echo(desktop);
|
||||
s.run`qdbus org.kde.KWin /KWin org.kde.KWin.setCurrentDesktop ${desktop[0]}`;
|
||||
$.exit(0);
|
||||
})
|
||||
.command("desktops-last-dbus")
|
||||
.action(function(){
|
||||
echo([
|
||||
"dbus-monitor",
|
||||
'"interface=org.kde.KWin.VirtualDesktopManager" "member=currentChanged"',
|
||||
"|",
|
||||
'xargs -e -I {} kde6-workarounds.mjs desktops-last-save {}'
|
||||
].join(" "));
|
||||
$.exit(0);
|
||||
})
|
||||
.command("desktops-last-save <dbus>", "Workaround for KDE6 alt-tab between virtual desktops.")
|
||||
.action(function(dbus){
|
||||
if(-1===dbus.indexOf("path=/VirtualDesktopManager; interface=org.kde.KWin.VirtualDesktopManager; member=currentChanged"))
|
||||
return $.exit(1);
|
||||
const desktop= s.run`qdbus org.kde.KWin /KWin org.kde.KWin.currentDesktop`.trim();
|
||||
s.echo(desktop).toEnd(pathLastDesktop());
|
||||
})
|
||||
.parse();
|
@ -1,5 +1,6 @@
|
||||
#!/usr/bin/env nodejsscript
|
||||
/* jshint esversion: 11,-W097, -W040, module: true, node: true, expr: true, undef: true *//* global echo, $, pipe, s, fetch, cyclicLoop */
|
||||
import { kwallet } from "./§kwallet.mjs";
|
||||
const url_api= "https://nocodb.jaandrle.cz/api/v1/db/data/v1/Linky/Linky";
|
||||
$.api()
|
||||
.command("add-md")
|
||||
@ -9,7 +10,7 @@ $.api()
|
||||
|
||||
const res= await fetch(url_api, {
|
||||
body: JSON.stringify({ Popis: title.slice(1), Url: url.slice(0, -1) }),
|
||||
headers: { "xc-token": "Js7Qu0oT_wTmGJDFKlIZEBhwk87WF0L1wLmQO01F",
|
||||
headers: { "xc-token": kwallet([ "readPassword", "Passwords", "nocodb-linky" ])[0].toString(),
|
||||
"accept": "application/json", "Content-Type": "application/json"
|
||||
},
|
||||
method: "post"
|
||||
|
@ -2,7 +2,37 @@
|
||||
/* jshint esversion: 11,-W097, -W040, module: true, node: true, expr: true, undef: true *//* global echo, $, pipe, s, fetch, cyclicLoop */
|
||||
|
||||
$.api("")
|
||||
.version("2023-08-11")
|
||||
.version("2024-03-18")
|
||||
.command("silicon [file]", [
|
||||
"Generovat obrázek s kódem pro sdílení na sociálních sítích. (alternativa k Carbon)",
|
||||
"Toto je jen drobný wrapper s mými defaultními parametry.",
|
||||
"Další nápověda viz `silicon --help`.",
|
||||
])
|
||||
.option("--title", "Set window title (default: file name).")
|
||||
.option("--range", "Select lines from file in the form `start:end`")
|
||||
.option("--font-size, --fs", "Font size", 25)
|
||||
.action(function silicon(file, { title= file, range, fs, ["font-size"]: _fs, _, ...args }){
|
||||
args= Object.assign({
|
||||
theme: "OneHalfDark",
|
||||
font: `Ubuntu Mono =${fs}`,
|
||||
background: "#f06d78",
|
||||
["shadow-blur-radius"]: 30,
|
||||
["tab-width"]: 2
|
||||
}, args);
|
||||
args= Object.keys(args).flatMap(key=> [ "--"+key, args[key] ]);
|
||||
let from= file;
|
||||
const index_ext= file.lastIndexOf(".");
|
||||
const output= !file ? "silicon.png" : file.slice(0, index_ext+1)+"png";
|
||||
if(range && typeof range=== "string" && range.includes(":")){
|
||||
from= $.xdg.temp`silicon-range${file.slice(index_ext)}`;
|
||||
const content= s.$().cat(file).toString().split(/\r?\n/).slice(...range.split(":").map(n=> parseInt(n)+1));
|
||||
s.echo(content.join("\n")).to(from);
|
||||
}
|
||||
s.run`silicon ${from} --output ${output} --window-title ${title} ${args}`;
|
||||
echo(`Generated ${output}`);
|
||||
if(from!== file) s.rm(from);
|
||||
$.exit(0);
|
||||
})
|
||||
.command("textInImage [file]", "Generovat obrázek s textem pro sdílení na sociálních sítích.")
|
||||
.alias("tii")
|
||||
.option("--pointsize", "Text size", "62")
|
||||
@ -41,6 +71,7 @@ function textSplit(file, { limit, counter, text }){
|
||||
function textInImage(file, { text, gravity, pointsize }){
|
||||
text= getText(file, text);
|
||||
const output= !file ? "textInImage.png" : (({ pathname: p })=> p.slice(1, p.lastIndexOf(".")+1)+"png")(new URL(file, "file://"));
|
||||
if(s.test("-f", output)) s.rm(output);
|
||||
const round_corners= [ //https://9to5answer.com/rounding-corners-of-pictures-with-imagemagick
|
||||
"\\(",
|
||||
"+clone -alpha extract",
|
||||
|
@ -68,8 +68,7 @@ $.api("", true)
|
||||
.map(pipe(
|
||||
j=> j.choices[0].text.trim(),
|
||||
convertToArray,
|
||||
j=> (console.log(j), j),
|
||||
format==="regular" ? i=> i : i=> gitmoji(i, format==="git3moji"),
|
||||
format==="regular" || format==="conventional" ? i=> i : i=> gitmoji(i, format==="git3moji"),
|
||||
a=> a.join("\n")
|
||||
))
|
||||
.join("\n\n");
|
||||
|
157
bin/§kwallet.mjs
Executable file
157
bin/§kwallet.mjs
Executable file
@ -0,0 +1,157 @@
|
||||
#!/usr/bin/env nodejsscript
|
||||
/* jshint esversion: 11,-W097, -W040, module: true, node: true, expr: true, undef: true *//* global echo, $, pipe, s, fetch, cyclicLoop */
|
||||
const css= echo.css`
|
||||
.error{ color: lightred; }
|
||||
.code, .method{ color: lightblue; }
|
||||
.code::before, .code::after{ content: "\`"; }
|
||||
.li{ padding-left: 2ch; }
|
||||
`;
|
||||
const default_wallet= "kdewallet";
|
||||
const cmd= "qdbus";
|
||||
if(!s.which(cmd))
|
||||
$.exit(1, echo([
|
||||
`%cError: ${cmd} not found.`,
|
||||
`%cInstall it with: %csudo apt install ${cmd}`,
|
||||
].join("\n"), css.error, css.unset, css.code));
|
||||
|
||||
import { EventEmitter } from "node:events";
|
||||
const events= new EventEmitter();
|
||||
const exit_event= "exit";
|
||||
|
||||
if($.isMain(import.meta)){
|
||||
events.on(exit_event, $.exit);
|
||||
|
||||
$.api("", true)
|
||||
.version("2024-03-05")
|
||||
.describe([
|
||||
`KWallet CLI using ${cmd}.`,
|
||||
"Call with no arguments to list all methods.",
|
||||
])
|
||||
.example("--wallet kdewallet folderList")
|
||||
.example("--wallet kdewallet readPassword folder entry")
|
||||
.option("--wallet, -w", "Wallet name", default_wallet)
|
||||
.action(function main({ _, wallet }){
|
||||
const [ results, is_ls ]= kwallet(_, { wallet });
|
||||
if(is_ls) echoLs(results);
|
||||
else echo(results);
|
||||
events.emit(exit_event);
|
||||
})
|
||||
.parse();
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {string[]} _ Query/arguments for qdbus
|
||||
* @param {object} [options]
|
||||
* @param {string} [options.wallet] Wallet name
|
||||
* @returns {[ string[], true ]|[ string, false ]}
|
||||
* */
|
||||
export function kwallet(_, { wallet= default_wallet }= {}){
|
||||
const qdbus= qdbusGenerator({
|
||||
service: "org.kde.kwalletd6",
|
||||
methods: "/modules/kwalletd6",
|
||||
wallet,
|
||||
exit_event
|
||||
});
|
||||
if(!_.length)
|
||||
return [ qdbus(), true ];
|
||||
else{
|
||||
//TODO: Map (`--literal` in qdbus and decode the result `echoMap`)
|
||||
const result= qdbus(_);
|
||||
return [ result, false ];
|
||||
}
|
||||
}
|
||||
function qdbusGenerator({ service, methods, wallet, exit_event }){
|
||||
const name= getScriptName();
|
||||
const no_id= [
|
||||
'allWalletsClosed',
|
||||
'applicationDisconnected',
|
||||
'folderListUpdated',
|
||||
'folderUpdated',
|
||||
'walletClosed',
|
||||
'walletCreated',
|
||||
'walletDeleted',
|
||||
'walletListDirty',
|
||||
'walletOpened',
|
||||
'changePassword',
|
||||
'close',
|
||||
'closeAllWallets',
|
||||
'deleteWallet',
|
||||
'disconnectApplication',
|
||||
'folderDoesNotExist',
|
||||
'isEnabled',
|
||||
'isOpen',
|
||||
'keyDoesNotExist',
|
||||
'localWallet',
|
||||
'networkWallet',
|
||||
'open',
|
||||
'openAsync',
|
||||
'openPath',
|
||||
'openPathAsync',
|
||||
'pamOpen',
|
||||
'reconfigure',
|
||||
'users',
|
||||
'wallets'
|
||||
];
|
||||
|
||||
let id;
|
||||
const qdbus= (...args)=> s.$().run`${cmd} ${service} ${methods} ${args}`;
|
||||
events.on(exit_event, ()=>{
|
||||
if(!id) return;
|
||||
qdbus("close", id, false, name);
|
||||
id= null;
|
||||
});
|
||||
return function([ method, ...args ]= []){
|
||||
if(!method) return qdbus();
|
||||
if(no_id.includes(method)) return qdbus(method, ...args);
|
||||
if(!id) open();
|
||||
return qdbus(method, id, ...args, name);
|
||||
};
|
||||
function open(){
|
||||
id= qdbus("open", wallet, 0, name).trim();
|
||||
return id;
|
||||
}
|
||||
}
|
||||
function echoMap(map){
|
||||
map= map.slice(1, -1).split(", ").map(n=> Number.parseInt(n));
|
||||
const ab= new ArrayBuffer(map.length);
|
||||
const view= new Uint8Array(ab);
|
||||
for(let i= 0; i<map.length; i++)
|
||||
view[i]= map[i];
|
||||
|
||||
const words= [];
|
||||
for(let i= 0; i<map.length; i+= 4){
|
||||
words.push(String.fromCharCode.apply(null, view.subarray(i, i+4)));
|
||||
}
|
||||
pipe(
|
||||
echo
|
||||
)(words);
|
||||
}
|
||||
function echoLs(list){
|
||||
const ns= "org.kde.KWallet.";
|
||||
pipe(
|
||||
list=> list.split("\n").filter(l=> l.startsWith("method") && -1!==l.indexOf(ns)),
|
||||
list=> list.map(l=> l.slice(l.indexOf(" ")+1)).map(l=> l.replace(ns, "")),
|
||||
list=> list.reduce((o, l)=> (o[Number(l.indexOf("int handle")!==-1)].push(l), o), [ [], [] ]),
|
||||
([ no_wallet, wallet ])=> [
|
||||
"Methods available without wallet:",
|
||||
...no_wallet.map(formatMethod),
|
||||
"Methods available with wallet (" + echo.format("%c--wallet", css.code) + " option):",
|
||||
...wallet.map(formatMethod)
|
||||
].join("\n"),
|
||||
echo
|
||||
)(list);
|
||||
function formatMethod(line){
|
||||
const ch_type= line.indexOf(" ")+1;
|
||||
const ch_name= line.indexOf("(", ch_type);
|
||||
return echo.format([
|
||||
"",
|
||||
line.slice(0, ch_type),
|
||||
line.slice(ch_type, ch_name),
|
||||
line.slice(ch_name)
|
||||
].join("%c"), css.li, css.method, css.unset);
|
||||
}
|
||||
}
|
||||
function getScriptName(){
|
||||
const { url }= import.meta;
|
||||
return (new URL(url)).href.slice((new URL("./", url).href.length));
|
||||
}
|
86
bin/§time.mjs
Executable file
86
bin/§time.mjs
Executable file
@ -0,0 +1,86 @@
|
||||
#!/usr/bin/env nodejsscript
|
||||
/* jshint esversion: 11,-W097, -W040, module: true, node: true, expr: true, undef: true *//* global echo, $, pipe, s, fetch, cyclicLoop */
|
||||
const units= {
|
||||
second: 1000,
|
||||
get minute(){ return this.second*60; },
|
||||
get hour(){ return this.minute*60; },
|
||||
get day(){ return this.hour*24; },
|
||||
get month(){ return this.day*30; },
|
||||
get year(){ return this.day*365; }
|
||||
};
|
||||
|
||||
$.api()
|
||||
.version("2024-03-27")
|
||||
.command("diff <time> [reference]", [
|
||||
"Returns remaining time diff <time>.",
|
||||
"The <time> is argument to bash `date -d <time> +%s`.",
|
||||
"Optionally, you can specify <reference> (with the same format) to compare with. By default it is current time."
|
||||
])
|
||||
.alias("?")
|
||||
.option("--unit", "Unit, use one of the: "+Object.keys(units).join(", "))
|
||||
.action(diff)
|
||||
.command("zone [time]", "Returns times in different time zones.")
|
||||
.option("-z", "Use multiple times to see time in different time zones.")
|
||||
.action(zone)
|
||||
.parse();
|
||||
|
||||
function diff(given, reference, { unit }){
|
||||
const date_now= !reference ? new Date() : date("[reference]", reference);
|
||||
const date_given= date("<time>", given);
|
||||
debugger;
|
||||
|
||||
const rtf= new Intl.RelativeTimeFormat();
|
||||
let future= 1;
|
||||
let diff= date_given - date_now;
|
||||
if(diff < 0){
|
||||
future= -1;
|
||||
diff= -diff;
|
||||
}
|
||||
if(unit){
|
||||
if(unit.endsWith("s")) unit= unit.slice(0, -1);
|
||||
echo(rtf.format(future*Math.floor(diff/units[unit]), unit));
|
||||
$.exit(0);
|
||||
}
|
||||
diff= echoUnit(future, diff, "year", rtf);
|
||||
diff= echoUnit(future, diff, "month", rtf);
|
||||
diff= echoUnit(future, diff, "day", rtf);
|
||||
diff= echoUnit(future, diff, "hour", rtf);
|
||||
diff= echoUnit(future, diff, "minute", rtf);
|
||||
diff= echoUnit(future, diff, "second", rtf);
|
||||
$.exit(0);
|
||||
}
|
||||
function zone(time, { z: zones }){
|
||||
if(!Array.isArray(zones)) zones= zones ? [ zones ] : [];
|
||||
if(!zones.length)
|
||||
return $.error("Please specify at least one zone.");
|
||||
|
||||
const date_given= time ? date("[time]", time) : new Date();
|
||||
if(date_given.toLocaleString() === "Invalid Date")
|
||||
return $.error(date_given);
|
||||
|
||||
const max_length= Math.max(...zones.map(zone=> zone.length));
|
||||
const dtf= timeZone=> new Intl.DateTimeFormat(undefined, { timeZone, dateStyle: "full", timeStyle: "long", hour12: false });
|
||||
for(const zone of zones)
|
||||
echo(zone.padStart(max_length, " "), "—", dtf(zone).format(date_given));
|
||||
|
||||
$.exit(0);
|
||||
}
|
||||
|
||||
function date(name, given){
|
||||
const date_given= new Date(s.$().run`date -d ${given} +%Y-%m-%dT%H:%M:%S%z`.trim());
|
||||
if(date_given.toLocaleString() === "Invalid Date")
|
||||
return $.exit(1, echo(name, date_given));
|
||||
return date_given;
|
||||
}
|
||||
/**
|
||||
* @param {1|-1} future
|
||||
* @param {number} num
|
||||
* @param {'year'|'month'|'day'|'hour'|'minute'|'second'} unit
|
||||
* @param {string} rtf
|
||||
* */
|
||||
function echoUnit(future, num, unit, rtf){
|
||||
if(num <= units[unit]) return num;
|
||||
|
||||
echo(rtf.format(future*Math.floor(num/units[unit]), unit));
|
||||
return num%units[unit];
|
||||
}
|
14
bin/§ultisnips.mjs
Executable file
14
bin/§ultisnips.mjs
Executable file
@ -0,0 +1,14 @@
|
||||
#!/usr/bin/env nodejsscript
|
||||
/* jshint esversion: 11,-W097, -W040, module: true, node: true, expr: true, undef: true *//* global echo, $, pipe, s, fetch, cyclicLoop */
|
||||
$.is_fatal= true;
|
||||
const root= "~/.config/coc/ultisnips/";
|
||||
const files= Object.fromEntries( s.ls(root).map(fn=> [fn, s.cat(root+fn).trim()]) );
|
||||
Object.keys(files).forEach(fn=> {
|
||||
const file= files[fn];
|
||||
if(!file.startsWith("extends ")) return;
|
||||
const lines= file.split("\n");
|
||||
const line_end= pipe( id=> id===-1 ? lines.length : id )( lines.findIndex(l=> l.startsWith("#endextends")) );
|
||||
const include= lines[0].replace("extends ", "").trim().split(/, ?/g).map(s=> files[s+".snippets"]).join("\n");
|
||||
lines.splice(1, line_end-1, include);
|
||||
s.echo(lines.join("\n").trim()).to(root+fn);
|
||||
})
|
@ -153,7 +153,11 @@ async function actionUpdate(){
|
||||
}).then(f=> s.echo(f).to(dirs.one_files+fileName(url)));
|
||||
}));
|
||||
echo("One-file plugin(s) updated.");
|
||||
s.cd(dirs.bundle).$().run`git commit -m "Update"`;
|
||||
try{
|
||||
s.cd(dirs.bundle).$().run`git commit -m "Update"`;
|
||||
} catch(e){
|
||||
echo(e?.message);
|
||||
}
|
||||
updateRepo(dirs.pack, getPack());
|
||||
|
||||
$.exit(0);
|
||||
|
6
bin/§wallpaper_BIOTD
Executable file
6
bin/§wallpaper_BIOTD
Executable file
@ -0,0 +1,6 @@
|
||||
#!/bin/bash
|
||||
nm-online -x -q && \
|
||||
node "/home/jaandrle/.nvm/versions/node/$(node --version)/bin/nodejsscript" /home/jaandrle/bin/§wallpaper_WCPOTD.mjs pull && \
|
||||
cd "/home/jaandrle/Obrázky/Bing Image Of The Day" && \
|
||||
qdbus org.kde.plasmashell /PlasmaShell org.kde.PlasmaShell.evaluateScript 'const d= desktops().filter(d=> d.wallpaperPlugin==="de.unkn0wn.htmlwallpaper")[0];const url= (i= "")=> `file:///home/jaandrle/Obr%C3%A1zky/Bing%20Image%20Of%20The%20Day/index${i}.html`;d.currentConfigGroup= Array("Wallpaper", "de.unkn0wn.htmlwallpaper","General");d.writeConfig("DisplayPage", url("1"));d.writeConfig("DisplayPage", url());'
|
||||
# convert now.jpg prev.jpg +append horizontally.jpg
|
@ -9,36 +9,36 @@ const folder= homedir()+"/Obrázky/Bing Image Of The Day/";
|
||||
|
||||
get_(url_main+"/HPImageArchive.aspx?format=js&idx=0&n=2&mkt=cs-CZ")
|
||||
.then(res=> {
|
||||
let body= "";
|
||||
res.on("data", chunk=> body+= chunk);
|
||||
res.on("end", ()=> pipe(data, update)(body));
|
||||
let body= "";
|
||||
res.on("data", chunk=> body+= chunk);
|
||||
res.on("end", ()=> pipe(data, update)(body));
|
||||
})
|
||||
.catch(e=> console.error(String(e)));
|
||||
|
||||
function update(data){
|
||||
if(data===null) return false;
|
||||
Promise.allSettled(data.map(({ url, copyright }, id)=> getImage_(url, id ? "prev" : "now", copyright)))
|
||||
.then(res=> {
|
||||
let template= readFileSync(folder+"index_template.html").toString();
|
||||
writeFileSync(folder+"index.html", res.reduce((out, { status, value })=> status==="rejected" ? out : out.replace(`::${value.name}::`, value.description), template));
|
||||
})
|
||||
.catch(e=> console.error(String(e)));
|
||||
if(data===null) return false;
|
||||
Promise.allSettled(data.map(({ url, copyright }, id)=> getImage_(url, id ? "prev" : "now", copyright)))
|
||||
.then(res=> {
|
||||
let template= readFileSync(folder+"index_template.html").toString();
|
||||
writeFileSync(folder+"index.html", res.reduce((out, { status, value })=> status==="rejected" ? out : out.replace(`::${value.name}::`, value.description), template));
|
||||
})
|
||||
.catch(e=> console.error(String(e)));
|
||||
}
|
||||
function getImage_(url, name, desc){
|
||||
const description= desc.replace("(©", "<br>(©");
|
||||
return get_(url_main+url)
|
||||
.then(res=> {
|
||||
const fs= createWriteStream(folder+name+'.jpg');
|
||||
res.pipe(fs);
|
||||
return new Promise(res=> fs.on("finish", ()=> {
|
||||
fs.close();
|
||||
res({ name, description });
|
||||
}));
|
||||
});
|
||||
const description= desc.replace("(©", "<br>(©");
|
||||
return get_(url_main+url)
|
||||
.then(res=> {
|
||||
const fs= createWriteStream(folder+name+'.jpg');
|
||||
res.pipe(fs);
|
||||
return new Promise(res=> fs.on("finish", ()=> {
|
||||
fs.close();
|
||||
res({ name, description });
|
||||
}));
|
||||
});
|
||||
}
|
||||
function data(body){
|
||||
try { return JSON.parse(body).images; }
|
||||
catch (_) { return null; }
|
||||
try { return JSON.parse(body).images; }
|
||||
catch (_) { return null; }
|
||||
}
|
||||
function get_(url){ return new Promise(function(res,rej){ get(url, res).on("error", rej); }); }
|
||||
function pipe(...f){ return Array.prototype.reduce.bind(f, (acc, f)=> f(acc)); }
|
||||
|
118
bin/§wallpaper_WCPOTD.mjs
Executable file
118
bin/§wallpaper_WCPOTD.mjs
Executable file
@ -0,0 +1,118 @@
|
||||
#!/usr/bin/env nodejsscript
|
||||
/* jshint esversion: 11,-W097, -W040, module: true, node: true, expr: true, undef: true *//* global echo, $, pipe, s, fetch, cyclicLoop */
|
||||
const img_params= "?width=1920";
|
||||
const url_api= "https://commons.wikimedia.org/w/api.php";
|
||||
const url_image= "https://commons.wikimedia.org/wiki/Special:FilePath/";
|
||||
|
||||
import { join } from "node:path";
|
||||
const path_home= $.xdg.home`Obrázky/Bing Image Of The Day/`;
|
||||
const path_info= join(path_home, "images.json");
|
||||
|
||||
$.api()
|
||||
.version("2024-06-17")
|
||||
.command("pull", "Pull new/today image(s)")
|
||||
.action(async function pull(){
|
||||
const images= {
|
||||
now: await getImagePath(0),
|
||||
prev: await getImagePath(-1)
|
||||
};
|
||||
const paths= await downloadImages(images);
|
||||
updateHTML(images);
|
||||
convert(paths);
|
||||
pipe(
|
||||
images=> Object.entries(images)
|
||||
.reduce((acc, [ key, { caption } ])=>
|
||||
Reflect.set(acc, key, caption) && acc,
|
||||
{}),
|
||||
images=> JSON.stringify(images, null, "\t"),
|
||||
s.echo
|
||||
)(images).to(path_info);
|
||||
$.exit(0);
|
||||
})
|
||||
.command("status")
|
||||
.action(function status(){
|
||||
const images= s.cat(path_info).xargs(JSON.parse);
|
||||
const [ stats ]= s.ls("-l", path_info);
|
||||
echo({ timestamp: stats.mtime, ...images });
|
||||
$.exit(0);
|
||||
})
|
||||
.parse();
|
||||
/** @typedef {{ url: string, caption: string }} T_response */
|
||||
/** @typedef {Record<"now"|"prev",T_response>} T_images */
|
||||
/** @param {Record<"now"|"prev",string>} paths */
|
||||
function convert(paths){
|
||||
const resize_to= "1920x1080";
|
||||
|
||||
paths= Object.values(paths);
|
||||
const target= join(path_home, "horizontally.jpg");
|
||||
const params= `-resize ${resize_to}^ -gravity center -extent ${resize_to}`.split(" ");
|
||||
s.run`convert ${paths} ${params} +append ${target}`;
|
||||
}
|
||||
import { writeFileSync } from "node:fs";
|
||||
/** @param {T_images} images */
|
||||
function updateHTML(images){
|
||||
let template= s.cat(join(path_home, "index_template.html")).trim();
|
||||
for(const [ key, image ] of Object.entries(images))
|
||||
template= template.replace(`::${key}::`, image.caption);
|
||||
s.echo(template).to(join(path_home, "index.html"));
|
||||
}
|
||||
/** @param {T_images} images */
|
||||
async function downloadImages(images){
|
||||
const out= {};
|
||||
for(const [ key, image ] of Object.entries(images))
|
||||
out[key]= await downloadImage(image, key);
|
||||
return out;
|
||||
}
|
||||
async function getImagePath(shift= 0){
|
||||
const date= dateISO(shift);
|
||||
const { expandtemplates: { wikitext: filepath } }= await fetchGet({
|
||||
action: "expandtemplates",
|
||||
prop: "wikitext",
|
||||
text: `{{Potd/${date}}}`,
|
||||
});
|
||||
const caption= pipe(
|
||||
response=> response.expandtemplates.wikitext,
|
||||
caption=> caption.replace(/\[\[.*?\]\]/g, m=> m.slice(2, -2).split("|").reverse()[0]),
|
||||
caption=> caption.replace(/''(.*?)''/g, "„$1”"),
|
||||
)(await fetchGet({
|
||||
action: "expandtemplates",
|
||||
prop: "wikitext",
|
||||
text: `{{Potd/${date} (cs)}}`,
|
||||
}));
|
||||
/* TODO?
|
||||
* action: 'query',
|
||||
* prop: 'imageinfo',
|
||||
* iiprop: 'extmetadata',
|
||||
* iiextmetadatafilter: 'LicenseShortName|Artist|LicenseUrl',
|
||||
* titles: `Image:${ filename }`
|
||||
*
|
||||
* res.data.query.pages[0].imageinfo[0].extmetadata
|
||||
* */
|
||||
return {
|
||||
caption: caption,
|
||||
url: url_image+encodeURI(filepath)
|
||||
};
|
||||
}
|
||||
|
||||
/** @param {T_response} image @param {"prev"|"now"} type */
|
||||
async function downloadImage({ url }, type){
|
||||
const filename= join(path_home, `${type}.jpg`);
|
||||
let response= await fetch(url+img_params);
|
||||
if(response.status!==200){
|
||||
response= await fetch(url);
|
||||
if(response.status!==200)
|
||||
throw new Error(`Failed to download image: ${response.status} ${response.statusText}`);
|
||||
}
|
||||
const buffer= await response.arrayBuffer();
|
||||
writeFileSync(filename, Buffer.from(buffer));
|
||||
return filename;
|
||||
}
|
||||
function dateISO(shift= 0){
|
||||
const d= new Date();
|
||||
d.setDate(d.getDate()+shift);
|
||||
return d.toISOString().substring(0, 10);
|
||||
}
|
||||
function fetchGet(params){
|
||||
if(!params.format) params.format= "json";
|
||||
return fetch(url_api+"?"+(new URLSearchParams(params)).toString(), { method: "GET" }).then(res=> res.json());
|
||||
}
|
Reference in New Issue
Block a user