I was messing with trying to get emojis to display and I broke my emacs by messing with the coding system settings somehow. After my desktop file failed to load, I uninstalled unicode-fonts and deleted anything from my init file that messed with the coding system, such as:
;;(set-default-coding-systems 'utf-8-unix) ;;(prefer-coding-system 'utf-8-unix) Now,when I launch emacs, I get weird errors like the following backtrace:
Debugger entered--Lisp error: (void-variable 爨煥極敲✠慹湳灩数⥴ਊ㬻眠楨整灳捡敲潭楶杮映湵瑣潩獮映潲慍湧牡匠敶湥㬠㬻㬻㬻㬻㬻㬻㬻㬻㬻㬻㬻㬻㬻搨晥湵礠獡猭琭楲敬瑦⠠⥳ ∠敒潭敶眠楨整灳捡瑡琠敨戠来湩楮杮漠⹓ਢ†椨猨牴湩ⵧ慭捴尢恜⁛瑜湜牜⭝•⥳ ††⠠敲汰捡ⵥ慭捴∢琠琠猠††⥳⠊敤畦慹牴浩爭杩瑨⠠⥳ ∠敒潭敶眠楨整灳捡瑡琠敨攠摮漠⹓ਢ†椨猨牴湩ⵧ慭捴嬢尠屴屮嵲尫❜•⥳ ††⠠敲汰捡ⵥ慭捴∢琠琠猠††⥳⠊敤畦慹牴浩⠠⥳ ∠敒潭敶眠楨整灳捡瑡琠敨戠来湩楮杮愠摮攠摮漠⹓ਢ†礨獡猭琭楲敬瑦⠠慹牴浩爭杩瑨猠⤩ਊ搨晥湵礠獡猭牴湩ⵧ敲敶獲猨牴†刢癥牥敳愠猠牴湩呓⁒慭畮污祬琠敢挠浯慰楴汢楷桴攠慭獣瘠牥楳湯‼㔲∮ ⠠灡汰⁹✣瑳楲杮 ††††爨癥牥敳 ††††⠠瑳楲杮琭ⵯ楬瑳猠牴⤩⤩ਊ搨晥湵礠獡琭楲浭摥挭浯敭瑮猭慴瑲⠠†吢楨畦据楴湯爠瑥牵獮怠潣浭湥瑳牡❴琠楲浭摥戠⁹桷瑩獥慰散ਢ†礨獡猭琭楲潣浭湥瑳牡⥴⠊敤畦慹牴浩敭ⵤ潣浭湥湥⤨ ∠桔獩映湵瑣潩敲畴湲捠浯敭瑮攭摮‧牴浩敭祢眠楨整灳捡獥椠捠浯敭瑮攭摮‧獩渠瑯攠灭祴ਮ瑏敨睲獩桴敲敶獲摥漠瑵異⁴景映湵瑣潩祠獡琭楲浭摥挭浯敭瑮猭慴瑲‧獩爠瑥牵敮ਢ†椨攨ⁱ氨湥瑧潣浭湥湥⥤〠†††礨獡猭牴湩ⵧ敲敶獲礨獡琭楲浭摥挭浯敭瑮猭慴瑲⤩ †⠠慹牴浩挠浯敭瑮攭摮⤩) (eval-buffer #<buffer *load*-675843> nil "/usr/share/yasnippet-snippets/prog-mode/.yas-setup..." nil t) ; Reading at buffer position 582 (load-with-code-conversion "/usr/share/yasnippet-snippets/prog-mode/.yas-setup.el" "/usr/share/yasnippet-snippets/prog-mode/.yas-setup.el" t t) (load "/usr/share/yasnippet-snippets/prog-mode/.yas-setup" noerror t) (yas--load-yas-setup-file "/usr/share/yasnippet-snippets/prog-mode/.yas-setup") (yas--load-directory-2 "/usr/share/yasnippet-snippets/prog-mode" prog-mode) (yas--load-directory-1 "/usr/share/yasnippet-snippets/prog-mode" prog-mode) (apply yas--load-directory-1 ("/usr/share/yasnippet-snippets/prog-mode" prog-mode)) (#f(compiled-function (&rest args2) #<bytecode 0x1580721bcaa9>)) (yas--load-pending-jits) (yas-minor-mode 1) (yas-minor-mode-on) (yas-global-mode-enable-in-buffers) (run-hooks after-change-major-mode-hook) (run-mode-hooks emacs-lisp-mode-hook) (emacs-lisp-mode) (set-auto-mode-0 emacs-lisp-mode nil) (set-auto-mode) (normal-mode t) (after-find-file nil nil) (find-file-noselect-1 #<buffer init.el> "~/.emacs.d/init.el" :nowarn nil "~/.emacs.d/init.el" (5889992 2050)) (find-file-noselect "/home/nate/.emacs.d/init.el" :nowarn) (desktop-restore-file-buffer "/home/nate/.emacs.d/init.el" "init.el" nil) (desktop-create-buffer 208 "/home/nate/.emacs.d/init.el" "init.el" emacs-lisp-mode (eldoc-mode override-global-mode global-auto-revert-mode projectile-mode ws-butler-mode flycheck-mode yas-minor-mode company-mode company-box-mode which-key-mode popper-mode popper-echo-mode) 25315 (25126 nil) nil nil ((buffer-display-time 25613 56468 927524 293000) (buffer-file-coding-system . utf-16le-with-signature-unix)) ((mark-ring (25026 746 746 746 25026)))) (eval-buffer #<buffer *load*> nil "/home/nate/.emacs.d/var/desktop/emacs-desktop" nil t) ; Reading at buffer position 5639 (load-with-code-conversion "/home/nate/.emacs.d/var/desktop/emacs-desktop" "/home/nate/.emacs.d/var/desktop/emacs-desktop" t t) (load "/home/nate/.emacs.d/var/desktop/emacs-desktop" t t t) (desktop-read) (#f(compiled-function () #<bytecode 0x158071d8da0d>)) (run-hooks after-init-hook delayed-warnings-hook) (command-line) (normal-top-level) The file /usr/share/yasnippet-snippets/prog-mode/.yas-setup.el is not a bunch of chinese characters, it's just an ordinary looking lisp file. So I have no idea what's going on.
emacs -Q(no init file)? If so, post a reproducible recipe. If not, bisect your init file to find the culprit.