       (format "\\(%s\\)\\|\\(%s\\)"
               vc-ignore-dir-regexp tramp-file-name-regexp))
 
-(defvar my/remote-host-list '())
 (defun my/connect-to-remote-host(&optional arg)
   "Connect to a remote host from `my/remote-host-list'."
   (interactive "P")

  (require 'guide-key)
  (guide-key-mode 1))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; os ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(let* ((system (car (reverse (split-string (symbol-name system-type)
                                           "\\/" t))))
       (os-dir (concat my/user-directory "settings/os/" system "/"))
       (system-file (concat os-dir system))
       (path-file (concat os-dir "path"))
       (include-file (concat os-dir "include"))
       (lib-file (concat os-dir "lib"))
       (libpath-file (concat os-dir "libpath"))
       )
  ;; load os file
  (load system-file)
  ;; check for any additional environment variables
  (if (file-exists-p path-file)
      (progn
        (load-environment-variable-from-file "PATH" path-file)
        ;; replicate path (delimiter-separated string of paths) into
        ;; exec-path (list of paths); by convention, ends in exec-dir
        (setq exec-path (append
                         (read-file-into-list-of-lines path-file)
                         (list (convert-standard-filename exec-directory))))))
  (if (file-exists-p include-file)
      (load-environment-variable-from-file "INCLUDE" include-file))
  (if (file-exists-p lib-file)
      (load-environment-variable-from-file "LIB" lib-file))
  (if (file-exists-p libpath-file)
      (load-environment-variable-from-file "LIBPATH" libpath-file))
  )

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; gui ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(let ((gui-dir (concat my/user-directory "settings/gui/"))
      (gui window-system)
      gui-file)
  ;; load gui file
  (setq gui-file (concat gui-dir (if (null gui) "tty" (symbol-name gui))))
  (load gui-file)
  )

(setq-default frame-title-format
              '(:eval
                (format "%s@%s: %s %s"
                        (or (file-remote-p default-directory 'user)
                            user-real-login-name)
                        (or (file-remote-p default-directory 'host)
                            system-name)
                        (if dired-directory
                            (concat "{" (buffer-name) "}")
                          (buffer-name))
                        (if (profile-current-get 'project-name)
                            ;; the parent profile "default" happens to
                            ;; have an empty 'project-name attribute
                            (concat
                             "("
                             (upcase (symbol-name profile-current))
                             ")")
                          "")           ;else empty if no project name
                        )))


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; site ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun my/load-site-file (name)

  (rich-minority-mode 1)
  (setq rm-blacklist
        '(" AC" " yas" " Undo-Tree" " Abbrev" " Guide" " Hi" " $" " ,"
          " Ifdef" " Rbow" " ivy" " ElDoc" " (*)" " wg" " ⛓" " GitGutter"
          " Fly"))
  )

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; smart-mode-line ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
