Skip to content

Commit a055ee4

Browse files
committed
Simplify gnuplot-insertions-menu setup
1 parent 85c5a6a commit a055ee4

File tree

1 file changed

+25
-26
lines changed

1 file changed

+25
-26
lines changed

gnuplot.el

Lines changed: 25 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -400,7 +400,6 @@ non-nil."
400400

401401
;;; --- insertions variables and menus
402402

403-
(defvar gnuplot--mode-insertions-menu nil)
404403
(defvar gnuplot--insertions-menu nil
405404
"Menu for insertions in `gnuplot-mode'.
406405
@@ -442,7 +441,8 @@ adding the \"regis\" terminal type to the terminal sub-menu:
442441
(gnuplot-insert \"set terminal regis\")
443442
t]))))")
444443

445-
(defvar gnuplot-insertions-top ()
444+
(defvar gnuplot-insertions-top
445+
'("insert set expression" "---")
446446
"Top part of insertions menu.
447447
See the document string for `gnuplot--insertions-menu'")
448448

@@ -723,30 +723,29 @@ opening an argument-setting popup.")
723723

724724
(defun gnuplot--setup-menubar ()
725725
"Initial setup of gnuplot and insertions menus."
726-
(when gnuplot-insertions-menu-flag
727-
(setq gnuplot-insertions-top
728-
'("insert set expression" "---"))
729-
(setq gnuplot--insertions-menu
730-
(append (list "Insertions")
731-
gnuplot-insertions-top
732-
(list gnuplot-insertions-adornments)
733-
(list gnuplot-insertions-plot-options)
734-
(list gnuplot-insertions-terminal)
735-
(list gnuplot-insertions-x-axis)
736-
(list gnuplot-insertions-y-axis)
737-
(list gnuplot-insertions-z-axis)
738-
(list gnuplot-insertions-x2-axis)
739-
(list gnuplot-insertions-y2-axis)
740-
(list gnuplot-insertions-parametric-plots)
741-
(list gnuplot-insertions-polar-plots)
742-
(list gnuplot-insertions-surface-plots)
743-
gnuplot-insertions-bottom))
744-
(easy-menu-define gnuplot--mode-insertions-menu gnuplot-mode-map
745-
"Insertions menu used in Gnuplot-mode"
746-
gnuplot--insertions-menu))
747-
(easy-menu-define ; set up gnuplot menu
748-
gnuplot-mode-menu gnuplot-mode-map "Menu used in gnuplot-mode"
749-
gnuplot--menu))
726+
(unless gnuplot-mode-menu
727+
(when gnuplot-insertions-menu-flag
728+
(let ((insertions-menu
729+
`("Insertions"
730+
,@gnuplot-insertions-top
731+
,gnuplot-insertions-adornments
732+
,gnuplot-insertions-plot-options
733+
,gnuplot-insertions-terminal
734+
,gnuplot-insertions-x-axis
735+
,gnuplot-insertions-y-axis
736+
,gnuplot-insertions-z-axis
737+
,gnuplot-insertions-x2-axis
738+
,gnuplot-insertions-y2-axis
739+
,gnuplot-insertions-parametric-plots
740+
,gnuplot-insertions-polar-plots
741+
,gnuplot-insertions-surface-plots
742+
,@gnuplot-insertions-bottom)))
743+
(easy-menu-define gnuplot--insertions-menu gnuplot-mode-map
744+
"Insertions menu used in Gnuplot-mode"
745+
insertions-menu)))
746+
(easy-menu-define ; set up gnuplot menu
747+
gnuplot-mode-menu gnuplot-mode-map "Menu used in gnuplot-mode"
748+
gnuplot--menu)))
750749

751750
(defun gnuplot--mark-active ()
752751
"Return non-nil if the mark is active and it is not equal to point."

0 commit comments

Comments
 (0)