PageRenderTime 117ms CodeModel.GetById 14ms RepoModel.GetById 0ms app.codeStats 1ms

/init-old.el

https://gitlab.com/Vollpixel/emacs.d
Emacs Lisp | 538 lines | 150 code | 119 blank | 269 comment | 1 complexity | 6035b108639ee4a9a6cce14c810e1862 MD5 | raw file
  1. ;;;;
  2. ;; .emacs.d/init.el
  3. ;;
  4. ;; (c) 1991-2019 Peter Stoldt
  5. ;;;;
  6. ;;;;
  7. ;; Required external software
  8. ;;
  9. ;; - Silversearcher counsel-ag:
  10. ;; - Ripgrep counsel-rg: https://github.com/BurntSushi/ripgrep
  11. ;; https://oremacs.com/2017/08/04/ripgrep/
  12. ;; - Python elpy: Check list at https://github.com/jorgenschaefer/elpy
  13. ;;
  14. ;; Possible imporvements
  15. ;;
  16. ;; - https://github.com/howardabrams/dot-files
  17. ;; - https://github.com/purcell/emacs.d
  18. ;; - http://tychoish.com/post/running-multiple-emacs-daemons-on-a-single-system/
  19. ;; - https://github.com/nilcons/emacs-use-package-fast
  20. ;;
  21. ;; Emacs on Windows
  22. ;;
  23. ;; - https://gaballench.wordpress.com/2018/11/10/emacs-as-an-operating-system
  24. ;;
  25. ;;;;
  26. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  27. ;; Sessions (desktop) & Local Config
  28. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  29. ;; Detect current session
  30. (defvar my-use-config (getenv "EMACS_ENV")
  31. "Name of the used configuration.")
  32. (if (eq my-use-config nil)
  33. (setq my-use-config "default"))
  34. ;; Create the session directory
  35. (defvar my-session-dir (concat (getenv "HOME") "/.emacs.d/.s-" my-use-config "/")
  36. "Sub-directory under ~/.emacs.d for environment specific configuration files.")
  37. (unless (file-exists-p my-session-dir)
  38. (make-directory my-session-dir))
  39. ;; Change location where the destop file is expected
  40. (defvar desktop-path (list my-session-dir)
  41. "Specifies the desktop path specific to an environment.")
  42. ;; Change location of the bookmarks file
  43. (defvar bookmark-default-file (concat my-session-dir "bookmarks"))
  44. ;; Change location of the projectile cache file
  45. (defvar projectile-cache-file (concat my-session-dir "projectile.cache"))
  46. ;; Load local settings that differ between systems. These are for example
  47. ;; user-name, mail-address, url-proxy or exec-path
  48. (let ((my-local-settings-file "~/.emacs.d/local-settings.el"))
  49. (when (file-exists-p my-local-settings-file)
  50. (load-file my-local-settings-file)))
  51. ;; Set the window title for editor identification in the UI
  52. (defvar my-title-format (upcase (concat "[" my-use-config "] - %f")))
  53. ;; Decrease start-up time by adjusting garbage collection thresholds
  54. ;; during startup and thereafter
  55. (setq gc-cons-threshold (* 256 1024 1024))
  56. ;; The following does not reset the value
  57. ;; (let ((normal-gc-cons-threshold (* 128 1024 1024))
  58. ;; (init-gc-cons-threshold (* 256 1024 1024)))
  59. ;; (setq gc-cons-threshold init-gc-cons-threshold)
  60. ;; (add-hook 'emacs-startup-hook
  61. ;; (lambda () (setq gc-cons-threshold normal-gc-cons-threshold))))
  62. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  63. ;; Packages
  64. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  65. ;; Define package repositories
  66. (require 'package)
  67. ;; Package Archives
  68. (add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/") t)
  69. (add-to-list 'package-archives '("org" . "https://orgmode.org/elpa/") t)
  70. ;; (add-to-list 'package-archives '("local-elpa" . "~/.emacs.d/local-elpa/") t)
  71. ;; (add-to-list 'package-archives '("melpa-stable" . "https://stable.melpa.org/packages/"))
  72. ;; (add-to-list 'package-archives '("gnu" . "https://elpa.gnu.org/packages/") t)
  73. ;; Load and activate emacs packages
  74. (package-initialize)
  75. ;; Download the ELPA archive description if needed
  76. (when (not package-archive-contents)
  77. (package-refresh-contents))
  78. ;; Install wanted packages. These can also be installed with M-x package-install
  79. (defvar my-packages
  80. '(
  81. ;; Minor Modes
  82. ;;;;;;;;;;;;;;;;
  83. csv-mode ;; No reference - https://elpa.gnu.org/packages/csv-mode.html
  84. ;; emmet-mode ;; https://github.com/smihica/emmet-mode
  85. ;; gnuplot-mode ;; https://github.com/mkmcc/gnuplot-mode
  86. gnuplot ;; https://github.com/bruceravel/gnuplot-mode
  87. graphviz-dot-mode ;; http://www.graphviz.org
  88. groovy-mode ;; https://github.com/Groovy-Emacs-Modes/groovy-emacs-modes
  89. ;; hy-mode ;; https://github.com/hylang/hy-mode
  90. ini-mode ;; https://github.com/Lindydancer/ini-mode
  91. json-mode
  92. kotlin-mode ;; https://github.com/Emacs-Kotlin-Mode-Maintainers/kotlin-mode
  93. markdown-mode ;; http://jblevins.org/projects/markdown-mode
  94. ;; mediawiki ;; https://github.com/hexmode/mediawiki-el
  95. sql-indent ;; https://github.com/bsvingen/sql-indent
  96. ;; sqlformat ;; https://github.com/purcell/sqlformat
  97. ;; tql-mode ;; https://github.com/tiros-dev/tql-mode
  98. web-mode ;; http://web-mode.org/
  99. yaml-mode ;; https://github.com/yoshiki/yaml-mode
  100. ;; Structural editing
  101. ;;;;;;;;;;;;;;;;;;;;;;;
  102. ;; Alternatives for paredit:
  103. ;; Lispy - https://github.com/abo-abo/lispy
  104. ;; Parinfer - https://shaunlebron.github.io/parinfer
  105. ;; Paredit cheatsheet: http://www.emacswiki.org/emacs/PareditCheatsheet
  106. paredit ;; https://www.emacswiki.org/emacs/ParEdit
  107. expand-region ;; https://github.com/magnars/expand-region.el
  108. move-text ;; https://github.com/emacsfodder/move-text
  109. aggressive-indent ;; https://github.com/Malabarba/aggressive-indent-mode
  110. highlight-symbol ;; https://github.com/nschum/highlight-symbol.el
  111. iedit ;; Iedit allows you to edit the occurrence text in a buffer simultaneously
  112. multiple-cursors ;; https://github.com/magnars/multiple-cursors.el
  113. yasnippet ;; https://github.com/joaotavora/yasnippet
  114. yasnippet-snippets ;; https://github.com/AndreaCrotti/yasnippet-snippets
  115. company ;; http://company-mode.github.io
  116. undo-tree
  117. ;; Navigation
  118. ;;;;;;;;;;;;;;;
  119. ;; Check also:
  120. ;; https://github.com/abo-abo/hydra/blob/master/hydra-examples.el
  121. ;; https://dfeich.github.io/www/org-mode/emacs/2018/05/10/context-hydra.html
  122. projectile ;; https://github.com/bbatsov/projectile
  123. ibuffer-vc ;; https://github.com/purcell/ibuffer-vc
  124. ;; ibuffer-projectile ;; https://github.com/purcell/ibuffer-projectile
  125. ;; perspective-el ;; https://github.com/nex3/perspective-el
  126. hydra ;; https://github.com/abo-abo/hydra
  127. ivy
  128. swiper ;; https://github.com/abo-abo/swiper
  129. counsel
  130. counsel-projectile
  131. ;; ivy-hydra
  132. ivy-yasnippet ;; https://github.com/mkcms/ivy-yasnippet
  133. ;; ivy-dired-history ;; https://github.com/jixiuf/ivy-dired-history
  134. ;; openwith ;; https://www.emacswiki.org/emacs/OpenWith
  135. ace-window ;; https://github.com/abo-abo/ace-window
  136. eyebrowse ;; https://github.com/wasamasa/eyebrowse
  137. which-key ;; https://github.com/justbur/emacs-which-key
  138. dumb-jump ;; https://github.com/jacktasia/dumb-jump
  139. ;; https://fuco1.github.io/2017-07-15-Collapse-unique-nested-paths-in-dired-with-dired-collapse-mode.html
  140. ;; https://github.com/Fuco1/dired-hacks
  141. ;; dired-rainbow
  142. dired-recent ;; https://github.com/vifon/dired-recent.el
  143. dired-narrow
  144. dired-collapse
  145. dired-subtree
  146. ;; UI
  147. ;;;;;;;
  148. beacon ;; Highlight line at cursor
  149. rainbow-mode ;; Show colors inline
  150. rainbow-delimiters
  151. ;; golden-ratio ;; https://github.com/roman/golden-ratio.el
  152. ;; Use a smarter mode-line
  153. smart-mode-line ;; https://github.com/Malabarba/smart-mode-line
  154. smart-mode-line-powerline-theme
  155. ;; Alternatives:
  156. ;; https://github.com/seagle0128/doom-modeline
  157. ;; https://github.com/dbordak/telephone-line
  158. ;; https://github.com/tarsius/moody + https://github.com/tarsius/minions
  159. ;; https://github.com/TheBB/spaceline
  160. ;; 日本語
  161. mozc ;; Check settings in my-editing.el
  162. ;; Programming Language Support
  163. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  164. ;; https://github.com/emacs-lsp/dap-mode Debug Adapter Protocol is a wire protocol for communication between
  165. ;; client and Debug Server might be an alternative for go-dlv
  166. ;; https://github.com/emacs-lsp/lsp-mode Language Server Protocol Support for Emacs
  167. ;; https://github.com/emacs-lsp/lsp-ui Contains all the higher level UI modules of lsp-mode, like flycheck
  168. ;; support and code lenses
  169. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  170. ;; https://www.mortens.dev/blog/emacs-and-the-language-server-protocol/
  171. ;; https://www.reddit.com/r/emacs/comments/931la6/tip_how_to_adopt_flycheck_as_your_new_best_friend/
  172. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  173. flycheck ;; http://www.flycheck.org/en/latest/
  174. ;; flycheck-gradle
  175. ;; https://github.com/flycheck/flycheck-color-mode-line
  176. ;; Clojure
  177. ;;;;;;;;;;;;
  178. ;; Key bindings and code colorization for Clojure:
  179. clojure-mode ;; https://github.com/clojure-emacs/clojure-mode
  180. cider ;; https://github.com/clojure-emacs/cider
  181. ;; clj-refacor temporarily disabled
  182. ;; clj-refactor ;; https://github.com/clojure-emacs/clj-refactor.el
  183. ;; flycheck-clojure ;; https://github.com/clojure-emacs/squiggly-clojure
  184. ;; Lisp
  185. ;;;;;;;;;
  186. slime ;; https://github.com/slime/slime
  187. ;; ;; https://racket-lang.org
  188. ;; racket-mode ;; https://github.com/greghendershott/racket-mode
  189. ;; Go
  190. ;;;;;;;
  191. ;; https://www.emacswiki.org/emacs/GoLangMode
  192. ;; http://dominik.honnef.co/posts/2013/03/writing_go_in_emacs/
  193. ;; https://www.simplify.ba/articles/2016/03/04/go-development-with-gnu-emacs/
  194. ;; https://www.youtube.com/watch?v=r6j2W5DZRtA
  195. go-mode ;; https://github.com/dominikh/go-mode.el
  196. go-errcheck ;; https://github.com/dominikh/go-errcheck.el
  197. go-projectile ;; https://github.com/dougm/go-projectile
  198. go-eldoc ;; https://github.com/syohex/emacs-go-eldoc
  199. go-dlv ;; https://github.com/benma/go-dlv.el
  200. ;; ;; https://github.com/emacs-lsp/dap-mode
  201. go-imenu ;; https://github.com/brantou/go-imenu.el
  202. gotest ;; https://github.com/nlamirault/gotest.el
  203. company-go ;; https://github.com/nsf/gocode/tree/master/emacs-company
  204. ;; http://gorefactor.org/index.html
  205. godoctor ;; https://github.com/emacsmirror/godoctor
  206. ;; https://github.com/nsf/gocode
  207. ;; https://github.com/manute/gorepl-mode
  208. ;; https://github.com/grafov/go-playground
  209. ;; https://github.com/favadi/flycheck-gometalinter
  210. ;; Rust
  211. ;;;;;;;;;
  212. ;; rust-mode ;; https://github.com/rust-lang/rust-mode
  213. ;; Python
  214. ;;;;;;;;;;;
  215. ;; https://elpy.readthedocs.io/en/latest/index.html
  216. elpy ;; https://github.com/jorgenschaefer/elpy3
  217. pydoc ;; https://github.com/statmobile/pydoc
  218. ;; https://github.com/proofit404/anaconda-mode
  219. ;; https://github.com/proofit404/company-anaconda
  220. ;; https://github.com/abo-abo/lpy
  221. ;; C/C++
  222. ;;;;;;;;;;
  223. ;; https://github.com/atilaneves/cmake-ide
  224. ;; http://martinsosic.com/development/emacs/2017/12/09/emacs-cpp-ide.html
  225. ;; https://github.com/leoliu/ggtags
  226. ;; Assembly
  227. ;;;;;;;;;;;;;
  228. ;; https://www.emacswiki.org/emacs/AssemblyProgramming
  229. ;; https://github.com/skeeto/nasm-mode/blob/master/nasm-mode.el
  230. ;; There is also gas-mode.el in the vendor directory
  231. ;; - http://www.hczim.de/software/gas-mode.html
  232. ;; Java
  233. ;;;;;;;;;
  234. ;; https://github.com/emacs-lsp/lsp-java
  235. ;; http://mp.vv.si/blog/emacs/a-maven-plugin-for-emacs/
  236. ;; https://github.com/mopemope/meghanada-emacs
  237. ;; http://eclim.org + https://github.com/senny/emacs-eclim
  238. ;; https://github.com/dakrone/emacs-java-imports/
  239. ;; https://github.com/leoliu/ggtags
  240. ;; lsp-intellij:
  241. ;; https://github.com/Ruin0x11/lsp-intellij
  242. ;; https://github.com/Ruin0x11/intellij-lsp-server
  243. ;; JavaScript
  244. ;;;;;;;;;;;;;;;
  245. ;; https://github.com/ananthakumaran/tide
  246. ;; See also: https://hotair.tech/blog/goodbye-vscode/
  247. ;; https://github.com/NicolasPetton/Indium
  248. ;; https://indium.readthedocs.io/en/latest/
  249. ;; https://emacs.cafe/emacs/javascript/setup/2017/04/23/emacs-setup-javascript.html
  250. ;; https://emacs.cafe/indium/emacs/javascript/2017/07/24/indium-0.7-released.html
  251. ;; https://github.com/mooz/js2-mode
  252. ;; https://github.com/magnars/js2-refactor.el
  253. ;; https://github.com/nicolaspetton/xref-js2
  254. ;; Org-mode
  255. ;;;;;;;;;;;;;
  256. ;; NOTE: Some export modules fail sometimes with a nasty error.
  257. ;; If that happens, either of these will help:
  258. ;;
  259. ;; - Recompile all .elc files in elpa/org-xxxx directory: "C-0 M-x byte-compile-directory"
  260. ;; - If that doesn't help, reload org-mode: "C-u M-x org-reload"
  261. org ;; Load the most recent version, don't rely on the embedded version
  262. org-bullets
  263. htmlize
  264. ;; Export modules
  265. ox-gfm ;; https://github.com/larstvei/ox-gfm (github markdown export)
  266. ox-pandoc ;; https://github.com/kawabata/ox-pandoc
  267. ;; ox-reveal ;; https://github.com/yjwen/org-reveal ;; Not working since Org 9.2
  268. ox-rst ;; https://github.com/masayuko/ox-rst
  269. ox-hugo ;; https://ox-hugo.scripter.co/ ;; https://gohugo.io/
  270. ;; Org-babel modules
  271. ob-go ;; https://github.com/pope/ob-go
  272. ;; Simple presentation mode for Emacs Org-mode
  273. ;; epresent ;; https://github.com/eschulte/epresent
  274. ;; https://github.com/takaxp/org-tree-slide
  275. ;; LaTeX
  276. ;;;;;;;;;;
  277. auctex ;; https://www.gnu.org/software/auctex
  278. company-auctex
  279. latex-extra ;; https://github.com/Malabarba/latex-extra
  280. ;; pdf-tools ;; https://github.com/politza/pdf-tools
  281. ;; ;; http://mactex-wiki.tug.org/wiki/index.php/SyncTeX
  282. ;; acronyms: https://florian.adamsky.it/2018/03/09/emacs-add-acronyms.html
  283. ;; Git
  284. ;;;;;;;;
  285. magit ;; https://github.com/magit/magit
  286. git-gutter
  287. ;; ;; https://github.com/charignon/github-review
  288. ;; Tools
  289. ;;;;;;;;;;
  290. rg ;; https://github.com/dajva/rg.el
  291. helpful ;; https://github.com/Wilfred/helpful
  292. powerthesaurus ;; https://github.com/SavchenkoValeriy/emacs-powerthesaurus
  293. shell-pop ;; https://github.com/kyagi/shell-pop-el
  294. ;; better-shell ;; https://github.com/killdash9/better-shell
  295. ;; restclient ;; https://github.com/pashky/restclient.el
  296. vdiff ;; https://github.com/justbur/emacs-vdiff
  297. ;; vdiff-magit ;; https://github.com/justbur/emacs-vdiff-magit
  298. command-log-mode ;; https://github.com/lewang/command-log-mode
  299. ;; Search the web with engine-mode. Config in navigation.el
  300. engine-mode ;; https://github.com/hrs/engine-mode
  301. ;; StackExchange for Emacs
  302. sx ;; https://github.com/vermiculus/sx.el
  303. ;; sidebar is a customizable file explorer with git integration
  304. ;; https://github.com/sebastiencs/sidebar.el
  305. neotree ;; https://github.com/jaypei/emacs-neotree
  306. ;; keystore-mode ;; https://github.com/peterpaul/keystore-mode for Java keystores
  307. ;; Database
  308. ;;;;;;;;;;;;;
  309. ;; http://john.mercouris.online/emacs-database-interface.html
  310. ;; Docker
  311. ;;;;;;;;;;;
  312. dockerfile-mode ;; https://github.com/spotify/dockerfile-mode
  313. docker ;; https://github.com/Silex/docker.el
  314. docker-tramp ;; https://github.com/emacs-pe/docker-tramp.el
  315. ;; Use of docker-tramp:
  316. ;; /docker:user@container_id:/path/to/file
  317. ;; http://manuel-uberti.github.io/emacs/2017/10/19/docker/
  318. ;; https://github.com/meqif/docker-compose-mode
  319. ;; https://github.com/Fuco1/eshell-bookmark
  320. ;; Kubernetes
  321. ;;;;;;;;;;;;;;;
  322. ;; kubernetes ;; https://github.com/chrisbarrett/kubernetes-el
  323. ;; k8s-mode ;; https://github.com/TxGVNN/emacs-k8s-mode
  324. ;; Mail
  325. ;;;;;;;;;
  326. ;; Note: mu4e.el comes not as package from elpa, but is part of the mu package
  327. ;; Check my-mu4e.el
  328. ;; Themes
  329. ;;;;;;;;;;;
  330. material-theme
  331. ;; NOTE: because of a problem with some functionality in org-mode,
  332. ;; it was necessary to fix material theme. The fixed version
  333. ;; is stored in .emacs.d/themes/myterial-theme.el and loaded
  334. ;; from there.
  335. ;; color-theme-sanityinc-tomorrow
  336. ;; Other nice themes:
  337. ;; arjen-grey-theme, atom-one-dark-theme, afternoon-theme, spacegray-theme,
  338. ;; underwater-theme, smyx-theme, aurora-theme, mustard-theme, tangotango-theme,
  339. ;; leuven-theme, white-sand-theme, hc-zenburn-theme, solarized-theme,
  340. ;; idea-darkula-theme
  341. ;; Warning: Don't use moe-theme - It applies unwanted changes in config files
  342. ;; that are not owned by the package
  343. ;; https://pawelbx.github.io/emacs-theme-gallery/
  344. ;; https://github.com/purcell/color-theme-sanityinc-tomorrow
  345. ;; http://themegallery.robdor.com/
  346. ))
  347. ;; Install packages
  348. (dolist (p my-packages)
  349. (when (not (package-installed-p p))
  350. (package-install p)))
  351. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  352. ;; Emacs Customization
  353. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  354. ;; Place downloaded elisp files in ~/.emacs.d/vendor to load them
  355. (add-to-list 'load-path "~/.emacs.d/vendor")
  356. ;; Add customization directory to load path
  357. (add-to-list 'load-path "~/.emacs.d/customizations")
  358. ;; Path to special or changed themes
  359. (add-to-list 'custom-theme-load-path "~/.emacs.d/themes")
  360. (add-to-list 'load-path "~/.emacs.d/themes")
  361. ;; NOTE: All custom files have the prefix 'my' to make sure, that the
  362. ;; correct file will be loaded and not one from another package
  363. ;; Sets up exec-path-from-shell so that Emacs will use the correct
  364. ;; environment variables
  365. (load "my-shenv.el")
  366. ;; Load settings first
  367. (load "my-settings.el")
  368. ;; My custom functions
  369. (load "my-functions.el")
  370. ;; Simplify the navigation and configure recentf, restclient, ...
  371. (load "my-navigation.el")
  372. (load "my-projectile.el")
  373. (load "my-hydra.el")
  374. (load "my-ivy.el")
  375. (load "my-tools.el")
  376. ;; Specify the look of Emacs
  377. (load "my-theme.el")
  378. (load "my-ui.el")
  379. (load "my-modeline.el")
  380. ;; Modes
  381. (load "my-web.el")
  382. (load "my-sql.el")
  383. ;; Tools setup
  384. (load "my-git.el")
  385. (load "my-yasnippet.el")
  386. (load "my-diff.el")
  387. (load "my-eshell.el")
  388. ;; Make editing a bit nicer
  389. (load "my-editing.el")
  390. (load "my-company.el")
  391. ;; Langauage specific setup
  392. (load "my-lisp.el")
  393. (load "my-python.el")
  394. (load "my-js.el")
  395. (load "my-golang.el")
  396. ;;(load "my-cpp.el")
  397. ;; Text modes
  398. (load "my-latex.el")
  399. (load "my-rst.el")
  400. (load "my-orgmode.el")
  401. ;; Tools
  402. ;; (load "my-mu4e.el")
  403. ;; Note: Keys should always be the last files to load
  404. (load "my-keys.el")
  405. ;; Reset GC threshold to a smaller value after config loading
  406. ;; Emacs default is 800000 - I set it to 1 MiB
  407. (setq gc-cons-threshold (* 1 1024 1024))
  408. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  409. ;; Project Customization
  410. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  411. ;; Load session specific settings
  412. (load "my-session-settings.el")
  413. ;; Set the window title
  414. (setq frame-title-format my-title-format)
  415. ;; Desktop is strange: Explicitely read desktop only when the config
  416. ;; is not "default", otherwise it does not work correctly
  417. (unless (string= my-use-config "default")
  418. (desktop-read))
  419. ;;; init.el ends here