[4]插件篇 | 文件管理 上 | treemacs | all-the-icons | treemacs-all-the-icons | icons-in-terminal()

treemacs支持项目管理,我目前只使用文件目录功能

一、treemacs安装 | github上作者没有给出默认配置 配置模板作为展示 | 我使用的相当省略的配置

(use-package treemacs
  :ensure t
  :defer t
  :init
  (with-eval-after-load 'winum
    (define-key winum-keymap (kbd "M-0") #'treemacs-select-window))
  :config (treemacs-resize-icons 15)
  :bind
  (:map global-map
	("M-0"       . treemacs-select-window)
	("C-x t 1"   . treemacs-delete-other-windows)
	("C-x t t"   . treemacs)
	("C-x t d"   . treemacs-select-directory)
	("C-x t B"   . treemacs-bookmark)
	("C-x t C-t" . treemacs-find-file)
	))

二、treemacs默认主题使用的图标展示

– 提供类型名和对应的文件

M-x treemacs-icons-catalogue

三、all-the-icons | 使用字体中的字符作为图标 | 和多个插件联动

– github上fonts文件夹里的字体均要手动安装

– 使用use-package安装失败 | 使用待安装软件列表

– 配置

(when (display-graphic-p)
  (require 'all-the-icons))

 – 使用 | 打印指定集全部符号

(all-the-icons-insert-icons-for 'alltheicon)  
(all-the-icons-insert-icons-for 'octicon)  
(all-the-icons-insert-icons-for 'faicon)
(all-the-icons-insert-icons-for 'wicon)
(all-the-icons-insert-icons-for 'fileicon)
(all-the-icons-insert-icons-for 'material)

 – 使用 | 打印指定符号 | 可设置样式

(insert (all-the-icons-octicon "file-binary"))
(insert (all-the-icons-faicon  "cogs"))
(insert (all-the-icons-wicon   "tornado"))(insert (all-the-icons-octicon "file-directory" :v-adjust 0 :face 'all-the-icons-dblue))(insert (all-the-icons-icon-for-file "name.org"))

四、使用all-the-icons提供的主题

– 安装treemacs-all-the-icons | ?依赖all-the-icons

(use-package treemacs-all-the-icons
   :ensure t)

 – 应用

(treemacs-load-theme "all-the-icons")

五、treemacs使用all-the-icons图标 | 为指定类型设置图标 | 自定义主题

– 为指定类型文件设置图标 | treemacs-icons-catalogue

(defvar treemacs-custom-org-icon (all-the-icons-fileicon "org"))
;;(defvar treemacs-custom-org-icon (all-the-icons-icon-for-file "name.org"))
(treemacs-define-custom-icon treemacs-custom-org-icon "org" "org_archive")

(defvar treemacs-custom-elisp-icon (all-the-icons-fileicon "elisp"))
;;(defvar treemacs-custom-elisp-icon (all-the-icons-icon-for-file "name.el"))
(treemacs-define-custom-icon treemacs-custom-elisp-icon "el" "eln" "elc")

 – 为指定类型 设置图标 | treemacs-icons-catalogue

(treemacs-create-icon :icon (format "  %s%s" (all-the-icons-octicon "file-directory" :v-adjust 0 :face 'all-the-icons-dblue) treemacs-all-the-icons-tab) :extensions (dir-closed dir-open) :fallback 'same-as-icon)
(treemacs-create-icon :icon (format "%s%s" (all-the-icons-octicon "file-directory" :v-adjust 0) treemacs-all-the-icons-tab) :extensions (root-closed root-open) :fallback 'same-as-icon)

 – 创建并应用主题 | 自定义程度高 | 必须设置dir-closed dir-open root-open root-closed这些基础类型的图标 | 设置过少会有相应的显示问题

(treemacs-create-theme "Use-all-the-icons-easy"
  :config
  (progn
    (treemacs-create-icon :icon (format "%s%s" (all-the-icons-icon-for-file "name.org" :v-adjust 0) treemacs-all-the-icons-tab) :extensions ("org"))
    (treemacs-create-icon :icon (format "%s%s" (all-the-icons-icon-for-file "name.el" :v-adjust 0) treemacs-all-the-icons-tab) :extensions ("el"))
    (treemacs-create-icon :icon (format "%s%s" (all-the-icons-octicon "file-directory" :v-adjust 0) treemacs-all-the-icons-tab) :extensions (dir-closed dir-open root-open root-closed))
    ))
(treemacs-load-theme "Use-all-the-icons-easy")

 六、icons-in-terminal | 基于icons-in-terminal软件包 集成了特定函数的插件

– 软件包安装 https://github.com/sebastiencs/icons-in-terminal | 内附字体安装 | 多个依赖

  - 软件包亦提供Emacs插件 |  ~/.local/share/icons-in-terminal/ | 未使用

– 插件安装 https://github.com/seagle0128/icons-in-terminal.el | 依赖 https://github.com/emacsmirror/font-lock-plus | 依赖 memoize插件 | 字体安装 | 使用该插件

  - 安装memoize | 配置 放到对应目录

(use-package memoize
  :ensure t)

(add-to-list 'load-path "~/.emacs.d/icons-in-terminal/")
(require 'icons-in-terminal)

 – 使用 | 查询指定集字符

(icons-in-terminal-insert-wicon)
(icons-in-terminal-insert-faicon)
(icons-in-terminal-insert-fileicon)
(icons-in-terminal-insert-octicon)
(icons-in-terminal-insert-material)

 – 使用 | 打印字符

(insert (icons-in-terminal-fileicon "org"))
(insert (icons-in-terminal-octicon "file-directory"))
(insert (icons-in-terminal-faicon "folder-open"))

 – 也可用来创建treemacs主题 | 略

————————

treemacs支持项目管理,我目前只使用文件目录功能

一、treemacs安装 | github上作者没有给出默认配置 配置模板作为展示 | 我使用的相当省略的配置

(use-package treemacs
  :ensure t
  :defer t
  :init
  (with-eval-after-load 'winum
    (define-key winum-keymap (kbd "M-0") #'treemacs-select-window))
  :config (treemacs-resize-icons 15)
  :bind
  (:map global-map
	("M-0"       . treemacs-select-window)
	("C-x t 1"   . treemacs-delete-other-windows)
	("C-x t t"   . treemacs)
	("C-x t d"   . treemacs-select-directory)
	("C-x t B"   . treemacs-bookmark)
	("C-x t C-t" . treemacs-find-file)
	))

二、treemacs默认主题使用的图标展示

– 提供类型名和对应的文件

M-x treemacs-icons-catalogue

三、all-the-icons | 使用字体中的字符作为图标 | 和多个插件联动

– github上fonts文件夹里的字体均要手动安装

– 使用use-package安装失败 | 使用待安装软件列表

– 配置

(when (display-graphic-p)
  (require 'all-the-icons))

 – 使用 | 打印指定集全部符号

(all-the-icons-insert-icons-for 'alltheicon)  
(all-the-icons-insert-icons-for 'octicon)  
(all-the-icons-insert-icons-for 'faicon)
(all-the-icons-insert-icons-for 'wicon)
(all-the-icons-insert-icons-for 'fileicon)
(all-the-icons-insert-icons-for 'material)

 – 使用 | 打印指定符号 | 可设置样式

(insert (all-the-icons-octicon "file-binary"))
(insert (all-the-icons-faicon  "cogs"))
(insert (all-the-icons-wicon   "tornado"))(insert (all-the-icons-octicon "file-directory" :v-adjust 0 :face 'all-the-icons-dblue))(insert (all-the-icons-icon-for-file "name.org"))

四、使用all-the-icons提供的主题

– 安装treemacs-all-the-icons | ?依赖all-the-icons

(use-package treemacs-all-the-icons
   :ensure t)

 – 应用

(treemacs-load-theme "all-the-icons")

五、treemacs使用all-the-icons图标 | 为指定类型设置图标 | 自定义主题

– 为指定类型文件设置图标 | treemacs-icons-catalogue

(defvar treemacs-custom-org-icon (all-the-icons-fileicon "org"))
;;(defvar treemacs-custom-org-icon (all-the-icons-icon-for-file "name.org"))
(treemacs-define-custom-icon treemacs-custom-org-icon "org" "org_archive")

(defvar treemacs-custom-elisp-icon (all-the-icons-fileicon "elisp"))
;;(defvar treemacs-custom-elisp-icon (all-the-icons-icon-for-file "name.el"))
(treemacs-define-custom-icon treemacs-custom-elisp-icon "el" "eln" "elc")

 – 为指定类型 设置图标 | treemacs-icons-catalogue

(treemacs-create-icon :icon (format "  %s%s" (all-the-icons-octicon "file-directory" :v-adjust 0 :face 'all-the-icons-dblue) treemacs-all-the-icons-tab) :extensions (dir-closed dir-open) :fallback 'same-as-icon)
(treemacs-create-icon :icon (format "%s%s" (all-the-icons-octicon "file-directory" :v-adjust 0) treemacs-all-the-icons-tab) :extensions (root-closed root-open) :fallback 'same-as-icon)

 – 创建并应用主题 | 自定义程度高 | 必须设置dir-closed dir-open root-open root-closed这些基础类型的图标 | 设置过少会有相应的显示问题

(treemacs-create-theme "Use-all-the-icons-easy"
  :config
  (progn
    (treemacs-create-icon :icon (format "%s%s" (all-the-icons-icon-for-file "name.org" :v-adjust 0) treemacs-all-the-icons-tab) :extensions ("org"))
    (treemacs-create-icon :icon (format "%s%s" (all-the-icons-icon-for-file "name.el" :v-adjust 0) treemacs-all-the-icons-tab) :extensions ("el"))
    (treemacs-create-icon :icon (format "%s%s" (all-the-icons-octicon "file-directory" :v-adjust 0) treemacs-all-the-icons-tab) :extensions (dir-closed dir-open root-open root-closed))
    ))
(treemacs-load-theme "Use-all-the-icons-easy")

 六、icons-in-terminal | 基于icons-in-terminal软件包 集成了特定函数的插件

– 软件包安装 https://github.com/sebastiencs/icons-in-terminal | 内附字体安装 | 多个依赖

  - 软件包亦提供Emacs插件 |  ~/.local/share/icons-in-terminal/ | 未使用

– 插件安装 https://github.com/seagle0128/icons-in-terminal.el | 依赖 https://github.com/emacsmirror/font-lock-plus | 依赖 memoize插件 | 字体安装 | 使用该插件

  - 安装memoize | 配置 放到对应目录

(use-package memoize
  :ensure t)

(add-to-list 'load-path "~/.emacs.d/icons-in-terminal/")
(require 'icons-in-terminal)

 – 使用 | 查询指定集字符

(icons-in-terminal-insert-wicon)
(icons-in-terminal-insert-faicon)
(icons-in-terminal-insert-fileicon)
(icons-in-terminal-insert-octicon)
(icons-in-terminal-insert-material)

 – 使用 | 打印字符

(insert (icons-in-terminal-fileicon "org"))
(insert (icons-in-terminal-octicon "file-directory"))
(insert (icons-in-terminal-faicon "folder-open"))

 – 也可用来创建treemacs主题 | 略