unofficial mirror of help-gnu-emacs@gnu.org
 help / color / mirror / Atom feed
From: wael-zwaiter@gmx.com
To: Robert Thorpe <rt@robertthorpeconsulting.com>
Cc: help-gnu-emacs@gnu.org
Subject: Re: Indenting with spaces rather than tabs
Date: Sat, 30 Jan 2021 20:25:47 +0100	[thread overview]
Message-ID: <trinity-f29c0e19-b59f-4797-a167-8d8747cf34b6-1612034747696@3c-app-mailcom-bs16> (raw)
In-Reply-To: <87v9bei7p3.fsf@robertthorpeconsulting.com>

I am having problems with this code

(defun break-comments ()
  "Break lines when they exceed a specific character length."
  (setq-local comment-auto-fill-only-comments t))

(defvar dfv-break-comments-state nil)

;; Cycles line breaking tool
(defun cycle-break-comments ()
  "Break comments in programming languages."
  (interactive)

  (pcase dfv-break-comments-state
    ;;
    (1 (setq-local comment-auto-fill-only-comments nil)
       (auto-fill-mode 0)
       (setq dfv-break-comments-state 0)
       (message "%s" "Disable: Break comments"))
    ;;
    (_ (setq fill-column 72)
       (auto-fill-mode)
       (if (not nil dfv-break-comments-state)
	   (add-hook 'prog-mode-hook #'break-comments)
	 (progn
	   (add-hook 'sh-mode-hook          #'break-comments)
	   (add-hook 'fortran-mode-hook     #'break-comments)
	   (add-hook 'emacs-lisp-mode-hook  #'break-comments)
	   (add-hook 'c-mode-hook           #'break-comments)
	   (add-hook 'c++-mode-hook         #'break-comments)
	   (add-hook 'awk-mode-hook         #'break-comments)
	   (add-hook 'R-mode-hook           #'break-comments)
	   (add-hook 'octave-mode-hook      #'break-comments)))
       ;;
       (add-hook 'texinfo-mode-hook  #'break-comments)
       (add-hook 'text-mode-hook     #'break-comments)
       ;;
       (setq dfv-break-comments-state 1)
       (message "%s" "Break comments using prog-mode-hook")) ))

  ;; Break comments using auto-fill
  (global-set-key (kbd "H-q") #'cycle-break-comments)



> Sent: Sunday, January 31, 2021 at 6:46 AM
> From: "Robert Thorpe" <rt@robertthorpeconsulting.com>
> To: wael-zwaiter@gmx.com
> Cc: help-gnu-emacs@gnu.org
> Subject: Re: Indenting with spaces rather than tabs
>
> wael-zwaiter@gmx.com writes:
>
> > Can I do as follows, so that tabs are removed when "dfv-untabify-state"
> > is "true".
> >
> > (defvar dfv-untabify-state nil)
> > (defun clean-before-save ()
> >   "Removes trailing spaces and tabs upon exiting"
> >
> >   (delete-trailing-whitespace)
> >   (when (dfv-untabify-state)
> >       (unless (member major-mode '(makefile-gmake-mode makefile-mode))
> > 	(untabify (point-min) (point-max))) ))
>
> Yes you can do that.  I think Mr.Berg gave some similar code in this
> thread.
>
> Be careful though about accidentally wrecking files.  I notice you've
> exempted makefiles, which is a good idea.  You might want to exempt
> more, like config files.
>
> If you're doing work on a VC system with others then changing tabs
> becomes a major irritation.  That's because it creates a lot of false
> changes (i.e. line changes where the code hasn't really changed).
>
> BR,
> Robert Thorpe
>
>



  reply	other threads:[~2021-01-30 19:25 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-01-29  1:26 Indenting with spaces rather than tabs wael-zwaiter
2021-01-29  2:00 ` moasenwood--- via Users list for the GNU Emacs text editor
2021-02-01  9:46   ` Philip K.
2021-02-01  9:59     ` moasenwood--- via Users list for the GNU Emacs text editor
2021-01-29  5:25 ` Robert Thorpe
2021-01-29 13:04   ` wael-zwaiter
2021-01-29 13:10     ` moasenwood--- via Users list for the GNU Emacs text editor
2021-01-30 18:46     ` Robert Thorpe
2021-01-30 19:25       ` wael-zwaiter [this message]
2021-01-31  6:02         ` Robert Thorpe
2021-01-31  6:11           ` moasenwood--- via Users list for the GNU Emacs text editor

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=trinity-f29c0e19-b59f-4797-a167-8d8747cf34b6-1612034747696@3c-app-mailcom-bs16 \
    --to=wael-zwaiter@gmx.com \
    --cc=help-gnu-emacs@gnu.org \
    --cc=rt@robertthorpeconsulting.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).