diff --git a/Xresources/general b/Xresources/general index 6c8c75e..bddf496 100644 --- a/Xresources/general +++ b/Xresources/general @@ -1,6 +1,6 @@ ! High DPI settings ! Xft.dpi: 180 -*dpi: 108 +*dpi: 120 ! Xft.dpi: 150 *autohint: 0 @@ -10,10 +10,10 @@ *antialias: 1 *rgba: rgb -URxvt.font: xft:DejaVu Sans Mono:size=14 -URxvt.boldFont: xft:DejaVu Sans Mono:size=14:style=Bold -URxvt.italicFont: xft:DejaVu Sans Mono:size=14:style=Oblique -URxvt.boldItalicFont: xft:DejaVu Sans Mono:size=14:style=Bold Oblique +URxvt.font: xft:DejaVu Sans Mono +URxvt.boldFont: xft:DejaVu Sans Mono:style=Bold +URxvt.italicFont: xft:DejaVu Sans Mono:style=Oblique +URxvt.boldItalicFont: xft:DejaVu Sans Mono:style=Bold Oblique URxvt.letterSpace: -2 URxvt.buffered: false diff --git a/Xresources/urxvt b/Xresources/urxvt index 71912ec..480cc76 100644 --- a/Xresources/urxvt +++ b/Xresources/urxvt @@ -2,7 +2,7 @@ URxvt.scrollBar: false ! Allow clicking URLs -URxvt.perl-ext-common: default,matcher,new-window,selection-to-clipboard,close-prevent +URxvt.perl-ext-common: default,matcher,new-window,selection-to-clipboard,close-prompt URxvt.url-launcher: sensible-browser URxvt.matcher.button: 1 diff --git a/emacs.el b/emacs.el index b2f482f..adf1060 100644 --- a/emacs.el +++ b/emacs.el @@ -2,6 +2,8 @@ (require 'package) (add-to-list 'package-archives '("MELPA Stable" . "https://stable.melpa.org/packages/") t) +;; (add-to-list 'package-archives +;; '("MELPA" . "https://melpa.org/packages/") t) (package-initialize) @@ -16,9 +18,15 @@ '(agda2-program-args nil) '(blink-cursor-mode nil) '(echo-keystrokes 1e-10) + '(haskell-indentation-where-post-offset 0) + '(haskell-indentation-where-pre-offset 0) + '(js-indent-level 2) + '(markdown-command "pandoc -t html") '(package-selected-packages (quote - (ssh-agency dash yaml-mode restart-emacs markdown-mode magit helm haml-mode form-feed dashboard)))) + (purescript-mode markdown-mode+ ssh-agency dash yaml-mode restart-emacs markdown-mode magit helm haml-mode form-feed dashboard))) + '(purescript-mode-hook (quote (turn-on-purescript-indentation)) t) + '(sgml-basic-offset 1)) (menu-bar-mode -1) (tool-bar-mode -1) @@ -31,10 +39,26 @@ (add-to-list 'Info-default-directory-list "~/.config/emacs/libs/haskell-mode/") (add-to-list 'load-path "~/.config/emacs/libs/agda-mode/") (add-to-list 'Info-default-directory-list "~/.config/emacs/libs/agda-mode/") +(add-to-list 'load-path "~/.config/emacs/libs/purescript-mode/") +(add-to-list 'Info-default-directory-list "~/.config/emacs/libs/purescript-mode/") +(add-to-list 'load-path "~/.config/emacs/libs/psc-ide-emacs/") +(add-to-list 'Info-default-directory-list "~/.config/emacs/libs/psc-ide-emacs/") + +(require 'purescript-mode-autoloads) + +(require 'psc-ide) + +(add-hook 'purescript-mode-hook + (lambda () + (psc-ide-mode) + (company-mode) + (flycheck-mode) + (turn-on-purescript-indentation))) ;; (load-file (let ((coding-system-for-read 'utf-8)) -;; (shell-command-to-string "agda-mode locate"))) +;; "/home/fredefox/.cabal/store/ghc-8.4.4/Agda-2.6.0-eb370edb312aa9c0898503c71027e277278a4f3b94a09bc4e57221769a05cada/share/emacs-mode/agda2.el")) +;; Temp disabled. (require 'agda2-mode) @@ -64,6 +88,7 @@ ;;;; Dashboard (dashboard-setup-startup-hook) +(setq initial-buffer-choice (lambda () (get-buffer "*dashboard*"))) ;; (setq dashboard-startup-banner 'logo) @@ -92,11 +117,13 @@ (global-unset-key (kbd "C-z")) -(require 'haskell-unicode-input-method) -(add-hook 'haskell-mode-hook - (lambda () (set-input-method "haskell-unicode"))) +;; Temp. disabled +;; (require 'haskell-unicode-input-method) +;; (add-hook 'haskell-mode-hook +;; (lambda () (set-input-method "haskell-unicode"))) (global-set-key (kbd "C-x g") 'magit-status) +(global-set-key (kbd "C-x M-g") 'magit-dispatch-popup) (show-paren-mode) @@ -115,7 +142,7 @@ ;; If there is more than one, they won't work right. ) -(setq initial-buffer-choice (lambda () (get-buffer "*dashboard*"))) +;; (setq initial-buffer-choice (lambda () (get-buffer "*dashboard*"))) (setq dashboard-startup-banner "/home/fredefox/.local/share/emacs/fredefox.svg") (setq dashboard-items '((recents . 40))) diff --git a/ghci b/ghci new file mode 100644 index 0000000..3bc6db2 --- /dev/null +++ b/ghci @@ -0,0 +1,51 @@ +-- Language extensions +:set -XBangPatterns +:set -XBinaryLiterals +:set -XConstraintKinds +:set -XDefaultSignatures +:set -XDeriveAnyClass +:set -XDeriveDataTypeable +:set -XDeriveFoldable +:set -XDeriveFunctor +:set -XDeriveGeneric +:set -XDeriveLift +:set -XDeriveTraversable +:set -XDerivingStrategies +:set -XDisambiguateRecordFields +:set -XDuplicateRecordFields +:set -XEmptyCase +:set -XEmptyDataDecls +:set -XExistentialQuantification +:set -XExplicitForAll +:set -XFlexibleContexts +:set -XFlexibleInstances +:set -XFunctionalDependencies +:set -XGADTs +:set -XGeneralisedNewtypeDeriving +:set -XInstanceSigs +:set -XLambdaCase +:set -XMultiParamTypeClasses +:set -XMultiWayIf +:set -XNamedFieldPuns +:set -XNamedWildCards +:set -XNumDecimals +:set -XPackageImports +:set -XPartialTypeSignatures +:set -XQuasiQuotes +:set -XRankNTypes +:set -XRecordWildCards +:set -XScopedTypeVariables +:set -XStandaloneDeriving +:set -XTypeApplications +:set -XTypeFamilies +:set -XUnicodeSyntax + +-- Interface options +:set -fdefer-type-errors +:set -fno-show-valid-substitutions +:set -fmax-valid-substitutions=0 +:set -fprint-unicode-syntax +:set -Wincomplete-patterns +:set -Wcompat +:set prompt "λ " +:set prompt-cont "… " diff --git a/git/config b/git/config new file mode 100644 index 0000000..0cd4c2e --- /dev/null +++ b/git/config @@ -0,0 +1,6 @@ +[user] + name = Frederik Hanghøj Iversen + email = fhi.1990@gmail.com +[core] + excludesfile = /home/fredefox/.config/git/ignore + editor = emacs -nw diff --git a/git/ignore b/git/ignore new file mode 100644 index 0000000..bf7604d --- /dev/null +++ b/git/ignore @@ -0,0 +1,2 @@ +*~ +*# diff --git a/i3.config b/i3/config similarity index 100% rename from i3.config rename to i3/config diff --git a/i3blocks.config b/i3blocks.config deleted file mode 100644 index 5b19fcb..0000000 --- a/i3blocks.config +++ /dev/null @@ -1,153 +0,0 @@ -# i3blocks config file -# -# Please see man i3blocks for a complete reference! -# The man page is also hosted at http://vivien.github.io/i3blocks -# -# List of valid properties: -# -# align -# color -# command -# full_text -# instance -# interval -# label -# min_width -# name -# separator -# separator_block_width -# short_text -# signal -# urgent - -# Global properties -# -# The top properties below are applied to every block, but can be overridden. -# Each block command defaults to the script name to avoid boilerplate. -command=/usr/share/i3blocks/$BLOCK_NAME -separator_block_width=15 -markup=none - -# Volume indicator -# -# The first parameter sets the step (and units to display) -# The second parameter overrides the mixer selection -# See the script for details. -[volume] -#label=VOL -label=♪ -instance=Master -#instance=PCM -interval=1 -signal=10 - -# Memory usage -# -# The type defaults to "mem" if the instance is not specified. -[memory] -label=MEM -separator=false -interval=30 - -[memory] -label=SWAP -instance=swap -separator=false -interval=30 - -# Disk usage -# -# The directory defaults to $HOME if the instance is not specified. -# The script may be called with a optional argument to set the alert -# (defaults to 10 for 10%). -# [disk] -# label=HOME -# #instance=/mnt/data -# interval=30 - -# Network interface monitoring -# -# If the instance is not specified, use the interface used for default route. -# The address can be forced to IPv4 or IPv6 with -4 or -6 switches. -[iface] -#instance=wlan0 -color=#00FF00 -interval=10 -separator=false - -[wifi] -#instance=wlp3s0 -interval=10 -separator=false - -# [bandwidth] -# #instance=eth0 -# interval=5 - -# CPU usage -# -# The script may be called with -w and -c switches to specify thresholds, -# see the script for details. -[cpu_usage] -label=CPU -interval=10 -min_width=CPU: 100.00% -#separator=false - -#[load_average] -#interval=10 - -# Battery indicator -# -# The battery instance defaults to 0. -[battery] -#label=BAT -label=⚡ -#instance=1 -interval=30 - -# Date Time -# -[time] -command=date '+%Y-%m-%d %H:%M:%S' -interval=1 - -# Generic media player support -# -# This displays "ARTIST - SONG" if a music is playing. -# Supported players are: spotify, vlc, audacious, xmms2, mplayer, and others. -#[mediaplayer] -#instance=spotify -#interval=5 -#signal=10 - -# OpenVPN support -# -# Support multiple VPN, with colors. -#[openvpn] -#interval=20 - -# Temperature -# -# Support multiple chips, though lm-sensors. -# The script may be called with -w and -c switches to specify thresholds, -# see the script for details. -#[temperature] -#label=TEMP -#interval=10 - -# Key indicators -# -# Add the following bindings to i3 config file: -# -# bindsym --release Caps_Lock exec pkill -SIGRTMIN+11 i3blocks -# bindsym --release Num_Lock exec pkill -SIGRTMIN+11 i3blocks -#[keyindicator] -#instance=CAPS -#interval=once -#signal=11 - -#[keyindicator] -#instance=NUM -#interval=once -#signal=11 diff --git a/xinit/xinitrc b/xinit/xinitrc new file mode 100755 index 0000000..73437dc --- /dev/null +++ b/xinit/xinitrc @@ -0,0 +1,12 @@ +#!/usr/bin/env bash + +# Daemons +# Perhaps this sort of thing belongs elsewhere? +nm-applet & +emacs --daemon + +setxkbmap -option grp:win_space_toggle -layout us,dk +xrdb -merge ~/.Xresources + +# Nice for urxvt, not so nice for emacs: +# autocutsel -f diff --git a/zshrc b/zsh/config similarity index 63% rename from zshrc rename to zsh/config index 40b5509..912d949 100644 --- a/zshrc +++ b/zsh/config @@ -1,30 +1,3 @@ -# Path to your oh-my-zsh installation. -export ZSH="/home/fredefox/.oh-my-zsh" - -ZSH_THEME="robbyrussell" - -CASE_SENSITIVE="false" - -# Uncomment the following line to disable bi-weekly auto-update checks. -DISABLE_AUTO_UPDATE="false" - -export UPDATE_ZSH_DAYS=50 - -# Uncomment the following line if you want to disable marking untracked files -# under VCS as dirty. This makes repository status check for large repositories -# much, much faster. -DISABLE_UNTRACKED_FILES_DIRTY="true" - -# Which plugins would you like to load? (plugins can be found in ~/.oh-my-zsh/plugins/*) -# Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/ -# Example format: plugins=(rails git textmate ruby lighthouse) -# Add wisely, as too many plugins slow down shell startup. -plugins=( - git -) - -source $ZSH/oh-my-zsh.sh - # # User configuration @@ -71,7 +44,7 @@ unsetopt autocd beep bindkey -e # End of lines configured by zsh-newuser-install -export PATH="$HOME/.local/bin:$PATH" +# export PATH="$HOME/.local/bin:$PATH" alias sb="stack build" alias gp="git add -p" # source $HOME/.config/gf/config diff --git a/zsh/init b/zsh/init new file mode 100644 index 0000000..2bddd22 --- /dev/null +++ b/zsh/init @@ -0,0 +1,3 @@ +HERE="$HOME/.config/zsh" +source "$HERE/oh-my-zsh" +source "$HERE/config" diff --git a/zsh/oh-my-zsh b/zsh/oh-my-zsh new file mode 100644 index 0000000..ed0fa8f --- /dev/null +++ b/zsh/oh-my-zsh @@ -0,0 +1,26 @@ +# Path to your oh-my-zsh installation. +export ZSH="$HOME/.config/oh-my-zsh" + +ZSH_THEME="robbyrussell" + +CASE_SENSITIVE="false" + +# Uncomment the following line to disable bi-weekly auto-update checks. +DISABLE_AUTO_UPDATE="false" + +export UPDATE_ZSH_DAYS=50 + +# Uncomment the following line if you want to disable marking untracked files +# under VCS as dirty. This makes repository status check for large repositories +# much, much faster. +DISABLE_UNTRACKED_FILES_DIRTY="true" + +# Which plugins would you like to load? (plugins can be found in ~/.oh-my-zsh/plugins/*) +# Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/ +# Example format: plugins=(rails git textmate ruby lighthouse) +# Add wisely, as too many plugins slow down shell startup. +plugins=( + git +) + +source $ZSH/oh-my-zsh.sh