trying to fix
This commit is contained in:
parent
fa407dfeb6
commit
e013d7569e
22945 changed files with 447936 additions and 0 deletions
179
var/elfeed/db/data/d8/d8f75d51c36b1e8a63154976dbc0f0db2932e711
Normal file
179
var/elfeed/db/data/d8/d8f75d51c36b1e8a63154976dbc0f0db2932e711
Normal file
|
@ -0,0 +1,179 @@
|
|||
|
||||
|
||||
<p>Raw link: <a href="https://www.youtube.com/watch?v=SLyierm-vyU">https://www.youtube.com/watch?v=SLyierm-vyU</a></p>
|
||||
|
||||
<p>In this video I showcase the various tools I have pieced together into a
|
||||
coherent paradigm for a distraction-free writing workflow. These are
|
||||
simple toggles or minor modes that combine built-in and third party
|
||||
packages with my tweaks and configurations. The end result is a state
|
||||
that allows me to concentrate more effectively on the task at hand,
|
||||
whether it is composing prose or coding.</p>
|
||||
|
||||
<p>Note that mixed-font settings for <code>org-mode</code> will depend on the theme
|
||||
that you use. My <a href="https://gitlab.com/protesilaos/modus-themes">Modus
|
||||
themes</a> are designed to
|
||||
cope well with such demands.</p>
|
||||
|
||||
<p>The following code block is excerpted from <a href="https://protesilaos.com/emacs/dotemacs">my
|
||||
dotemacs</a>. Please bear in mind that I
|
||||
will not be updating it, so check my dotemacs for the most up-to-date
|
||||
code I distribute.</p>
|
||||
|
||||
<pre><code class="language-elisp">(use-package olivetti
|
||||
:ensure
|
||||
:defer
|
||||
:diminish
|
||||
:config
|
||||
(setq olivetti-body-width 0.65)
|
||||
(setq olivetti-minimum-body-width 72)
|
||||
(setq olivetti-recall-visual-line-mode-entry-state t)
|
||||
|
||||
(define-minor-mode prot/olivetti-mode
|
||||
"Toggle buffer-local `olivetti-mode' with additional parameters.
|
||||
|
||||
Fringes are disabled. The modeline is hidden, except for
|
||||
`prog-mode' buffers (see `prot/hidden-mode-line-mode'). The
|
||||
default typeface is set to a proportionately-spaced family,
|
||||
except for programming modes (see `prot/variable-pitch-mode').
|
||||
The cursor becomes a blinking bar, per `prot/cursor-type-mode'."
|
||||
:init-value nil
|
||||
:global nil
|
||||
(if prot/olivetti-mode
|
||||
(progn
|
||||
(olivetti-mode 1)
|
||||
(set-window-fringes (selected-window) 0 0)
|
||||
(prot/variable-pitch-mode 1)
|
||||
(prot/cursor-type-mode 1)
|
||||
(unless (derived-mode-p 'prog-mode)
|
||||
(prot/hidden-mode-line-mode 1)))
|
||||
(olivetti-mode -1)
|
||||
(set-window-fringes (selected-window) nil) ; Use default width
|
||||
(prot/variable-pitch-mode -1)
|
||||
(prot/cursor-type-mode -1)
|
||||
(unless (derived-mode-p 'prog-mode)
|
||||
(prot/hidden-mode-line-mode -1))))
|
||||
:bind ("C-c o" . prot/olivetti-mode))
|
||||
|
||||
|
||||
(use-package emacs
|
||||
:commands prot/hidden-mode-line-mode
|
||||
:config
|
||||
(setq mode-line-percent-position '(-3 "%p"))
|
||||
(setq mode-line-defining-kbd-macro
|
||||
(propertize " Macro" 'face 'mode-line-emphasis))
|
||||
(setq-default mode-line-format
|
||||
'("%e"
|
||||
mode-line-front-space
|
||||
mode-line-mule-info
|
||||
mode-line-client
|
||||
mode-line-modified
|
||||
mode-line-remote
|
||||
mode-line-frame-identification
|
||||
mode-line-buffer-identification
|
||||
" "
|
||||
mode-line-position
|
||||
(vc-mode vc-mode)
|
||||
" "
|
||||
mode-line-modes
|
||||
" "
|
||||
mode-line-misc-info
|
||||
mode-line-end-spaces))
|
||||
|
||||
(define-minor-mode prot/hidden-mode-line-mode
|
||||
"Toggle modeline visibility in the current buffer."
|
||||
:init-value nil
|
||||
:global nil
|
||||
(if prot/hidden-mode-line-mode
|
||||
(setq-local mode-line-format nil)
|
||||
(kill-local-variable 'mode-line-format)
|
||||
(force-mode-line-update))))
|
||||
|
||||
|
||||
(use-package face-remap
|
||||
:diminish buffer-face-mode ; the actual mode
|
||||
:commands prot/variable-pitch-mode
|
||||
:config
|
||||
(define-minor-mode prot/variable-pitch-mode
|
||||
"Toggle `variable-pitch-mode', except for `prog-mode'."
|
||||
:init-value nil
|
||||
:global nil
|
||||
(if prot/variable-pitch-mode
|
||||
(unless (derived-mode-p 'prog-mode)
|
||||
(variable-pitch-mode 1))
|
||||
(variable-pitch-mode -1))))
|
||||
|
||||
|
||||
(use-package emacs
|
||||
:config
|
||||
(setq-default scroll-preserve-screen-position t)
|
||||
(setq-default scroll-conservatively 1) ; affects `scroll-step'
|
||||
(setq-default scroll-margin 0)
|
||||
|
||||
(define-minor-mode prot/scroll-centre-cursor-mode
|
||||
"Toggle centred cursor scrolling behaviour."
|
||||
:init-value nil
|
||||
:lighter " S="
|
||||
:global nil
|
||||
(if prot/scroll-centre-cursor-mode
|
||||
(setq-local scroll-margin (* (frame-height) 2)
|
||||
scroll-conservatively 0
|
||||
maximum-scroll-margin 0.5)
|
||||
(dolist (local '(scroll-preserve-screen-position
|
||||
scroll-conservatively
|
||||
maximum-scroll-margin
|
||||
scroll-margin))
|
||||
(kill-local-variable `,local))))
|
||||
|
||||
;; C-c l is used for `org-store-link'. The mnemonic for this is to
|
||||
;; focus the Line and also works as a variant of C-l.
|
||||
:bind ("C-c L" . prot/scroll-centre-cursor-mode))
|
||||
|
||||
|
||||
(use-package display-line-numbers
|
||||
:defer
|
||||
:config
|
||||
;; Set absolute line numbers. A value of "relative" is also useful.
|
||||
(setq display-line-numbers-type t)
|
||||
|
||||
(define-minor-mode prot/display-line-numbers-mode
|
||||
"Toggle `display-line-numbers-mode' and `hl-line-mode'."
|
||||
:init-value nil
|
||||
:global nil
|
||||
(if prot/display-line-numbers-mode
|
||||
(progn
|
||||
(display-line-numbers-mode 1)
|
||||
(hl-line-mode 1))
|
||||
(display-line-numbers-mode -1)
|
||||
(hl-line-mode -1)))
|
||||
:bind ("<f7>" . prot/display-line-numbers-mode))
|
||||
|
||||
|
||||
(use-package frame
|
||||
:commands prot/cursor-type-mode
|
||||
:config
|
||||
(setq-default cursor-type 'box)
|
||||
(setq-default cursor-in-non-selected-windows '(bar . 2))
|
||||
(setq-default blink-cursor-blinks 50)
|
||||
(setq-default blink-cursor-interval nil) ; 0.75 would be my choice
|
||||
(setq-default blink-cursor-delay 0.2)
|
||||
|
||||
(blink-cursor-mode -1)
|
||||
|
||||
(define-minor-mode prot/cursor-type-mode
|
||||
"Toggle between static block and pulsing bar cursor."
|
||||
:init-value nil
|
||||
:global t
|
||||
(if prot/cursor-type-mode
|
||||
(progn
|
||||
(setq-local blink-cursor-interval 0.75
|
||||
cursor-type '(bar . 2)
|
||||
cursor-in-non-selected-windows 'hollow)
|
||||
(blink-cursor-mode 1))
|
||||
(dolist (local '(blink-cursor-interval
|
||||
cursor-type
|
||||
cursor-in-non-selected-windows))
|
||||
(kill-local-variable `,local))
|
||||
(blink-cursor-mode -1))))
|
||||
</code></pre>
|
||||
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue