Ajout des fichiers manquants
This commit is contained in:
		
							parent
							
								
									ff9cefd28f
								
							
						
					
					
						commit
						62ebf74ebe
					
				
					 17 changed files with 472 additions and 0 deletions
				
			
		
							
								
								
									
										2
									
								
								.gitignore
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								.gitignore
									
										
									
									
										vendored
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,2 @@
 | 
			
		|||
lib/github.com
 | 
			
		||||
private
 | 
			
		||||
							
								
								
									
										26
									
								
								aliases/addbadips.elv
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								aliases/addbadips.elv
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,26 @@
 | 
			
		|||
edit:add-var addbadips~ [@argv]{
 | 
			
		||||
  use moi/util/ip
 | 
			
		||||
  use moi/util/list
 | 
			
		||||
  use moi/util/map
 | 
			
		||||
  use str
 | 
			
		||||
 | 
			
		||||
  local:f = ~/bad_ips.txt
 | 
			
		||||
  local:ips = [ (cat $f) ]
 | 
			
		||||
  local:m = (map:to-set $ips)
 | 
			
		||||
  local:c = 0
 | 
			
		||||
  each [e]{
 | 
			
		||||
    local:cond = (and (not (has-key $m $e)) (ip:is-ipv4 $e))
 | 
			
		||||
    if $cond {
 | 
			
		||||
      echo $e ajoutée
 | 
			
		||||
      c = (+ $c 1)
 | 
			
		||||
      m[$e] = $nil
 | 
			
		||||
      ips = [ (all $ips) $e ]
 | 
			
		||||
    }
 | 
			
		||||
  } $argv
 | 
			
		||||
  if (> $c 0) {
 | 
			
		||||
    ips = [ (list:sort $ip:cmp4~ $ips) ]
 | 
			
		||||
  }
 | 
			
		||||
  local:result = (str:join "\n" $ips)
 | 
			
		||||
  echo $result > $f
 | 
			
		||||
  echo $c' IPs ajoutées ('(count $ips)' au total)'
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										11
									
								
								aliases/adguard.elv
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								aliases/adguard.elv
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,11 @@
 | 
			
		|||
edit:add-var adguard~ [@argv]{
 | 
			
		||||
  use str
 | 
			
		||||
  sudo chattr -i /etc/resolv.conf
 | 
			
		||||
  local:beg = 's|^.*\(192\.168\.0\.25\)|'
 | 
			
		||||
  local:end = 'nameserver \1|'
 | 
			
		||||
  if (and (> (count $argv) 0) (str:has-prefix $argv[0] u)) {
 | 
			
		||||
    end = '# '$end
 | 
			
		||||
  }
 | 
			
		||||
  sudo sed -i $beg$end /etc/resolv.conf
 | 
			
		||||
  sudo chattr +i /etc/resolv.conf
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										16
									
								
								aliases/aliases.elv
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								aliases/aliases.elv
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,16 @@
 | 
			
		|||
edit:add-var cat~ [@argv]{ e:bat -pp --tabs 2 $@argv }
 | 
			
		||||
edit:add-var cp~ [@argv]{ e:cp -iv $@argv }
 | 
			
		||||
edit:add-var curl~ $e:curlie~
 | 
			
		||||
edit:add-var df~ $e:duf~
 | 
			
		||||
edit:add-var diff~ $e:colordiff~
 | 
			
		||||
edit:add-var dig~ [@argv]{ e:dig +noall +answer $@argv }
 | 
			
		||||
edit:add-var dogall~ [@argv]{ e:dog A AAAA CNAME $@argv }
 | 
			
		||||
edit:add-var du~ [@argv]{ e:du -h $@argv }
 | 
			
		||||
edit:add-var git~ $e:hub~
 | 
			
		||||
edit:add-var grep~ [@argv]{ e:grep --color=tty -d skip $@argv }
 | 
			
		||||
edit:add-var mv~ [@argv]{ e:mv -iv $@argv }
 | 
			
		||||
edit:add-var pf~ [@argv]{ e:pkgfile -vri $@argv }
 | 
			
		||||
edit:add-var rm~ [@argv]{ e:rm -Iv $@argv }
 | 
			
		||||
edit:add-var rename~ $e:go-rename~
 | 
			
		||||
edit:add-var timidity~ [@argv]{ e:timidity -a -K 1 $@argv }
 | 
			
		||||
edit:add-var tree~ [@argv]{ e:tree -puhC --dirsfirst --du -D $@argv }
 | 
			
		||||
							
								
								
									
										36
									
								
								aliases/cleankh.elv
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								aliases/cleankh.elv
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,36 @@
 | 
			
		|||
edit:add-var cleankh~ [@argv]{
 | 
			
		||||
  use str
 | 
			
		||||
  use moi/util/condition
 | 
			
		||||
  use moi/util/list
 | 
			
		||||
  use moi/util/ip
 | 
			
		||||
  fn less [cmp e1 e2]{ < ($cmp $e1 $e2) 0 }
 | 
			
		||||
  fn sort-host [e1 e2]{
 | 
			
		||||
    local:i1 = (condition:cset (ip:is-ip $e1) 1 0)
 | 
			
		||||
    local:i2 = (condition:cset (ip:is-ip $e2) 1 0)
 | 
			
		||||
    if (!= $i1 $i2) {
 | 
			
		||||
      < $i1 $i2
 | 
			
		||||
    } elif (== $i1 0) {
 | 
			
		||||
      <s $e1 $e2
 | 
			
		||||
    } else {
 | 
			
		||||
      less $ip:cmp~ $e1 $e2
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  local:khosts = [&]
 | 
			
		||||
  cat ~/.ssh/known_hosts | eawk [_ hosts @rest]{
 | 
			
		||||
    local:key = (str:join ' ' $rest)
 | 
			
		||||
    if (not (has-key $khosts $key)) {
 | 
			
		||||
      khosts[$key] = [&]
 | 
			
		||||
    }
 | 
			
		||||
    str:split , $hosts | each [h]{
 | 
			
		||||
      khosts[$key][$h] = $nil
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
  
 | 
			
		||||
  local:lines = [(keys $khosts | each [key]{
 | 
			
		||||
    local:hosts = (keys $khosts[$key] | order &less-than=$sort-host~ | str:join ,)
 | 
			
		||||
    put $hosts $key | str:join ' '
 | 
			
		||||
  })]
 | 
			
		||||
  echo (str:join "\n" $lines) > ~/.ssh/known_hosts
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										20
									
								
								aliases/commitkcp.elv
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										20
									
								
								aliases/commitkcp.elv
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,20 @@
 | 
			
		|||
edit:add-var commitkcp~ [@argv]{
 | 
			
		||||
  use str
 | 
			
		||||
  local:m = [
 | 
			
		||||
    &name=
 | 
			
		||||
    &ver=
 | 
			
		||||
  ]
 | 
			
		||||
 | 
			
		||||
  keys $m | each [k]{
 | 
			
		||||
    local:p = 'pkg'$k'='
 | 
			
		||||
    m[$k] = (str:trim-prefix (cat PKGBUILD | grep $p | take 1) $p)
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  local:msg = $m[name]' '$m[ver]
 | 
			
		||||
  if (> (count $argv) 0) {
 | 
			
		||||
    msg = $msg' - '(str:join ' ' $argv)
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  echo "git commit -am '"$msg"' ; git push"
 | 
			
		||||
  git commit -am $msg; git push
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										49
									
								
								aliases/get-uid.elv
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										49
									
								
								aliases/get-uid.elv
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,49 @@
 | 
			
		|||
use re
 | 
			
		||||
use str
 | 
			
		||||
 | 
			
		||||
fn -value [v]{
 | 
			
		||||
  local:p = (re:find '^(\d+)\((\w+)\)$' $v)
 | 
			
		||||
  if (and (has-key $p groups) (== (count $p[groups]) 3)) {
 | 
			
		||||
    put [
 | 
			
		||||
      &number=$p[groups][1][text]
 | 
			
		||||
      &text=$p[groups][2][text]
 | 
			
		||||
    ]
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
fn -values [v]{
 | 
			
		||||
  local:vv = [ (str:split ',' $v) ]
 | 
			
		||||
  if (== (count $vv) 1) {
 | 
			
		||||
    -value $vv[0]
 | 
			
		||||
  } else {
 | 
			
		||||
    put [ (each $-value~ $vv) ]
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
fn -get-id []{
 | 
			
		||||
  local:id = [&]
 | 
			
		||||
  str:split ' ' (id) | each [e]{
 | 
			
		||||
    local:p = [ (str:split '=' $e) ]
 | 
			
		||||
    if (== (count $p) 2) {
 | 
			
		||||
      id[$p[0]] = (-values $p[1])
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
  put $id
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
fn -get [k]{
 | 
			
		||||
  local:id = (-get-id)
 | 
			
		||||
  if (has-key $id $k) {
 | 
			
		||||
    put $id[$k]
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
fn -is-root []{
 | 
			
		||||
  == (-get uid)[number] 0
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
edit:add-var get-id~ $-get-id~
 | 
			
		||||
edit:add-var get-uid~ []{ -get uid }
 | 
			
		||||
edit:add-var get-gid~ []{ -get gid }
 | 
			
		||||
edit:add-var get-groups~ []{ -get groups; -get groupes }
 | 
			
		||||
edit:add-var is-root~ $-is-root~
 | 
			
		||||
							
								
								
									
										19
									
								
								aliases/ipinfo.elv
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								aliases/ipinfo.elv
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,19 @@
 | 
			
		|||
edit:add-var ipinfo~ [@argv]{
 | 
			
		||||
  use moi/util/ip
 | 
			
		||||
  use str
 | 
			
		||||
 | 
			
		||||
  local:token = (cat $E:HOME/.config/elvish/private/ipinfo_token)
 | 
			
		||||
 | 
			
		||||
  fn url-of [ip]{
 | 
			
		||||
    str:join '' [ 'ipinfo.io/' $ip '?token=' $token]
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  fn info [ip]{
 | 
			
		||||
    if (ip:is-ip $ip) {
 | 
			
		||||
      local:url = (url-of $ip)
 | 
			
		||||
      echo 'URL: '$url
 | 
			
		||||
      e:curlie $url
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
  each $info~ $argv
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										104
									
								
								aliases/ipof.elv
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										104
									
								
								aliases/ipof.elv
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,104 @@
 | 
			
		|||
edit:add-var ipof~ [@argv]{
 | 
			
		||||
  use str
 | 
			
		||||
  use moi/util/condition
 | 
			
		||||
  use moi/util/ip
 | 
			
		||||
 | 
			
		||||
  fn less [cmp e1 e2]{ < ($cmp $e1 $e2) 0 }
 | 
			
		||||
 | 
			
		||||
  fn sort-ip [e1 e2]{
 | 
			
		||||
    local:i1 = (condition:cset (ip:is-ipv4 $e1) 0 (condition:cset (ip:is-ipv6 $e1) 1 2))
 | 
			
		||||
    local:i2 = (condition:cset (ip:is-ipv4 $e2) 0 (condition:cset (ip:is-ipv6 $e2) 1 2))
 | 
			
		||||
    if (!= $i1 $i2) {
 | 
			
		||||
      < $i1 $i2
 | 
			
		||||
    } elif (== $i1 2) {
 | 
			
		||||
      <s $e1 $e2
 | 
			
		||||
    } elif (== $i1 1) {
 | 
			
		||||
      less $ip:cmp6~ $e1 $e2
 | 
			
		||||
    } else {
 | 
			
		||||
      less $ip:cmp4~ $e1 $e2
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  fn dnssolve [d]{
 | 
			
		||||
    local:result = [
 | 
			
		||||
      &ips=[&]
 | 
			
		||||
      &resolvers=''
 | 
			
		||||
      &txt=''
 | 
			
		||||
    ]
 | 
			
		||||
    e:dnscrypt-proxy -config /etc/dnscrypt-proxy/dnscrypt-proxy.toml -resolve (idn -a $d) | peach [l]{
 | 
			
		||||
      local:l     = $l
 | 
			
		||||
      local:idx   = (+ (str:index $l :) 1)
 | 
			
		||||
      local:value = (str:trim-space $l[$idx".."])
 | 
			
		||||
      if (or (str:has-prefix $l 'IPv4 addresses') (str:has-prefix $l 'IPv6 addresses')) {
 | 
			
		||||
        str:split ', ' $value | peach [e]{
 | 
			
		||||
          local:e = $e
 | 
			
		||||
          if (ip:is-ip $e) {
 | 
			
		||||
            result[ips][$e] = $nil
 | 
			
		||||
          }
 | 
			
		||||
        }
 | 
			
		||||
      } elif (str:has-prefix $l 'TXT records') {
 | 
			
		||||
        result[txt] = $value
 | 
			
		||||
      } elif (str:has-prefix $l 'Resolver') {
 | 
			
		||||
        result[resolvers] = $value
 | 
			
		||||
      } elif (str:has-prefix $l 'Name servers') {
 | 
			
		||||
        result[remote] = (not-eq $value 'name does not exist')
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
    put $result
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  local:hosts = [&]
 | 
			
		||||
  cat /etc/hosts | peach [l]{
 | 
			
		||||
    local:l = $l
 | 
			
		||||
    l = (str:trim-space $l)
 | 
			
		||||
    if (and (not-eq $l '') (not-eq $l[0] '#')) {
 | 
			
		||||
      put $l
 | 
			
		||||
    }
 | 
			
		||||
  } | eawk [_ ip @domains]{
 | 
			
		||||
    peach [d]{
 | 
			
		||||
      local:d = $d
 | 
			
		||||
      if (has-key $hosts $d) {
 | 
			
		||||
        hosts[$d][$ip] = $nil
 | 
			
		||||
      } else {
 | 
			
		||||
        hosts[$d] = [&$ip=$nil]
 | 
			
		||||
      }
 | 
			
		||||
    } $domains
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  local:remote = [&]
 | 
			
		||||
  peach [d]{
 | 
			
		||||
    local:d = $d
 | 
			
		||||
    local:solve = (dnssolve $d)
 | 
			
		||||
    if (> (keys $solve[ips] | count) 0) {
 | 
			
		||||
      remote[$d] = $solve
 | 
			
		||||
    }
 | 
			
		||||
  } $argv
 | 
			
		||||
 | 
			
		||||
  each [d]{
 | 
			
		||||
    local:exists = $false
 | 
			
		||||
    echo (styled 'Resolving '$d'…' bright-green)
 | 
			
		||||
    echo
 | 
			
		||||
    if (has-key $hosts $d) {
 | 
			
		||||
      exists = $true
 | 
			
		||||
      echo (styled '  local:' bright-yellow)
 | 
			
		||||
      keys $hosts[$d] | order &less-than=$sort-ip~ | each [ip]{
 | 
			
		||||
        echo '    - '$ip
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
    if (and (has-key $remote $d) $remote[$d][remote]) {
 | 
			
		||||
      exists = $true
 | 
			
		||||
      local:info = $remote[$d]
 | 
			
		||||
      echo (styled '  remote:' bright-yellow)
 | 
			
		||||
      echo '    IPs:'
 | 
			
		||||
      keys $info[ips] | order &less-than=$sort-ip~ | each [ip]{
 | 
			
		||||
        echo '    - '$ip
 | 
			
		||||
      }
 | 
			
		||||
      echo '    Resolvers:   '$info[resolvers]
 | 
			
		||||
      echo '    TXT records: '$info[txt]
 | 
			
		||||
    }
 | 
			
		||||
    if (not $exists) {
 | 
			
		||||
      echo (styled 'No info found' bright-red)
 | 
			
		||||
    }
 | 
			
		||||
    echo
 | 
			
		||||
  } $argv
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										6
									
								
								aliases/listarchiver.elv
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								aliases/listarchiver.elv
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,6 @@
 | 
			
		|||
edit:add-var listarchiver~ [@argv]{
 | 
			
		||||
  peach [f]{
 | 
			
		||||
    local:f = $f
 | 
			
		||||
    e:arc ls $f
 | 
			
		||||
  } $argv
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										82
									
								
								aliases/pdf2grey.elv
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										82
									
								
								aliases/pdf2grey.elv
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,82 @@
 | 
			
		|||
edit:add-var pdf2grey~ [@argv]{
 | 
			
		||||
  use re
 | 
			
		||||
  use str
 | 
			
		||||
  local:m = [
 | 
			
		||||
    &nb=$false
 | 
			
		||||
    &split=50
 | 
			
		||||
  ]
 | 
			
		||||
 | 
			
		||||
  fn _help []{
 | 
			
		||||
    echo 'Usage: pdf2gray [-hn (<n>)] <input>.pdf <output>.pdf'
 | 
			
		||||
    echo ''
 | 
			
		||||
    echo 'Options:'
 | 
			
		||||
    echo '  -h         Affiche cette aide'
 | 
			
		||||
    echo '  -n [0-100] Convertit en noir et blanc. Si un nombre est spécifié, indique le pourcentage de coupure (par défaut: 50)'
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  fn is_pdf [e]{
 | 
			
		||||
    re:match '.*\.pdf$' $e
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  fn is_int [e]{
 | 
			
		||||
    re:match '^\d+$' $e
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  fn is_split [e]{
 | 
			
		||||
    and (>= $e 0) (<= $e 100)
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  while (> (count $argv) 0) {
 | 
			
		||||
    local:e @argv = $@argv
 | 
			
		||||
    if (or (eq $e '-h') (eq $e '--help')) {
 | 
			
		||||
      _help
 | 
			
		||||
      return
 | 
			
		||||
    } elif (eq $e -n) {
 | 
			
		||||
      m[nb] = $true
 | 
			
		||||
      if (== (count $e) 0) {
 | 
			
		||||
        echo 'Il manque des arguments après -s'
 | 
			
		||||
        _help
 | 
			
		||||
        return
 | 
			
		||||
      } elif (is_int $argv[0]) {
 | 
			
		||||
        e @argv = $@argv
 | 
			
		||||
        if (is_split $e) {
 | 
			
		||||
          m[split] = $e
 | 
			
		||||
        } else {
 | 
			
		||||
          echo 'L’argument (optionnel) après -s doit être compris entre 0 et 100'
 | 
			
		||||
          _help
 | 
			
		||||
          return
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
    } elif (not (is_pdf $e)) {
 | 
			
		||||
      echo 'Argument non reconnu: '$e
 | 
			
		||||
      _help
 | 
			
		||||
      return
 | 
			
		||||
    } elif (not (has-key $m input)) {
 | 
			
		||||
      m[input] = $e
 | 
			
		||||
    } else {
 | 
			
		||||
      m[output] = $e
 | 
			
		||||
      if (> (count $argv) 0) {
 | 
			
		||||
        echo 'Trop d’arguments: '$@argv
 | 
			
		||||
        _help
 | 
			
		||||
        return
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
  if (not (has-key $m input)) {
 | 
			
		||||
    echo 'Manque le input'
 | 
			
		||||
    _help
 | 
			
		||||
    return
 | 
			
		||||
  } elif (not (has-key $m output)) {
 | 
			
		||||
    echo 'Manque le output'
 | 
			
		||||
    _help
 | 
			
		||||
    return
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  local:params = [-colorspace gray]
 | 
			
		||||
  if $m[nb] {
 | 
			
		||||
    @params = (all $params) -threshold $m[split]'%'
 | 
			
		||||
  }
 | 
			
		||||
  @params = $@params $m[input] $m[output]
 | 
			
		||||
  echo 'Commande: convert '(str:join ' ' $params)
 | 
			
		||||
  convert $@params
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										11
									
								
								aliases/sendsms.elv
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								aliases/sendsms.elv
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,11 @@
 | 
			
		|||
edit:add-var sendsms~ [@argv]{
 | 
			
		||||
  use str
 | 
			
		||||
 | 
			
		||||
  local:api   = https://smsapi.free-mobile.fr/sendmsg
 | 
			
		||||
  local:param = (cat $E:HOME/.config/elvish/private/freesms.json | from-json)
 | 
			
		||||
  local:msg   = (str:join '%20' $argv)
 | 
			
		||||
 | 
			
		||||
  local:url = $api'?user='$param[user]'&pass='$param[password]'&msg='$msg
 | 
			
		||||
  #put $url
 | 
			
		||||
  curl $url
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										2
									
								
								aliases/translate.elv
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								aliases/translate.elv
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,2 @@
 | 
			
		|||
edit:add-var trsen~ [@argv]{ e:rlwrap trans -b -t en $@argv }
 | 
			
		||||
edit:add-var trsfr~ [@argv]{ e:rlwrap trans -b -t fr $@argv }
 | 
			
		||||
							
								
								
									
										16
									
								
								aliases/vivaldiprofile.elv
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								aliases/vivaldiprofile.elv
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,16 @@
 | 
			
		|||
fn -sync [d1 d2]{
 | 
			
		||||
  rsync -azh --delete --info=progress2,stats ~/.config/$d1/ ~/.config/$d2/
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
fn -save [d]{
 | 
			
		||||
  -sync $d $d.save
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
fn -restore [d]{
 | 
			
		||||
  -sync $d.save $d
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
edit:add-var viv-save~ []{ -save vivaldi }
 | 
			
		||||
edit:add-var viv-restore~ []{ -restore vivaldi }
 | 
			
		||||
edit:add-var vivd-save~ []{ -save vivaldi-developer }
 | 
			
		||||
edit:add-var vivd-restore~ []{ -restore vivaldi-developer }
 | 
			
		||||
							
								
								
									
										6
									
								
								lib/moi/alias.elv
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								lib/moi/alias.elv
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,6 @@
 | 
			
		|||
local:dir = ~/.config/elvish/aliases
 | 
			
		||||
 | 
			
		||||
for file [(_ = ?(put $dir/*.elv))] {
 | 
			
		||||
  content = (cat $file | slurp)
 | 
			
		||||
  eval $content
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										24
									
								
								lib/moi/completion/use.elv
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								lib/moi/completion/use.elv
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,24 @@
 | 
			
		|||
local:libdir          = $E:HOME/.config/elvish/lib
 | 
			
		||||
local:builtin_modules = [
 | 
			
		||||
  builtin
 | 
			
		||||
  epm
 | 
			
		||||
  file
 | 
			
		||||
  math
 | 
			
		||||
  path
 | 
			
		||||
  re
 | 
			
		||||
  readline-binding
 | 
			
		||||
  store
 | 
			
		||||
  str
 | 
			
		||||
  unix
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
edit:completion:arg-completer[use] = [@argv]{
 | 
			
		||||
  use str
 | 
			
		||||
  use path
 | 
			
		||||
  all $builtin_modules
 | 
			
		||||
  put $libdir/**.elv | each [f]{
 | 
			
		||||
    if (path:is-regular $f) {
 | 
			
		||||
      str:trim-prefix $f $libdir/
 | 
			
		||||
    }
 | 
			
		||||
  } | each [f]{ str:trim-suffix $f .elv }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										42
									
								
								lib/moi/util/common.elv
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										42
									
								
								lib/moi/util/common.elv
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,42 @@
 | 
			
		|||
edit:add-var ++~ [n]{ + $n 1 }
 | 
			
		||||
edit:add-var --~ [n]{ + $n 1 }
 | 
			
		||||
 | 
			
		||||
edit:add-var sign~ [n]{
 | 
			
		||||
  if (> $n 0) {
 | 
			
		||||
    put 1
 | 
			
		||||
  } elif (< $n 0) {
 | 
			
		||||
    put -1
 | 
			
		||||
  } else {
 | 
			
		||||
    put 0
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
edit:add-var neg~ [n]{ * $n -1 }
 | 
			
		||||
edit:add-var abs~ [n]{
 | 
			
		||||
  if (< $n 0) {
 | 
			
		||||
    neg $n
 | 
			
		||||
  } else {
 | 
			
		||||
    put $n
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
edit:add-var sum~ [@numbers]{
 | 
			
		||||
  local:s = 0
 | 
			
		||||
  each [e]{ s = (+ $s e) } (to-list $numbers)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
fn -minmax [t @numbers]{
 | 
			
		||||
  local:l = (to-list $@numbers)
 | 
			
		||||
  if (== (count $l) 0) {
 | 
			
		||||
    return
 | 
			
		||||
  }
 | 
			
		||||
  local:m = $l[0]
 | 
			
		||||
  each [n]{
 | 
			
		||||
    if ($t $n $m) {
 | 
			
		||||
        m = $n
 | 
			
		||||
    }
 | 
			
		||||
  } $l[1..]
 | 
			
		||||
  put $m
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
edit:add-var min~ [@numbers]{ -minmax $'<~' $@numbers }
 | 
			
		||||
edit:add-var max~ [@numbers]{ -minmax $'>~' $@numbers }
 | 
			
		||||
		Loading…
	
	Add table
		
		Reference in a new issue