[an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] (none) [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] (none) [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive]
 
[an error occurred while processing this directive] [an error occurred while processing this directive]
Skåne Sjælland Linux User Group - http://www.sslug.dk Home   Subscribe   Mail Archive   Forum   Calendar   Search
MhonArc Date: [Date Prev] [Date Index] [Date Next]   Thread: [Date Prev] [Thread Index] [Date Next]   MhonArc
 

Re: [CPROG] C++ indentering i (x)emacs



Anders Bo Rasmussen wrote:
> 
> Er der nogen der har fået emacs's autoindentering af c++-kode til at virke
> lige som den i nedit gør. NEdit har blandt andet den fordel at den ikke
> flytter rundt på skrevet tekst, mens man skriver noget (D.v.s. den flytter
> højest det tegn man skriver). Desuden er emac's indentering højest
> besynderlig med spaces istedet for tab. Fx. :
> 
>         if (oh.shit())
>           {
>             oh.moreshit();
>           }
> 
> som IMHO burde være:
> 
>         if (oh.shit())
>         {
>                 oh.moreshit();
>         }
> 
> Jeg ville være bedre hjulpet med, at den bare lavede samme antal tabs, som
> den linje man står på når man trykker enter har, når man trykker enter,
> end den måde det "fungerer" på nu. Men det bedste ville dog være hvis,
> autoindentering kunne virke nøjagtig som i NEdit.
> 
> --
> Anders Bo Rasmussen          mailto:sslug@sslug
> Frimestervej 42 1.tv         http://www.image.dk/~abr
> 2400 Kbh. NV
> Denmark

Smag og behag er jo meget forskellig :-)
Emacs kan jo programmeres til nærmest hvad som helst. Det jeg bruger er
nok ikke det du ønsker, men så kan du ialtfald få et hint om hvad og
hvor du skal modificere.
I .emacs har jeg adderet følgende linier:

 (add-hook 'c-mode-hook
	   '(lambda () (setq c-basic-offset 3)
	      (c-set-offset 'defun-open '+)
	      (c-set-offset 'defun-block-intro 0)
	      (c-set-offset 'brace-list-open '+)
	      (c-set-offset 'brace-list-intro 0)
	      (c-set-offset 'statement-block-intro 0)
	      (local-set-key [kp-enter] 'newline-and-indent )))

 ;Filer der ender på .c og .h er c-filer og .html er HTML-filer
 (setq auto-mode-alist
   (append '(("\\.c$"  . c-mode)
             ("\\.h$"  . c-mode)
             ("\\.html$" . html-mode)
             ) auto-mode-alist))

 (global-set-key [f12] 'indent-region)


Den sidste linie er god til at rette op på det, hvis der er gået ged i
indenteringen pga. noget 'cut-paste' eller skulle jeg skrive 'kill -
yank' :-)

/Egon


 
Home   Subscribe   Mail Archive   Index   Calendar   Search

 
 
Questions about the web-pages to <www_admin>. Last modified 2005-08-10, 20:08 CEST [an error occurred while processing this directive]
This page is maintained by [an error occurred while processing this directive]MHonArc [an error occurred while processing this directive] # [an error occurred while processing this directive] *