Skip to content

Instantly share code, notes, and snippets.

Avatar

Henrik Lissner hlissner

View GitHub Profile
@hlissner
hlissner / iptables.sh
Last active Apr 18, 2019
Iptables default rules
View iptables.sh
#!/bin/bash
IPT="/sbin/iptables"
#### IPS ######
# Get server public ip
SERVER_IP=$(ifconfig eth0 | grep 'inet addr:' | awk -F'inet addr:' '{ print $2}' | awk '{ print $1}')
#### FILES #####
BLOCKED_IP_TDB=/root/.fw/blocked.ip.txt
SPOOFIP="127.0.0.0/8 192.168.0.0/16 172.16.0.0/12 10.0.0.0/8 169.254.0.0/16 0.0.0.0/8 240.0.0.0/4 255.255.255.255/32 168.254.0.0/16 224.0.0.0/4 240.0.0.0/5 248.0.0.0/5 192.0.2.0/24"
@hlissner
hlissner / replace.sh
Last active Sep 26, 2020
Bulk search & replace with ag (the_silver_searcher)
View replace.sh
# ag <https://github.com/ggreer/the_silver_searcher>
# usage: ag-replace.sh [search] [replace]
# caveats: will choke if either arguments contain a forward slash
# notes: will back up changed files to *.bak files
ag -0 -l $1 | xargs -0 perl -pi.bak -e "s/$1/$2/g"
# or if you prefer sed's regex syntax:
ag -0 -l $1 | xargs -0 sed -ri.bak -e "s/$1/$2/g"
@hlissner
hlissner / repeat-match.vim
Created Sep 6, 2014
Using . to repeat last f/F/t/T match in vim
View repeat-match.vim
" I remap the leader/localleader, and ; to alias :, but what if I like , and ;?
let mapleader = ','
noremap ; :
" Makes f, F, t and T repeat the search. Support repeating with .
nnoremap <Plug>NextMatch ;
nnoremap <silent> f :<C-u>call repeat#set("\<lt>Plug>NextMatch")<CR>f
nnoremap <silent> F :<C-u>call repeat#set("\<lt>Plug>NextMatch")<CR>F
nnoremap <silent> t :<C-u>call repeat#set("\<lt>Plug>NextMatch")<CR>t
nnoremap <silent> T :<C-u>call repeat#set("\<lt>Plug>NextMatch")<CR>T
@hlissner
hlissner / lb6.js
Last active Mar 14, 2019
LaunchBar 6 API stubs (for ternjs)
View lb6.js
/**
* LaunchBar Javascript API (see http://www.obdev.at/products/launchbar/index.html)
*
* For use with auto-completion libraries.
*/
// Included to hide "unused function" warnings
run();
runWithItem({});
runWithPaths({});
@hlissner
hlissner / evil-ex-replace-special-filenames.el
Last active May 8, 2017
A simple hack to add several substitutions to evil-mode's :ex mode, other than % and #...
View evil-ex-replace-special-filenames.el
;; A hack to add vim file modifiers to evil-mode's ex commandline:
;;
;; Requires projectile (https://github.com/bbatsov/projectile) for
;; project-awareness, and f.el (https://github.com/rejeep/f.el) for file
;; functions.
(defun +evil*ex-replace-special-filenames (file-name)
"Replace special symbols in FILE-NAME. Modified to include other substitution
flags. See http://vimdoc.sourceforge.net/htmldoc/cmdline.html#filename-modifiers."
(let* (case-fold-search
(regexp (concat "\\(?:^\\|[^\\\\]\\)"
@hlissner
hlissner / ace-jump-two-char.el
Last active Sep 20, 2018
Make ace-jump do a two-char search (like vim-sneak)
View ace-jump-two-char.el
;; Thanks to: https://github.com/winterTTr/ace-jump-mode/issues/23
(defun ace-jump-two-chars-mode (&optional query-char query-char-2)
"AceJump two chars mode"
(interactive)
(evil-half-cursor)
(setq query-char (or query-char (read-char ">")))
(setq query-char-2 (or query-char-2 (read-char (concat ">" (string query-char)))))
(if (eq (ace-jump-char-category query-char) 'other)
@hlissner
hlissner / dyndns-linode.sh
Created Dec 23, 2015
Steps to set up a linode-based dyndns
View dyndns-linode.sh
# This is not a script! These are notes!
KEY=
DOMAINID=
RESOURCE_ID=
# Getting the domain ID
https://api.linode.com/?api_key=$KEY&api_action=domain.list
# Getting the resource ID
@hlissner
hlissner / codesign_gdb.md
Last active Oct 24, 2020
Codesign gdb on OSX
View codesign_gdb.md
@hlissner
hlissner / git-gutter.el
Last active Sep 13, 2020
My Emacs git-gutter configuration, paraphrased
View git-gutter.el
(defconst doom-fringe-size '3 "Default fringe width")
;;; Setting up the fringe
;; switches order of fringe and margin
(setq-default fringes-outside-margins t)
;; standardize fringe width
(fringe-mode doom-fringe-size)
(push `(left-fringe . ,doom-fringe-size) default-frame-alist)
(push `(right-fringe . ,doom-fringe-size) default-frame-alist)
View keybase.md

Keybase proof

I hereby claim:

  • I am hlissner on github.
  • I am hlissner (https://keybase.io/hlissner) on keybase.
  • I have a public key whose fingerprint is 0ABF F606 54D7 AEAF C9CC 27CE 5F6C 0EA1 6055 7395

To claim this, I am signing this object:

You can’t perform that action at this time.