Making dired better
This commit is contained in:
parent
a25ed0c286
commit
91cfedd269
57
README.org
57
README.org
|
@ -87,20 +87,20 @@ In order to have this config work on both my desktop with regular joe-schmoe mon
|
|||
(set-face-attribute 'variable-pitch nil :font "Cantarell"
|
||||
:height (+ chris/default-font-size (/ chris/default-font-size 8)) :weight 'regular))
|
||||
|
||||
;; (defun chris/set-transparency ()
|
||||
;; "Set the frame to be transparent on Wayland compositors"
|
||||
;; (if (string= x-display-name "wayland-0")
|
||||
;; ((set-frame-parameter (selected-frame) 'alpha '(90 . 90))
|
||||
;; (add-to-list 'default-frame-alist '(alpha . (90 . 90))))))
|
||||
(defun chris/set-transparency ()
|
||||
"Set the frame to be transparent on Wayland compositors"
|
||||
(if (string= x-display-name "wayland-0")
|
||||
((set-frame-parameter (selected-frame) 'alpha '(90 . 90))
|
||||
(add-to-list 'default-frame-alist '(alpha . (90 . 90))))))
|
||||
|
||||
(if (daemonp)
|
||||
(add-hook 'after-make-frame-functions
|
||||
(lambda (frame)
|
||||
(with-selected-frame frame
|
||||
(chris/set-font-faces)
|
||||
(chris/set-transparency))))
|
||||
(chris/set-transparency)))
|
||||
(chris/set-font-faces))
|
||||
;; (chris/set-transparency))
|
||||
(chris/set-transparency))
|
||||
#+end_src
|
||||
|
||||
Then let's make sure line-numbers are relative and on. And let's turn on visual-line-mode globally.
|
||||
|
@ -147,6 +147,12 @@ Finally this is not part of the UI but let's do this early and start the server
|
|||
#+begin_src emacs-lisp
|
||||
(server-start)
|
||||
#+end_src
|
||||
|
||||
I will also add my personal scripts to emacs' PATH
|
||||
#+begin_src emacs-lisp
|
||||
(add-to-list 'exec-path "/home/chris/scripts")
|
||||
#+end_src
|
||||
|
||||
** Let's bootstrap straight.el
|
||||
#+begin_src emacs-lisp
|
||||
(setq straight-fix-org t)
|
||||
|
@ -587,6 +593,7 @@ These are some evil bindings to avy.
|
|||
(general-def 'normal
|
||||
"gl" 'avy-goto-line))
|
||||
#+end_src
|
||||
|
||||
*** Ace-Link
|
||||
Ace link provides an avy like search for links. Upon using the keybindings presented it opens the url.
|
||||
#+begin_src emacs-lisp
|
||||
|
@ -692,8 +699,10 @@ I'm making a small function in here to open files in the appropriate program usi
|
|||
(defun chris/dired-open-xdg ()
|
||||
"Open the file-at-point in the appropriate program"
|
||||
(interactive)
|
||||
(let ((file (ignore-errors (dired-get-file-for-visit))))
|
||||
(browse-url-xdg-open (file-truename file))))
|
||||
(let ((file (file-truename (ignore-errors (dired-get-file-for-visit)))))
|
||||
(message file)
|
||||
(call-process "xdg-open" nil 0 nil file)))
|
||||
|
||||
:general
|
||||
(chris/leader-keys
|
||||
:states 'normal
|
||||
|
@ -727,9 +736,23 @@ We need a function to copy the full filename to kill-ring
|
|||
"l" 'dired-single-buffer))
|
||||
#+end_src
|
||||
|
||||
#+begin_src emacs-lisp :tangle no
|
||||
#+begin_src emacs-lisp
|
||||
(use-package dired-rainbow
|
||||
:after dired)
|
||||
:after dired
|
||||
:config
|
||||
(defconst chris/dired-media-files-extensions
|
||||
'("mp3" "mp4" "MP3" "MP4" "avi" "mpg" "flv" "ogg" "opus")
|
||||
"Media files.")
|
||||
|
||||
(defconst chris/dired-image-files-extensions
|
||||
'("png" "jpg" "PNG" "JPG" "jpeg" "JPEG" "gif" "GIF")
|
||||
"image files")
|
||||
|
||||
(dired-rainbow-define html "#4e9a06" ("htm" "html" "xhtml"))
|
||||
(dired-rainbow-define media "#f3f99d" chris/dired-media-files-extensions)
|
||||
(dired-rainbow-define image "#5af78e" chris/dired-image-files-extensions)
|
||||
|
||||
(dired-rainbow-define log (:inherit default :italic t) ".*\\.log"))
|
||||
#+end_src
|
||||
|
||||
#+begin_src emacs-lisp
|
||||
|
@ -738,6 +761,14 @@ We need a function to copy the full filename to kill-ring
|
|||
:config (diredfl-global-mode +1))
|
||||
#+end_src
|
||||
|
||||
#+begin_src emacs-lisp
|
||||
(use-package dired-rsync
|
||||
:after dired
|
||||
:general
|
||||
(general-def 'normal dired-mode-map
|
||||
"C" 'dired-rsync))
|
||||
#+end_src
|
||||
|
||||
*** Tramp
|
||||
#+begin_src emacs-lisp
|
||||
(require 'tramp)
|
||||
|
@ -1509,6 +1540,8 @@ Let's add our own eshell prompt. and set the password cache to a significantly h
|
|||
(rename-buffer "*eshell-pop*")
|
||||
(display-buffer-in-side-window pop-eshell '((side . bottom))))))
|
||||
|
||||
(setq eshell-banner-message "")
|
||||
|
||||
:general
|
||||
(chris/leader-keys
|
||||
:states 'normal
|
||||
|
@ -1542,7 +1575,7 @@ Let's use pdf-tools for a lot better interaction with pdfs.
|
|||
(use-package nov
|
||||
:mode ("\\.epub\\'" . nov-mode)
|
||||
:config
|
||||
(add-hook 'nov-mode-hook 'olivetti-mode))
|
||||
(add-hook 'nov-mode-hook 'visual-fill-column-mode))
|
||||
#+end_src
|
||||
|
||||
** Window Management
|
||||
|
|
49
init.el
49
init.el
|
@ -32,20 +32,20 @@
|
|||
(set-face-attribute 'variable-pitch nil :font "Cantarell"
|
||||
:height (+ chris/default-font-size (/ chris/default-font-size 8)) :weight 'regular))
|
||||
|
||||
;; (defun chris/set-transparency ()
|
||||
;; "Set the frame to be transparent on Wayland compositors"
|
||||
;; (if (string= x-display-name "wayland-0")
|
||||
;; ((set-frame-parameter (selected-frame) 'alpha '(90 . 90))
|
||||
;; (add-to-list 'default-frame-alist '(alpha . (90 . 90))))))
|
||||
(defun chris/set-transparency ()
|
||||
"Set the frame to be transparent on Wayland compositors"
|
||||
(if (string= x-display-name "wayland-0")
|
||||
((set-frame-parameter (selected-frame) 'alpha '(90 . 90))
|
||||
(add-to-list 'default-frame-alist '(alpha . (90 . 90))))))
|
||||
|
||||
(if (daemonp)
|
||||
(add-hook 'after-make-frame-functions
|
||||
(lambda (frame)
|
||||
(with-selected-frame frame
|
||||
(chris/set-font-faces)
|
||||
(chris/set-transparency))))
|
||||
(chris/set-transparency)))
|
||||
(chris/set-font-faces))
|
||||
;; (chris/set-transparency))
|
||||
(chris/set-transparency))
|
||||
|
||||
(setq display-line-numbers-type 'relative)
|
||||
(global-display-line-numbers-mode +1)
|
||||
|
@ -73,6 +73,8 @@
|
|||
|
||||
(server-start)
|
||||
|
||||
(add-to-list 'exec-path "/home/chris/scripts")
|
||||
|
||||
(setq straight-fix-org t)
|
||||
(setq straight-check-for-modifications '(check-on-save find-when-checking))
|
||||
(defvar bootstrap-version)
|
||||
|
@ -417,8 +419,10 @@ vertically."
|
|||
(defun chris/dired-open-xdg ()
|
||||
"Open the file-at-point in the appropriate program"
|
||||
(interactive)
|
||||
(let ((file (ignore-errors (dired-get-file-for-visit))))
|
||||
(browse-url-xdg-open (file-truename file))))
|
||||
(let ((file (file-truename (ignore-errors (dired-get-file-for-visit)))))
|
||||
(message file)
|
||||
(call-process "xdg-open" nil 0 nil file)))
|
||||
|
||||
:general
|
||||
(chris/leader-keys
|
||||
:states 'normal
|
||||
|
@ -444,10 +448,33 @@ vertically."
|
|||
"h" 'dired-single-up-directory
|
||||
"l" 'dired-single-buffer))
|
||||
|
||||
(use-package dired-rainbow
|
||||
:after dired
|
||||
:config
|
||||
(defconst chris/dired-media-files-extensions
|
||||
'("mp3" "mp4" "MP3" "MP4" "avi" "mpg" "flv" "ogg" "opus")
|
||||
"Media files.")
|
||||
|
||||
(defconst chris/dired-image-files-extensions
|
||||
'("png" "jpg" "PNG" "JPG" "jpeg" "JPEG" "gif" "GIF")
|
||||
"image files")
|
||||
|
||||
(dired-rainbow-define html "#4e9a06" ("htm" "html" "xhtml"))
|
||||
(dired-rainbow-define media "#f3f99d" chris/dired-media-files-extensions)
|
||||
(dired-rainbow-define image "#5af78e" chris/dired-image-files-extensions)
|
||||
|
||||
(dired-rainbow-define log (:inherit default :italic t) ".*\\.log"))
|
||||
|
||||
(use-package diredfl
|
||||
:after dired
|
||||
:config (diredfl-global-mode +1))
|
||||
|
||||
(use-package dired-rsync
|
||||
:after dired
|
||||
:general
|
||||
(general-def 'normal dired-mode-map
|
||||
"C" 'dired-rsync))
|
||||
|
||||
(require 'tramp)
|
||||
(add-to-list 'tramp-default-proxies-alist
|
||||
'(nil "\\`root\\'" "/ssh:%h:"))
|
||||
|
@ -1145,6 +1172,8 @@ If on a:
|
|||
(rename-buffer "*eshell-pop*")
|
||||
(display-buffer-in-side-window pop-eshell '((side . bottom))))))
|
||||
|
||||
(setq eshell-banner-message "")
|
||||
|
||||
:general
|
||||
(chris/leader-keys
|
||||
:states 'normal
|
||||
|
@ -1167,7 +1196,7 @@ If on a:
|
|||
(use-package nov
|
||||
:mode ("\\.epub\\'" . nov-mode)
|
||||
:config
|
||||
(add-hook 'nov-mode-hook 'olivetti-mode))
|
||||
(add-hook 'nov-mode-hook 'visual-fill-column-mode))
|
||||
|
||||
(setq display-buffer-alist
|
||||
'(("\\*e?shell\\*"
|
||||
|
|
Loading…
Reference in a new issue