--- /dev/null
+output eDP-1
+off
+output DP-1
+off
+output DP-2
+off
+output DP-2-1
+off
+output DP-2-3
+off
+output DP-2-2
+crtc 1
+mode 2560x1440
+pos 0x0
+rate 59.95
+x-prop-audio auto
+x-prop-broadcast_rgb Automatic
+x-prop-max_bpc 12
+x-prop-non_desktop 0
--- /dev/null
+DP-2-2 00ffffffffffff004c2d17104256423032300103803f24782ac8b5ad50449e250f5054bfef80714f810081c081809500a9c0b3000101ca2e90a0601a234030203600ffff0000001e000000fd00324b1e8721000a202020202020000000fc004c5532385235350a2020202020000000ff00484e4d4e3530303035340a20200112020335f04900120313041f10005f2309070783010000e30500006b030c001000b03c200020016700000000000000e20f81e3060501023a801871382d40582c450078682100001e023a80d072382d40102c458078682100001e04740030f2705a80b0588a0078682100001e565e00a0a0a029503020350078682100001a0000d7
[[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"
+export PATH="$PATH:$HOME/scripts"
;; Use light theme
;;(load-theme 'leuven t)
+(require 'modus-themes)
(load-theme 'modus-operandi t)
+(setq modus-themes-mixed-fonts t)
;; ESS - for working in R
(autoload 'R-mode "ess-site.el" "Major mode for editing R source." t)
(require 'org)
+;; Automatically flow lines based on window width and use
+;; variable width fonts in org-mode.
+(add-hook 'org-mode-hook 'visual-line-mode)
+(add-hook 'org-mode-hook 'variable-pitch-mode)
+
;; Auctex
(load "auctex.el" nil t t)
(load "preview-latex.el" nil t t)
(require 'mu4e)
(setq mail-user-agent 'mu4e-user-agent)
(setq mu4e-get-mail-command "mbsync io")
+(setq mu4e-update-interval 600)
(setq mu4e-use-fancy-chars t)
(setq mu4e-view-show-images t)
(setq mu4e-sent-folder "/Sent"
mu4e-drafts-folder "/Drafts"
mu4e-trash-folder "/Trash")
-
+;; Create custom spam status header and show in message view
+(add-to-list 'mu4e-header-info-custom
+ '(:spam-status .
+ ( :name "Spam-Status" ;; long name, as seen in the message-view
+ :shortname "Spam" ;; short name, as seen in the headers view
+ :help "The Spam status" ;; tooltip
+ ;; uses mu4e-fetch-field which is rel. slow, so only appropriate
+ ;; for mu4e-view-fields, and _not_ mu4e-headers-fields
+ :function (lambda (msg)
+ (or (string-join (seq-take (split-string (mu4e-fetch-field msg "X-Spam-Status") " ") 2) " ") "")))))
+(add-to-list 'mu4e-view-fields :spam-status)
+b
;; Load configuration for website
;(load "mustache-html")
# and nm-applet is a desktop environment-independent system tray GUI for it.
exec --no-startup-id nm-applet
+## Control brightness
+bindsym XF86MonBrightnessUp exec --no-startup-id brightnessctl set +5%
+bindsym XF86MonBrightnessDown exec --no-startup-id brightnessctl set 5%-
+
# Use pactl to adjust volume in PulseAudio.
+# Notification via dunst - TODO refactor as per https://github.com/dunst-project/dunst/blob/master/contrib/progress-notify.sh
+exec --no-startup-id dunst
+
set $refresh_i3status killall -SIGUSR1 i3status
-bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +10% && $refresh_i3status
-bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -10% && $refresh_i3status
-bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle && $refresh_i3status
+bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +10% && $refresh_i3status && dunstify -a "changeVolume" -u low -i audio-volume-medium \
+ -h int:value:"$(pamixer --get-volume)" "Volume: $(pamixer --get-volume)%" \
+ -h string:x-dunst-stack-tag:volume \
+ -h string:hlcolor:#3397ff
+bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -10% && \
+$refresh_i3status && \
+dunstify -a "changeVolume" -u low -i audio-volume-low \
+ -h int:value:"$(pamixer --get-volume)" "Volume: $(pamixer --get-volume)%" \
+ -h string:x-dunst-stack-tag:volume \
+ -h string:hlcolor:#3397ff
+
+bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle && $refresh_i3status && dunstify -t 2000 -u low -i audio-volume-muted \
+-h string:x-dunst-stack-tag:volume "Muted"
+
bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle && $refresh_i3status
# Use Mouse+$mod to drag floating windows to their wanted position
--- /dev/null
+# i3status configuration file.
+# see "man i3status" for documentation.
+
+# It is important that this file is edited as UTF-8.
+# The following line should contain a sharp s:
+# ß
+# If the above line is not correctly displayed, fix your editor first!
+
+general {
+ colors = true
+ interval = 5
+}
+
+order += "ipv6"
+order += "wireless _first_"
+order += "ethernet _first_"
+order += "battery all"
+order += "disk /"
+order += "load"
+order += "memory"
+order += "volume master"
+order += "tztime local"
+
+wireless _first_ {
+ format_up = "W: (%quality at %essid) %ip"
+ format_down = "W: down"
+}
+
+ethernet _first_ {
+ format_up = "E: %ip (%speed)"
+ format_down = "E: down"
+}
+
+battery all {
+ format = "%status %percentage %remaining"
+ status_chr = "⚡"
+ status_bat = "🔋"
+ status_unk = "? UNK"
+ status_full = "☻ FULL"
+ low_threshold = 10
+}
+
+disk "/" {
+ format = "%avail"
+}
+
+load {
+ format = "%1min"
+}
+
+memory {
+ format = "%used | %available"
+ threshold_degraded = "1G"
+ format_degraded = "MEMORY < %available"
+}
+
+volume master {
+ format = "♪: %volume"
+ format_muted = "♪: muted (%volume)"
+ device = "pulse:alsa_output.pci-0000_00_1f.3.analog-stereo"
+}
+
+tztime local {
+ format = "%Y-%m-%d %H:%M:%S"
+}