unofficial mirror of help-gnu-emacs@gnu.org
 help / color / mirror / Atom feed
* fortran pre-process
@ 2004-05-17 13:55 Randy Haddox
  0 siblings, 0 replies; 2+ messages in thread
From: Randy Haddox @ 2004-05-17 13:55 UTC (permalink / raw)


Hello, I am working with emacs lisp programming some and would like help
to do the following:

Hide a code block based on a define variable when using preprocessor
directives (#define, #ifdef, #endif).


Thanks,
Randy

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: fortran pre-process
       [not found] <mailman.5811.1084805773.1061.help-gnu-emacs@gnu.org>
@ 2004-05-17 16:01 ` Kevin Rodgers
  0 siblings, 0 replies; 2+ messages in thread
From: Kevin Rodgers @ 2004-05-17 16:01 UTC (permalink / raw)


Randy Haddox wrote:
 > Hello, I am working with emacs lisp programming some and would like
 > help to do the following:
 >
 > Hide a code block based on a define variable when using preprocessor
 > directives (#define, #ifdef, #endif).

 From lisp/progmodes/hideif.el:

;; To initialize, toggle the hide-ifdef minor mode with
;;
;; M-x hide-ifdef-mode
;;
;; This will set up key bindings and call hide-ifdef-mode-hook if it
;; has a value.  To explicitly hide ifdefs using a buffer-local
;; define list (default empty), type
;;
;; M-x hide-ifdefs  or C-c @ h
;;
;; Hide-ifdef suppresses the display of code that the preprocessor wouldn't
;; pass through.  The support of constant expressions in #if lines is
;; limited to identifiers, parens, and the operators: &&, ||, !, and
;; "defined".  Please extend this.
;;
;; The hidden code is marked by ellipses (...).  Be
;; cautious when editing near ellipses, since the hidden text is
;; still in the buffer, and you can move the point into it and modify
;; text unawares.  If you don't want to see the ellipses, set
;; selective-display-ellipses to nil.  But this can be dangerous.
;; You can make your buffer read-only while hide-ifdef-hiding by setting
;; hide-ifdef-read-only to a non-nil value.  You can toggle this
;; variable with hide-ifdef-toggle-read-only (C-c @ C-q).
;;
;; You can undo the effect of hide-ifdefs by typing
;;
;; M-x show-ifdefs  or C-c @ s
;;
;; Use M-x hide-ifdef-define (C-c @ d) to define a symbol.
;; Use M-x hide-ifdef-undef (C-c @ u) to undefine a symbol.
;;
;; If you define or undefine a symbol while hide-ifdef-mode is in effect,
;; the display will be updated.  Only the define list for the current
;; buffer will be affected.  You can save changes to the local define
;; list with hide-ifdef-set-define-alist.  This adds entries
;; to hide-ifdef-define-alist.
;;
;; If you have defined a hide-ifdef-mode-hook, you can set
;; up a list of symbols that may be used by hide-ifdefs as in the
;; following example:
;;
;; (setq hide-ifdef-mode-hook
;;      (lambda ()
;; 
  (if (not hide-ifdef-define-alist)
;; 
      (setq hide-ifdef-define-alist
;; 
	  '((list1 ONE TWO)
;; 
	    (list2 TWO THREE)
;; 
	    )))
;; 
  (hide-ifdef-use-define-alist 'list2) ; use list2 by default
;; 
  ))
;;
;; You can call hide-ifdef-use-define-alist (C-c @ U) at any time to specify
;; another list to use.
;;
;; To cause ifdefs to be hidden as soon as hide-ifdef-mode is called,
;; set hide-ifdef-initially to non-nil.
;;
;; If you set hide-ifdef-lines to t, hide-ifdefs hides all the #ifdef lines.
;; In the absence of highlighting, that might be a bad idea.  If you set
;; hide-ifdef-lines to nil (the default), the surrounding preprocessor
;; lines will be displayed.  That can be confusing in its own
;; right.  Other variations on display are possible, but not much
;; better.
;;
;; You can explicitly hide or show individual ifdef blocks irrespective
;; of the define list by using hide-ifdef-block and show-ifdef-block.
;;
;; You can move the point between ifdefs with forward-ifdef, backward-ifdef,
;; up-ifdef, down-ifdef, next-ifdef, and previous-ifdef.
;;
;; If you have minor-mode-alist in your mode line (the default) two labels
;; may appear.  "Ifdef" will appear when hide-ifdef-mode is active.  "Hiding"
;; will appear when text may be hidden ("hide-ifdef-hiding" is non-nil).

-- 
Kevin Rodgers

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2004-05-17 16:01 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-05-17 13:55 fortran pre-process Randy Haddox
     [not found] <mailman.5811.1084805773.1061.help-gnu-emacs@gnu.org>
2004-05-17 16:01 ` Kevin Rodgers

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).