commit b4a9b7afe0d957573e6f8925ca0137f76c8695c0
parent 0de0e338a9b4208b72d3030a306baf5e4716337f
Author: Ryan <ryan@Southpark.hsd1.or.comcast.net>
Date: Mon, 27 Apr 2020 16:08:59 -0700
new emacsconf and picom
Diffstat:
A | .config/picom.conf | | | 425 | +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
M | .econfig.org | | | 483 | +++++++++++++++++++++++++------------------------------------------------------ |
2 files changed, 576 insertions(+), 332 deletions(-)
diff --git a/.config/picom.conf b/.config/picom.conf
@@ -0,0 +1,425 @@
+#################################
+# Shadows #
+#################################
+
+
+# Enabled client-side shadows on windows. Note desktop windows
+# (windows with '_NET_WM_WINDOW_TYPE_DESKTOP') never get shadow,
+# unless explicitly requested using the wintypes option.
+#
+# shadow = false
+shadow = true;
+
+# The blur radius for shadows, in pixels. (defaults to 12)
+# shadow-radius = 12
+shadow-radius = 7;
+
+# The opacity of shadows. (0.0 - 1.0, defaults to 0.75)
+# shadow-opacity = .75
+
+# The left offset for shadows, in pixels. (defaults to -15)
+# shadow-offset-x = -15
+shadow-offset-x = -7;
+
+# The top offset for shadows, in pixels. (defaults to -15)
+# shadow-offset-y = -15
+shadow-offset-y = -7;
+
+# Avoid drawing shadows on dock/panel windows. This option is deprecated,
+# you should use the *wintypes* option in your config file instead.
+#
+# no-dock-shadow = false
+
+# Don't draw shadows on drag-and-drop windows. This option is deprecated,
+# you should use the *wintypes* option in your config file instead.
+#
+# no-dnd-shadow = false
+
+# Red color value of shadow (0.0 - 1.0, defaults to 0).
+# shadow-red = 0
+
+# Green color value of shadow (0.0 - 1.0, defaults to 0).
+# shadow-green = 0
+
+# Blue color value of shadow (0.0 - 1.0, defaults to 0).
+# shadow-blue = 0
+
+# Do not paint shadows on shaped windows. Note shaped windows
+# here means windows setting its shape through X Shape extension.
+# Those using ARGB background is beyond our control.
+# Deprecated, use
+# shadow-exclude = 'bounding_shaped'
+# or
+# shadow-exclude = 'bounding_shaped && !rounded_corners'
+# instead.
+#
+# shadow-ignore-shaped = ''
+
+# Specify a list of conditions of windows that should have no shadow.
+#
+# examples:
+# shadow-exclude = "n:e:Notification";
+#
+# shadow-exclude = []
+shadow-exclude = [
+ "name = 'Notification'",
+ "class_g = 'Conky'",
+ "class_g ?= 'Notify-osd'",
+ "class_g = 'Cairo-clock'",
+ "_GTK_FRAME_EXTENTS@:c"
+];
+
+# Specify a X geometry that describes the region in which shadow should not
+# be painted in, such as a dock window region. Use
+# shadow-exclude-reg = "x10+0+0"
+# for example, if the 10 pixels on the bottom of the screen should not have shadows painted on.
+#
+# shadow-exclude-reg = ""
+
+# Crop shadow of a window fully on a particular Xinerama screen to the screen.
+# xinerama-shadow-crop = false
+
+
+#################################
+# Fading #
+#################################
+
+
+# Fade windows in/out when opening/closing and when opacity changes,
+# unless no-fading-openclose is used.
+# fading = false
+fading = true
+
+# Opacity change between steps while fading in. (0.01 - 1.0, defaults to 0.028)
+# fade-in-step = 0.028
+fade-in-step = 0.03;
+
+# Opacity change between steps while fading out. (0.01 - 1.0, defaults to 0.03)
+# fade-out-step = 0.03
+fade-out-step = 0.03;
+
+# The time between steps in fade step, in milliseconds. (> 0, defaults to 10)
+# fade-delta = 10
+
+# Specify a list of conditions of windows that should not be faded.
+# fade-exclude = []
+
+# Do not fade on window open/close.
+# no-fading-openclose = false
+
+# Do not fade destroyed ARGB windows with WM frame. Workaround of bugs in Openbox, Fluxbox, etc.
+# no-fading-destroyed-argb = false
+
+
+#################################
+# Transparency / Opacity #
+#################################
+
+
+# Opacity of inactive windows. (0.1 - 1.0, defaults to 1.0)
+# inactive-opacity = 1
+inactive-opacity = 0.85;
+
+# Opacity of window titlebars and borders. (0.1 - 1.0, disabled by default)
+# frame-opacity = 1.0
+frame-opacity = 0.7;
+
+# Default opacity for dropdown menus and popup menus. (0.0 - 1.0, defaults to 1.0)
+# menu-opacity = 1.0
+
+# Let inactive opacity set by -i override the '_NET_WM_OPACITY' values of windows.
+# inactive-opacity-override = true
+inactive-opacity-override = false;
+
+# Default opacity for active windows. (0.0 - 1.0, defaults to 1.0)
+# active-opacity = 1.0
+
+# Dim inactive windows. (0.0 - 1.0, defaults to 0.0)
+# inactive-dim = 0.0
+
+# Specify a list of conditions of windows that should always be considered focused.
+# focus-exclude = []
+focus-exclude = [ "class_g = 'Cairo-clock'", "class_g = 'Firefox-esr'", "class_g = 'Brave-browser'" ];
+
+# Use fixed inactive dim value, instead of adjusting according to window opacity.
+# inactive-dim-fixed = 1.0
+
+# Specify a list of opacity rules, in the format `PERCENT:PATTERN`,
+# like `50:name *= "Firefox"`. picom-trans is recommended over this.
+# Note we don't make any guarantee about possible conflicts with other
+# programs that set '_NET_WM_WINDOW_OPACITY' on frame or client windows.
+# example:
+# opacity-rule = [ "80:class_g = 'URxvt'" ];
+#
+# opacity-rule = []
+
+
+#################################
+# Background-Blurring #
+#################################
+
+
+# Parameters for background blurring, see the *BLUR* section for more information.
+# blur-method =
+# blur-size = 12
+#
+# blur-deviation = false
+
+# Blur background of semi-transparent / ARGB windows.
+# Bad in performance, with driver-dependent behavior.
+# The name of the switch may change without prior notifications.
+#
+# blur-background = false
+
+# Blur background of windows when the window frame is not opaque.
+# Implies:
+# blur-background
+# Bad in performance, with driver-dependent behavior. The name may change.
+#
+# blur-background-frame = false
+
+
+# Use fixed blur strength rather than adjusting according to window opacity.
+# blur-background-fixed = false
+
+
+# Specify the blur convolution kernel, with the following format:
+# example:
+# blur-kern = "5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1";
+#
+# blur-kern = ''
+blur-kern = "3x3box";
+
+
+# Exclude conditions for background blur.
+# blur-background-exclude = []
+blur-background-exclude = [
+ "window_type = 'dock'",
+ "window_type = 'desktop'",
+ "_GTK_FRAME_EXTENTS@:c",
+ "class_g = 'Firefox-esr'",
+ "class_g = 'Brave-browser'"
+];
+
+#################################
+# General Settings #
+#################################
+
+# Daemonize process. Fork to background after initialization. Causes issues with certain (badly-written) drivers.
+# daemon = false
+
+# Specify the backend to use: `xrender`, `glx`, or `xr_glx_hybrid`.
+# `xrender` is the default one.
+#
+# backend = 'glx'
+backend = "glx";
+
+# Enable/disable VSync.
+vsync = false
+#vsync = true
+
+# Enable remote control via D-Bus. See the *D-BUS API* section below for more details.
+# dbus = false
+
+# Try to detect WM windows (a non-override-redirect window with no
+# child that has 'WM_STATE') and mark them as active.
+#
+# mark-wmwin-focused = false
+mark-wmwin-focused = true;
+
+# Mark override-redirect windows that doesn't have a child window with 'WM_STATE' focused.
+# mark-ovredir-focused = false
+mark-ovredir-focused = true;
+
+# Try to detect windows with rounded corners and don't consider them
+# shaped windows. The accuracy is not very high, unfortunately.
+#
+# detect-rounded-corners = false
+detect-rounded-corners = true;
+
+# Detect '_NET_WM_OPACITY' on client windows, useful for window managers
+# not passing '_NET_WM_OPACITY' of client windows to frame windows.
+#
+# detect-client-opacity = false
+detect-client-opacity = true;
+
+# Specify refresh rate of the screen. If not specified or 0, picom will
+# try detecting this with X RandR extension.
+#
+# refresh-rate = 60
+refresh-rate = 0
+
+# Limit picom to repaint at most once every 1 / 'refresh_rate' second to
+# boost performance. This should not be used with
+# vsync drm/opengl/opengl-oml
+# as they essentially does sw-opti's job already,
+# unless you wish to specify a lower refresh rate than the actual value.
+#
+# sw-opti =
+
+# Use EWMH '_NET_ACTIVE_WINDOW' to determine currently focused window,
+# rather than listening to 'FocusIn'/'FocusOut' event. Might have more accuracy,
+# provided that the WM supports it.
+#
+# use-ewmh-active-win = false
+
+# Unredirect all windows if a full-screen opaque window is detected,
+# to maximize performance for full-screen windows. Known to cause flickering
+# when redirecting/unredirecting windows.
+#
+# unredir-if-possible = false
+
+# Delay before unredirecting the window, in milliseconds. Defaults to 0.
+# unredir-if-possible-delay = 0
+
+# Conditions of windows that shouldn't be considered full-screen for unredirecting screen.
+# unredir-if-possible-exclude = []
+
+# Use 'WM_TRANSIENT_FOR' to group windows, and consider windows
+# in the same group focused at the same time.
+#
+# detect-transient = false
+detect-transient = true
+
+# Use 'WM_CLIENT_LEADER' to group windows, and consider windows in the same
+# group focused at the same time. 'WM_TRANSIENT_FOR' has higher priority if
+# detect-transient is enabled, too.
+#
+# detect-client-leader = false
+detect-client-leader = true
+
+# Resize damaged region by a specific number of pixels.
+# A positive value enlarges it while a negative one shrinks it.
+# If the value is positive, those additional pixels will not be actually painted
+# to screen, only used in blur calculation, and such. (Due to technical limitations,
+# with use-damage, those pixels will still be incorrectly painted to screen.)
+# Primarily used to fix the line corruption issues of blur,
+# in which case you should use the blur radius value here
+# (e.g. with a 3x3 kernel, you should use `--resize-damage 1`,
+# with a 5x5 one you use `--resize-damage 2`, and so on).
+# May or may not work with *--glx-no-stencil*. Shrinking doesn't function correctly.
+#
+# resize-damage = 1
+
+# Specify a list of conditions of windows that should be painted with inverted color.
+# Resource-hogging, and is not well tested.
+#
+# invert-color-include = []
+
+# GLX backend: Avoid using stencil buffer, useful if you don't have a stencil buffer.
+# Might cause incorrect opacity when rendering transparent content (but never
+# practically happened) and may not work with blur-background.
+# My tests show a 15% performance boost. Recommended.
+#
+# glx-no-stencil = false
+
+# GLX backend: Avoid rebinding pixmap on window damage.
+# Probably could improve performance on rapid window content changes,
+# but is known to break things on some drivers (LLVMpipe, xf86-video-intel, etc.).
+# Recommended if it works.
+#
+# glx-no-rebind-pixmap = false
+
+# Disable the use of damage information.
+# This cause the whole screen to be redrawn everytime, instead of the part of the screen
+# has actually changed. Potentially degrades the performance, but might fix some artifacts.
+# The opposing option is use-damage
+#
+# no-use-damage = false
+use-damage = true
+
+# Use X Sync fence to sync clients' draw calls, to make sure all draw
+# calls are finished before picom starts drawing. Needed on nvidia-drivers
+# with GLX backend for some users.
+#
+# xrender-sync-fence = false
+
+# GLX backend: Use specified GLSL fragment shader for rendering window contents.
+# See `compton-default-fshader-win.glsl` and `compton-fake-transparency-fshader-win.glsl`
+# in the source tree for examples.
+#
+# glx-fshader-win = ''
+
+# Force all windows to be painted with blending. Useful if you
+# have a glx-fshader-win that could turn opaque pixels transparent.
+#
+# force-win-blend = false
+
+# Do not use EWMH to detect fullscreen windows.
+# Reverts to checking if a window is fullscreen based only on its size and coordinates.
+#
+# no-ewmh-fullscreen = false
+
+# Dimming bright windows so their brightness doesn't exceed this set value.
+# Brightness of a window is estimated by averaging all pixels in the window,
+# so this could comes with a performance hit.
+# Setting this to 1.0 disables this behaviour. Requires --use-damage to be disabled. (default: 1.0)
+#
+# max-brightness = 1.0
+
+# Make transparent windows clip other windows like non-transparent windows do,
+# instead of blending on top of them.
+#
+# transparent-clipping = false
+
+# Set the log level. Possible values are:
+# "trace", "debug", "info", "warn", "error"
+# in increasing level of importance. Case doesn't matter.
+# If using the "TRACE" log level, it's better to log into a file
+# using *--log-file*, since it can generate a huge stream of logs.
+#
+# log-level = "debug"
+log-level = "warn";
+
+# Set the log file.
+# If *--log-file* is never specified, logs will be written to stderr.
+# Otherwise, logs will to written to the given file, though some of the early
+# logs might still be written to the stderr.
+# When setting this option from the config file, it is recommended to use an absolute path.
+#
+# log-file = '/path/to/your/log/file'
+
+# Show all X errors (for debugging)
+# show-all-xerrors = false
+
+# Write process ID to a file.
+# write-pid-path = '/path/to/your/log/file'
+
+# Window type settings
+#
+# 'WINDOW_TYPE' is one of the 15 window types defined in EWMH standard:
+# "unknown", "desktop", "dock", "toolbar", "menu", "utility",
+# "splash", "dialog", "normal", "dropdown_menu", "popup_menu",
+# "tooltip", "notification", "combo", and "dnd".
+#
+# Following per window-type options are available: ::
+#
+# fade, shadow:::
+# Controls window-type-specific shadow and fade settings.
+#
+# opacity:::
+# Controls default opacity of the window type.
+#
+# focus:::
+# Controls whether the window of this type is to be always considered focused.
+# (By default, all window types except "normal" and "dialog" has this on.)
+#
+# full-shadow:::
+# Controls whether shadow is drawn under the parts of the window that you
+# normally won't be able to see. Useful when the window has parts of it
+# transparent, and you want shadows in those areas.
+#
+# redir-ignore:::
+# Controls whether this type of windows should cause screen to become
+# redirected again after been unredirected. If you have unredir-if-possible
+# set, and doesn't want certain window to cause unnecessary screen redirection,
+# you can set this to `true`.
+#
+wintypes:
+{
+ tooltip = { fade = true; shadow = true; opacity = 0.75; focus = true; full-shadow = false; };
+ dock = { shadow = false; }
+ dnd = { shadow = false; }
+ popup_menu = { opacity = 1.0; }
+ dropdown_menu = { opacity = 1.0; }
+};
diff --git a/.econfig.org b/.econfig.org
@@ -6,8 +6,9 @@
* Emacs
** init
#+BEGIN_SRC emacs-lisp
-
- (server-start)
+(require 'server)
+(or (server-running-p)
+ (server-start))
(eval-when-compile
(require 'use-package))
@@ -21,22 +22,22 @@
** font and theme
#+BEGIN_SRC emacs-lisp
- (add-to-list 'load-path "~/.emacs.d/lisp/")
+(add-to-list 'load-path "~/.emacs.d/lisp/flycheck-pos-tip")
- (require 'popup-pos-tip)
+; (require 'popup-pos-tip)
- (defadvice popup-tip
- (around popup-pos-tip-wrapper (string &rest args) activate)
- (if (eq window-system 'x)
- (apply 'popup-pos-tip string args)
- ad-do-it))
+; (defadvice popup-tip
+; (around popup-pos-tip-wrapper (string &rest args) activate)
+; (if (eq window-system 'x)
+; (apply 'popup-pos-tip string args)
+; ad-do-it))
- (setq x-gtk-use-system-tooltips nil)
+; (setq x-gtk-use-system-tooltips nil)
;; font
(add-to-list 'default-frame-alist
- '(font . "Hack:antialias=true:size=16:style=Regular")
- '(font . "Fira Code Symbol:antialias=true:size=16:style=Regular"))
+ '(font . "Hack:antialias=true:size=20:style=Regular")
+ '(font . "Fira Code Symbol:antialias=true:size=20:style=Regular"))
(defun fira-code-mode--make-alist (list)
"Generate prettify-symbols alist from LIST."
@@ -137,12 +138,6 @@
;; (telephone-line-mode t))
;;
- (use-package powerline
- :ensure t
-
- :init
- (powerline-default-theme))
-
(global-set-key (kbd "M-<up>") 'text-scale-increase)
(global-set-key (kbd "M-<down>") 'text-scale-decrease)
(scroll-bar-mode nil)
@@ -227,46 +222,52 @@
** joestar
#+BEGIN_SRC emacs-lisp
- (use-package joestar
- :init
- (progn
- (defvar undo-tree-map
- (let ((map (make-sparse-keymap)))
- ;; remap `undo' and `undo-only' to `undo-tree-undo'
- (define-key map [remap undo] 'undo-tree-undo)
- (define-key map [remap undo-only] 'undo-tree-undo)
- ;; bind standard undo bindings (since these match redo counterparts)
- (define-key map (kbd "C-/") 'undo-tree-undo)
- (define-key map "\C-_" 'undo-tree-undo)
- ;; redo doesn't exist normally, so define our own keybindings
- (define-key map (kbd "C-?") 'undo-tree-redo)
- (define-key map (kbd "M-_") 'undo-tree-redo)
- ;; just in case something has defined `redo'...
- (define-key map [remap redo] 'undo-tree-redo)
- ;; we use "C-x u" for the undo-tree visualizer
- (define-key map (kbd "s-x u") 'undo-tree-visualize)
- ;; bind register commands
- (define-key map (kbd "s-x r u") 'undo-tree-save-state-to-register)
- (define-key map (kbd "s-x r U") 'undo-tree-restore-state-from-register)
- ;; set keymap
- (setq undo-tree-map map))))
-
- :load-path
- "~/.emacs.d/joestar/")
-
- (global-joestar-mode)
-
- ;; global move window keys so non joestar buffers can still have these bindings
- (global-set-key (kbd "M-<left>") #'(lambda ()
- (interactive)
- (other-window -1)))
-
- (global-set-key (kbd "M-<right>") #'(lambda ()
- (interactive)
- (other-window 1)))
+ (add-to-list 'load-path "~/.emacs.d/lisp/")
+ (require 'highlight)
- (global-set-key (kbd "S-<right>") 'joe-nbuf)
- (global-set-key (kbd "S-<left>") 'joe-pbuf)
+ (use-package undo-tree
+ :ensure t)
+
+ (use-package joestar
+ :init
+ (progn
+ (defvar undo-tree-map
+ (let ((map (make-sparse-keymap)))
+ ;; remap `undo' and `undo-only' to `undo-tree-undo'
+ (define-key map [remap undo] 'undo-tree-undo)
+ (define-key map [remap undo-only] 'undo-tree-undo)
+ ;; bind standard undo bindings (since these match redo counterparts)
+ (define-key map (kbd "C-/") 'undo-tree-undo)
+ (define-key map "\C-_" 'undo-tree-undo)
+ ;; redo doesn't exist normally, so define our own keybindings
+ (define-key map (kbd "C-?") 'undo-tree-redo)
+ (define-key map (kbd "M-_") 'undo-tree-redo)
+ ;; just in case something has defined `redo'...
+ (define-key map [remap redo] 'undo-tree-redo)
+ ;; we use "C-x u" for the undo-tree visualizer
+ (define-key map (kbd "s-x u") 'undo-tree-visualize)
+ ;; bind register commands
+ (define-key map (kbd "s-x r u") 'undo-tree-save-state-to-register)
+ (define-key map (kbd "s-x r U") 'undo-tree-restore-state-from-register)
+ ;; set keymap
+ (setq undo-tree-map map))))
+
+ :load-path
+ "~/.emacs.d/joestar/")
+
+ (global-joestar-mode)
+
+ ;; global move window keys so non joestar buffers can still have these bindings
+ (global-set-key (kbd "M-<left>") #'(lambda ()
+ (interactive)
+ (other-window -1)))
+
+ (global-set-key (kbd "M-<right>") #'(lambda ()
+ (interactive)
+ (other-window 1)))
+
+ (global-set-key (kbd "S-<right>") 'joe-nbuf)
+ (global-set-key (kbd "S-<left>") 'joe-pbuf)
#+END_SRC
** org
@@ -286,58 +287,74 @@
* IDE
** company-mode and flycheck
#+BEGIN_SRC emacs-lisp
- (use-package irony-mode
- :config
- (irony-mode t)
- :init
- (add-hook 'irony-mode-hook 'irony-cdb-autosetup-compile-options)
- (eval-after-load 'flycheck
- '(add-hook 'flycheck-mode-hook #'flycheck-irony-setup))
- (eval-after-load 'company
- '(add-to-list 'company-backends 'company-irony))
+(require 'flycheck)
+(add-hook 'after-init-hook #'global-flycheck-mode)
- :hook c++-mode)
+ (use-package flycheck-irony
+ :ensure t)
- (use-package company-mode
- :config
- (company-mode t)
- (require 'company-c-headers)
- (require 'company-irony-c-headers)
- (require 'company-irony)
- (require 'color)
- (require 'company-quickhelp)
+ (use-package counsel
+ :ensure t)
- (let ((bg (face-attribute 'default :background)))
- (custom-set-faces
- `(company-tooltip ((t (:inherit default :background ,(color-lighten-name bg 2)))))
- `(company-scrollbar-bg ((t (:background ,(color-lighten-name bg 10)))))
- `(company-scrollbar-fg ((t (:background ,(color-lighten-name bg 5)))))
- `(company-tooltip-selection ((t (:inherit font-lock-function-name-face))))
- `(company-tooltip-common ((t (:inherit font-lock-constant-face))))))
+ (use-package irony
+ :ensure t
+ :init
+ (push 'c++-mode irony-supported-major-modes)
+ (add-hook 'irony-mode-hook 'irony-cdb-autosetup-compile-options)
+ (eval-after-load 'flycheck
+ '(add-hook 'flycheck-mode-hook #'flycheck-irony-setup))
- (eval-after-load 'irony
- '((add-to-list 'company-backends 'company-irony)
- (add-to-list 'company-backends 'company-c-headers)
- (add-to-list 'company-backends 'company-irony-c-headers)))
- (company-quickhelp-mode t)
+ (eval-after-load 'company
+ '(add-to-list 'company-backends 'company-irony))
+ :hook c++-mode)
- :hook (prog-mode))
+ (use-package company-irony
+ :ensure t)
- (use-package flycheck-mode
- :config
+ (use-package company-c-headers
+ :ensure t)
+
+ (use-package company-irony-c-headers
+ :ensure t)
+
+ (use-package company-quickhelp
+ :ensure t)
- (flycheck-mode t)
- (define-key flycheck-mode-map flycheck-keymap-prefix nil)
- (setq flycheck-keymap-prefix (kbd \"s-s f\"))
- (define-key flycheck-mode-map flycheck-keymap-prefix
- flycheck-command-map)
+ (use-package company-mode
+ :config
+ (company-mode t)
+ (require 'color)
+ (require 'company-quickhelp)
- :hook (prog-mode))
+ (let ((bg (face-attribute 'default :background)))
+ (custom-set-faces
+ `(company-tooltip ((t (:inherit default :background ,(color-lighten-name bg 2)))))
+ `(company-scrollbar-bg ((t (:background ,(color-lighten-name bg 10)))))
+ `(company-scrollbar-fg ((t (:background ,(color-lighten-name bg 5)))))
+ `(company-tooltip-selection ((t (:inherit font-lock-function-name-face))))
+ `(company-tooltip-common ((t (:inherit font-lock-constant-face))))))
+ (eval-after-load 'irony
+ '((add-to-list 'company-backends 'company-irony)
+ (add-to-list 'company-backends 'company-c-headers)
+ (add-to-list 'company-backends 'company-irony-c-headers)))
+ (company-quickhelp-mode t)
+
+
+
+ :hook (prog-mode))
+
+
+#+END_SRC
+** cobol
+#+BEGIN_SRC emacs-lisp
+
+ (use-package cobol-mode
+ :ensure t)
#+END_SRC
** all programming languages
@@ -345,6 +362,7 @@
#+BEGIN_SRC emacs-lisp
(use-package fic-mode
+ :ensure t
:config
(fic-mode t)
:hook prog-mode)
@@ -373,32 +391,34 @@
#+BEGIN_SRC emacs-lisp
- (add-hook 'c++-mode-hook
- (lambda () (setq flycheck-clang-language-standard "c++17")))
+ (add-hook 'c++-mode-hook
+ (lambda () (setq flycheck-clang-language-standard "c++17")))
- (require 'yasnippet)
- (yas-reload-all)
- (add-hook 'prog-mode-hook #'yas-minor-mode)
+ (use-package yasnippet-snippets
+ :ensure t)
+
+ (use-package yasnippet
+ :ensure t
+ :init
+ (yas-reload-all)
+ (add-hook 'prog-mode-hook #'yas-minor-mode))
#+END_SRC
** lisp
#+BEGIN_SRC emacs-lisp
- (use-package slime
- :config
- (setq inferior-lisp-program "/opt/sbcl/bin/sbcl")
- (setq slime-contribs '(slime-fancy))
- (load (expand-file-name "~/quicklisp/slime-helper.el"))
- ;; Replace "sbcl" with the path to your implementation
- (setq inferior-lisp-program "sbcl"))
+ ;; (use-package slime
+ ;; :ensure t
+ ;; :config
+ ;; (setq inferior-lisp-program "/usr/bin/sbcl")
+ ;; (setq slime-contribs '(slime-fancy))
+ ;; (load (expand-file-name "~/quicklisp/slime-helper.el"))
+ ;; ;; Replace "sbcl" with the path to your implementation
+ ;; (setq inferior-lisp-program "sbcl"))
- (setq geiser-active-implementations '(guile))
- (use-package rainbow-delimiters
- :ensure t
- :init
- (add-hook 'prog-mode-hook #'rainbow-delimiters-mode))
+ ;; (setq geiser-active-implementations '(guile))
(use-package elisp-def
:ensure t
@@ -570,14 +590,6 @@
#+END_SRC
-** line numbers
-#+BEGIN_SRC emacs-lisp
-
- (setq linum-relative-backend 'display-line-numbers-mode)
- (require 'linum-relative)
- (linum-relative-on)
-
-#+END_SRC
** sudo edit
#+BEGIN_SRC emacs-lisp
@@ -593,6 +605,9 @@
** misc
#+BEGIN_SRC emacs-lisp
+(use-package csgo-conf-mode
+:ensure t)
+
;; tell emacs not to use the clipboard
;(setq x-select-enable-clipboard nil)
@@ -625,215 +640,32 @@
;; rainbow delimeters
(use-package rainbow-mode
+ :ensure t
:config (rainbow-mode t)
-
+
:hook (web-mode c-mode c++-mode js2-mode))
#+END_SRC
* emacs-os
-** email
+** rss
#+BEGIN_SRC emacs-lisp
- (use-package shrface
- :after shr
- :quelpa
- (shrface :repo "chenyanming/shrface" :fetcher github))
-
- (use-package org-mime
- :ensure t)
+(use-package elfeed-org
+ :ensure t
+ :init
+ (global-set-key (kbd "s-x w") 'elfeed)
+ (elfeed-org)
+ (setq rmh-elfeed-org-files (list "/home/rmj/.emacs.d/elfeed.org")))
- (add-to-list 'load-path "/usr/local/share/emacs/site-lisp/mu4e/")
- (require 'mu4e)
-
- (setq mu4e-maildir (expand-file-name "~/Maildir"))
-
- ; get mail
- (setq mu4e-get-mail-command "mbsync pwishie-gmail"
- ;; mu4e-html2text-command "w3m -T text/html" ;;using the default mu4e-shr2text
- mu4e-view-prefer-html t
- mu4e-update-interval 300
- mu4e-headers-auto-update t
- mu4e-compose-signature-auto-include nil
- mu4e-compose-format-flowed t)
- ;; to view selected message in the browser, no signin, just html mail
- (add-to-list 'mu4e-view-actions
- '("ViewInBrowser" . mu4e-action-view-in-browser) t)
-
- ;; enable inline images
- (setq mu4e-view-show-images t)
- ;; use imagemagick, if available
- (when (fboundp 'imagemagick-register-types)
- (imagemagick-register-types))
-
- ;; every new email composition gets its own frame!
- (setq mu4e-compose-in-new-frame t)
-
- ;; don't save message to Sent Messages, IMAP takes care of this
- (setq mu4e-sent-messages-behavior 'delete)
-
- (add-hook 'mu4e-view-mode-hook #'visual-line-mode)
-
- ;; (defun my-render-html-message ()
- ;; (let ((dom (libxml-parse-html-region (point-min) (point-max))))
- ;; (erase-buffer)
- ;; (shr-insert-document dom)
- ;; (goto-char (point-min))))
-
- ;; (setq mu4e-html2text-command 'my-render-html-message)
-
-
- ;; <tab> to navigate to links, <RET> to open them in browser
- (add-hook 'mu4e-view-mode-hook
- (lambda()
- ;; try to emulate some of the eww key-bindings
- (local-set-key (kbd "<RET>") 'mu4e~view-browse-url-from-binding)
- (local-set-key (kbd "<tab>") 'shr-next-link)
- (local-set-key (kbd "<backtab>") 'shr-previous-link)))
-
- ;; from https://www.reddit.com/r/emacs/comments/bfsck6/mu4e_for_dummies/elgoumx
- (add-hook 'mu4e-headers-mode-hook
- (defun my/mu4e-change-headers ()
- (interactive)
- (setq mu4e-headers-fields
- `((:human-date . 25) ;; alternatively, use :date
- (:flags . 6)
- (:from . 22)
- (:thread-subject . ,(- (window-body-width) 70)) ;; alternatively, use :subject
- (:size . 7)))))
-
- ;; if you use date instead of human-date in the above, use this setting
- ;; give me ISO(ish) format date-time stamps in the header list
- ;(setq mu4e-headers-date-format "%Y-%m-%d %H:%M")
-
- ;; spell check
- (add-hook 'mu4e-compose-mode-hook
- (defun my-do-compose-stuff ()
- "My settings for message composition."
- (visual-line-mode)
- ;(org-mu4e-compose-org-mode)
- (use-hard-newlines -1)
- (flyspell-mode)))
-
- (require 'smtpmail)
-
- ;;rename files when moving
- ;;NEEDED FOR MBSYNC
- (setq mu4e-change-filenames-when-moving t)
-
- ;;set up queue for offline email
- ;;use mu mkdir ~/Maildir/acc/queue to set up first
- (setq smtpmail-queue-mail nil) ;; start in normal mode
-
- ;;from the info manual
- (setq mu4e-attachment-dir "~/Downloads")
-
- (setq message-kill-buffer-on-exit t)
- (setq mu4e-compose-dont-reply-to-self t)
-
- (require 'org-mu4e)
-
- ;; convert org mode to HTML automatically
- (setq org-mu4e-convert-to-html t)
-
- (setq mu4e-org-contacts-file (expand-file-name "~/.emacs.d/contacts.org"))
- (add-to-list 'mu4e-headers-actions
- '("org-contact-add" . mu4e-action-add-org-contact) t)
- (add-to-list 'mu4e-view-actions
- '("org-contact-add" . mu4e-action-add-org-contact) t)
-
- ;;from vxlabs config
- ;; show full addresses in view message (instead of just names)
- ;; toggle per name with M-RET
- (setq mu4e-view-show-addresses 't)
-
- ;; don't ask when quitting
- (setq mu4e-confirm-quit nil)
-
- (require 'smtpmail-multi)
-
- (require 'feedmail)
-
- ;; mu4e-context
- (setq mu4e-context-policy 'pick-first)
- (setq mu4e-compose-context-policy 'always-ask)
- (setq mu4e-contexts
- (list
- (make-mu4e-context
- :name "personal" ;;for pwishie-gmail
- :enter-func (lambda () (mu4e-message "Entering context personal"))
- :leave-func (lambda () (mu4e-message "Leaving context personal"))
- :match-func (lambda (msg)
- (when msg
- (mu4e-message-contact-field-matches
- msg '(:from :to :cc :bcc) "pwishie@gmail.com")))
- :vars '((user-mail-address . "pwishie@gmail.com")
- (user-full-name . "Ryan")
- (mu4e-sent-folder . "/pwishie-gmail/[pwishie].Sent Mail")
- (mu4e-drafts-folder . "/pwishie-gmail/[pwishie].drafts")
- (mu4e-trash-folder . "/pwishie-gmail/[pwishie].Bin")
- (mu4e-compose-signature . (concat "Formal Signature\n" "Emacs 25, org-mode 9, mu4e 1.0\n"))
- (mu4e-compose-format-flowed . t)
- (smtpmail-queue-dir . "~/Maildir/pwishie-gmail/queue/cur")
- (setq message-send-mail-function 'message-send-mail-with-sendmail
- sendmail-program "/usr/bin/msmtp"
- user-full-name "Ryan Jeffrey")
-
- (setq message-sendmail-envelope-from 'header)
- (add-hook 'message-send-mail-hook 'choose-msmtp-account)
- (smtpmail-smtp-user . "pwishie")
- (smtpmail-starttls-credentials . (("smtp.gmail.com" 587 nil nil)))
- (smtpmail-auth-credentials . (expand-file-name "~/.emacs.d/.authinfo.gpg"))
- (smtpmail-default-smtp-server . "smtp.gmail.com")
- (smtpmail-smtp-server . "smtp.gmail.com")
- (smtpmail-smtp-service . 587)
- (smtpmail-debug-info . t)
- (smtpmail-debug-verbose . t)
- (mu4e-maildir-shortcuts . ( ("/pwishie-gmail/INBOX" . ?i)
- ("/pwishie-gmail/[pwishie].Sent Mail" . ?s)
- ("/pwishie-gmail/[pwishie].Bin" . ?t)
- ("/pwishie-gmail/[pwishie].All Mail" . ?a)
- ("/pwishie-gmail/[pwishie].Starred" . ?r)
- ("/pwishie-gmail/[pwishie].drafts" . ?d)
- ))))
- ;; (make-mu4e-context
- ;; :name "personal" ;;for rmjxyz-gmail
- ;; :enter-func (lambda () (mu4e-message "Entering context personal"))
- ;; :leave-func (lambda () (mu4e-message "Leaving context personal"))
- ;; :match-func (lambda (msg)
- ;; (when msg
- ;; (mu4e-message-contact-field-matches
- ;; msg '(:from :to :cc :bcc) "rmjxyz@gmail.com")))
- ;; :vars '((user-mail-address . "rmjxyz@gmail.com")
- ;; (user-full-name . "User Account2")
- ;; (mu4e-sent-folder . "/rmjxyz-gmail/[rmjxyz].Sent Mail")
- ;; (mu4e-drafts-folder . "/rmjxyz-gmail/[rmjxyz].drafts")
- ;; (mu4e-trash-folder . "/rmjxyz-gmail/[rmjxyz].Trash")
- ;; (mu4e-compose-format-flowed . t)
- ;; (smtpmail-queue-dir . "~/Maildir/rmjxyz-gmail/queue/cur")
- ;; (message-send-mail-function . smtpmail-send-it)
- ;; (smtpmail-smtp-user . "rmjxyz")
- ;; (smtpmail-starttls-credentials . (("smtp.gmail.com" 587 nil nil)))
- ;; (smtpmail-auth-credentials . (expand-file-name "~/.emacs.d/.authinfo.gpg"))
- ;; (smtpmail-default-smtp-server . "smtp.gmail.com")
- ;; (smtpmail-smtp-server . "smtp.gmail.com")
- ;; (smtpmail-smtp-service . 587)
- ;; (smtpmail-debug-info . t)
- ;; (smtpmail-debug-verbose . t)
- ;; (mu4e-maildir-shortcuts . ( ("/rmjxyz-gmail/INBOX" . ?i)
- ;; ("/rmjxyz-gmail/[rmjxyz].Sent Mail" . ?s)
- ;; ("/rmjxyz-gmail/[rmjxyz].Trash" . ?t)
- ;; ("/rmjxyz-gmail/[rmjxyz].All Mail" . ?a)
- ;; ("/rmjxyz-gmail/[rmjxyz].Starred" . ?r)
- ;; ("/rmjxyz-gmail/[rmjxyz].drafts" . ?d)
- ;; ))))
- ))
+ (require 'color)
+
+ (defface comic-tag
+ '((t :foreground "#AE6486"))
+ "Marks comic tags")
-#+END_SRC
-** rss
-#+BEGIN_SRC emacs-lisp
(use-package elfeed
:ensure t
@@ -862,20 +694,7 @@
(setq buffer-read-only t))
(switch-to-buffer buffer)))
- (use-package elfeed-org
- :ensure t
- :init
- (global-set-key (kbd "s-x w") 'elfeed)
- (elfeed-org)
- (setq rmh-elfeed-org-files (list "/home/rmj/.emacs.d/elfeed.org")))
-
-
- (require 'color)
-
- (defface comic-tag
- '((t :foreground "#AE6486"))
- "Marks comic tags")
-
+
(defface podcast-tag
'((t :foreground "#6699CC"))