summaryrefslogblamecommitdiff
path: root/emacs/custom/fcuny-ui.el
blob: dced5cd52a9658e001bf988a980df014dc3de2ae (plain) (tree)
1
2
3
4
5
6
7
8
9

                   





                                   
 







                       



                     


                     
                  

                        
                                                                                                     
                                      
                                                                     


                                                                       



                                            
                                      



                                                                     
                                                                  

                                                               
                                                                 
 







                                                                          






                                            



                                          
                                       
                                  
                                
                                     

                                
                                                         
                                








                                                   
                                     
 
















                                               
 



                                                                               


                     

                                          


                                            



                                        





                                                                                   
                    




                                        
                            



                                        


                                             
                   
(use-package fringe
  :custom
  (left-fringe-width 0)
  (right-fringe-width 0)
  (fringes-outside-margins nil)
  (indicate-buffer-boundaries nil)
  (indicate-empty-lines nil)
  (overflow-newline-into-fringe t))

(use-package scroll-bar
  :config
  (scroll-bar-mode -1))

(use-package tool-bar
  :config
  (tool-bar-mode -1))

(use-package menu-bar
  :config
  (menu-bar-mode -1))

(use-package diminish
  :ensure t)

(use-package frame
  :config
  (blink-cursor-mode -1)
  (setq frame-title-format '("%b@" (:eval (or (file-remote-p default-directory 'host) system-name))))
  (when (memq window-system '(mac ns))
    (add-to-list 'default-frame-alist '(font . "Source Code Pro-15"))
    (add-to-list 'default-frame-alist '(fullscreen . maximized))
    (add-to-list 'default-frame-alist '(ns-appearance . nil))
    (add-to-list 'default-frame-alist '(ns-transparent-titlebar . nil))
    (when (boundp 'ns-use-native-fullscreen)
      (setq ns-use-native-fullscreen nil))
    (when (boundp 'mac-allow-anti-aliasing)
      (setq mac-allow-anti-aliasing t)))
  (when (memq window-system '(x pgtk))
    ;; if using `set-frame-font`, when opening a new frame with
    ;; emacsclient, the font will not be used. Instead, use
    ;; `default-frame-alist` to have the same font with emacsclient.
    (add-to-list 'default-frame-alist '(font . "Source Code Pro-11"))
    ;; this is a fall back in the case we have Unicode characters.
    ;; For example, with this settings, the following source is
    ;; rendered correctly 😇 😀 and 🤢
    (set-fontset-font t 'symbol "Noto Color Emoji" nil 'append)))

(use-package modus-themes
  :ensure t
  :init
  ;; Load the theme files before enabling a theme (else you get an error).
  (modus-themes-load-themes)
  :config
  (modus-themes-load-operandi))

(require 'time)
(setq display-time-24hr-format t)
(setq display-time-day-and-date t)
(setq display-time-format "%a %e %b, %H:%M")
(setq display-time-interval 60)
(setq display-time-default-load-average nil)
(setq zoneinfo-style-world-list
      '(("UTC" "UTC")
        ("America/Los_Angeles" "Berkeley")
        ("America/Denver" "Mountain Time")
        ("America/Chicago" "Central Time")
        ("America/New_York" "New York")
        ("Europe/London" "London")
        ("Europe/Paris" "Paris")
        ("Asia/Calcutta" "Bangalore")
        ("Asia/Tokyo" "Tokyo")))

;; the following setup only works with emacs >=28 I think
(when (boundp 'world-clock-list)
  (setq world-clock-list t))

(when (boundp 'world-clock-time-format)
  (setq world-clock-time-format "%R %z  %A %d %B"))

(when (boundp 'world-clock-timer-enable)
  (setq world-clock-timer-enable t))

(when (boundp 'world-clock-timer-second)
  (setq world-clock-timer-second 60))

;;; Mode line
(setq mode-line-percent-position '(-3 "%p"))
(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
                mode-line-modes
                "  "
                mode-line-misc-info
                mode-line-end-spaces))

;; Disable help mouse-overs for mode-line as they provide little to no benefits
(setq mode-line-default-help-echo nil
      show-help-function nil)

(use-package uniquify
  :defer 5
  :config
  ;; don't muck with special buffers
  (setq uniquify-ignore-buffers-re "^\\*")
  (setq uniquify-buffer-name-style 'forward)
  (setq uniquify-separator "/"))

;; required for dap-mode and dap-ui-mode
(use-package posframe
  :ensure t)

(setq display-buffer-alist
      `(
        ("\\*\\(.* # Help.*\\|Help\\)\\*"    ; See the hooks for `visual-line-mode'
         (display-buffer-reuse-mode-window display-buffer-in-side-window)
         (window-width . 0.35)
         (side . left)
         (slot . 0))
        ("\\*\\(Wo\\)\?Man"
         (display-buffer-in-side-window)
		 (window-width . 0.4)
		 (side . left)
		 (slot . 0))
        ("\\*\\(wclock\\).*"
         (display-buffer-in-side-window)
         (window-width . 0.35)
         (side . left)
         (slot . 0))))

(add-hook 'help-mode-hook #'visual-line-mode)

(provide 'fcuny-ui)