   (when log4cl-mode
     (log4cl-check-connection)))
 
-(defun log4cl-redefine-menus () 
+(defun log4cl-redefine-menus (&optional global) 
+  "Redefine Log4CL menus. If GLOBAL is true, make dropdown menu
+global instead of local to files with `log4cl-mode' active"
   (easy-menu-define log4cl-popup-menu nil nil (log4cl-make-levels-menu 'log4cl-popup-logger)) 
-  (easy-menu-define log4cl-menu log4cl-mode-map "Log4CL" (log4cl-make-menubar-menu)))
+  (if global 
+      (easy-menu-define log4cl-menu (current-global-map) "Log4CL" (log4cl-make-menubar-menu))
+    (easy-menu-define log4cl-menu log4cl-mode-map "Log4CL" (log4cl-make-menubar-menu))))
 
 (log4cl-redefine-menus)
 

    `(:package ,package :file ,file :rest ,rest :package-offset ,package-offset
               :root ,(getf info :root))))

(defun log4cl-info-symbol-to-string (info-symbol)
  (ecase info-symbol
    (log4cl-root-logger "root")
    (log4cl-package-logger "package")
    (log4cl-file-logger "file")
    (log4cl-defun-logger "defun")))

(defun log4cl-level-menu-item (info-symbol level)
  "Create the easy-menu menu item that toggles the log level"

(defvar log4cl-package-regexp)
(defvar log4cl-file-regexp)
(defvar log4cl-rest-regexp)

(defvar log4cl-mode-map (make-sparse-keymap))

(define-key log4cl-mode-map "\C-c\C-g" 'log4cl-fast-level-selection)

(setq log4cl-log-level-regexp
      (concat "[[(< ]?"
