IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Autres éditeurs Discussion :

Votre config emacs


Sujet :

Autres éditeurs

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    .
    Inscrit en
    Décembre 2009
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Fidji

    Informations professionnelles :
    Activité : .

    Informations forums :
    Inscription : Décembre 2009
    Messages : 35
    Points : 38
    Points
    38
    Par défaut Votre config emacs
    Quel est votre config emacs ?

    Voici la mienne :

    .emacs
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    ;; Auto complettition                                                                                                                        
    (load-file "~/.emacs.d/expander.el")
    (load-file "~/.emacs.d/pulldown.el")
    (load-file "~/.emacs.d/auto-complete.el")
    (load-file "~/.emacs.d/auto-complete-config.el")
    (load-file "~/.emacs.d/auto-complete-extension.el")
     
    ;; Les skeleton                                                                                                                              
    (load-file "~/.emacs.d/skeleton.el")
     
    ;; Les auto                                                                                                                                  
    (load-file "~/.emacs.d/auto.el")
     
    ;; Les fonctions                                                                                                                             
    (load-file "~/.emacs.d/fonctions.el")
     
    ;; Pour le respet de la norme                                                                                                                
    (load-file "~/.emacs.d/norme.el")
     
    ;; Les raccourcis                                                                                                                            
    (load-file "~/.emacs.d/raccourcis.el")
     
    ;; Les truc utiles                                                                                                                           
    (load-file "~/.emacs.d/utils.el")
     
    ;; La personnalisation                                                                                                                       
    (load-file "~/.emacs.d/tunning.el")
     
    ;; Autre truc                                                                                                                                
    (load-file "~/.emacs.d/other.el")
    skeleton.el

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    ;; Skeleton des headers protege
    (define-skeleton insert-protect-header
      "Inserts a define to protect the header file."
      ""
      '(setq str (file-name-sans-extension
              (file-name-nondirectory (buffer-file-name))))
      "#ifndef __"(upcase str)"_H__\n"
      "# define __"(upcase str)"_H__\n"
      "\n"
      "\n"
      "\n"
      "#endif /* !__"(upcase str)"_H__ */\n")
     
    ;; Skeleton des Makefiles
    (define-skeleton create-makefile
      "Create a Makefile."
      ""
      "NAME        = \n"
      "\n"
      "SRCDIR        = src\n"
      "OBJDIR        = obj\n"
      "\n"
      "SRC        = \n"
      "\n"
      "LIB        = -Llib/ -lmy\n"
      "INC        = -I -Iinclude/\n"
      "\n"
      "OBJ        = $(SRC:.c=.o)\n"
      "CC        = /usr/bin/gcc\n"
      "CFLAGS        = -O2\n"
      "CDEBUG        = -W -Wall -ansi -pedantic -g -ggdb\n"
      "RM        = rm -f\n"
      "ECHO        = echo -e\n"
      "\n"
      "$(NAME)        : $(OBJ)\n"
      "          @$(CC) $(INC) $(CFLAGS) -o $(NAME) $(OBJDIR)/$(OBJ) $(LIB)\n"
      "          @$(ECHO) '\\033[0;32m> Compiled\\033[0m'\n"
      "\n"
      "clean        :\n"
      "          -@$(RM) $(OBJ)\n"
      "          -@$(RM) *~\n"
      "          -@$(RM) \#*\#\n"
      "          @$(ECHO) '\\033[0;35m> Directory cleaned\\033[0m'\n"
      "\n"
      "all        : $(NAME)\n"
      "\n"
      "fclean        : clean\n"
      "          -@$(RM) $(NAME)\n"
      "          @$(ECHO) '\\033[0;35m> Remove executable\\033[0m'\n"
      "\n"
      "re        : fclean all\n"
      "\n"
      ".PHONY        : all clean re\n"
      "\n"
      "debug        : $(OBJ)\n"
      "          @$(CC) $(INC) $(CDEBUG) -o $(NAME) $(OBJDIR)/$(OBJ) $(LIB)\n"
      "          @$(ECHO) '\\033[0;32m> Mode Debug: done\\033[0m'\n"
      "\n"
      ".c.o        : \n"
      "          $(CC) $(INC) $(CFLAGS) -o $(OBJDIR)/$@ -c $<\n")
    utils.el
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    ;; Lancer le man
    (defun vectra-man-on-word ()
      "Appelle le man sur le mot pointe par le curseur"
      (interactive)
      (manual-entry (current-word)))
     
    ;; Suppression des espaces en fin de ligne a l'enregistrement
    (add-hook 'c++-mode-hook '(lambda ()
      (add-hook 'write-contents-hooks 'delete-trailing-whitespace nil t)))
    (add-hook   'c-mode-hook '(lambda ()
      (add-hook 'write-contents-hooks 'delete-trailing-whitespace nil t)))
     
    ;; Laisser le curseur en place lors d'un defilement par pages.
    ;; Par defaut, Emacs place le curseur en debut ou fin d'ecran
    ;; selon le sens du defilement.
    (setq scroll-preserve-screen-position t)
     
    ;; Complette automatiquement ce que vous tapez dans le mini-buffer
    (icomplete-mode 1)
     
    ;; Pouvoir utiliser la completition sous emacs en ignorant la casse
    (setq completion-ignore-case t)
     
    ;; Supprime les fichier ~
    (setq make-backup-files nil)
     
    ;; parenthese em couleur
    (custom-set-variables
     '(show-paren-mode t))
    (custom-set-faces)
     
    ;; yes > y | no > n
    (fset 'yes-or-no-p 'y-or-n-p)
     
    ;; Affiche le numero de ligne et de colonne
    (column-number-mode t)
    (line-number-mode t)
     
    ;; Enlever le message au demarrage
    (setq inhibit-startup-message t)
     
    ;; Remplacer le texte selectionne si on tape
    (delete-selection-mode t)
     
    ;; Affiche l'heure au format 24h
    (setq display-time-24hr-format t)
    (setq displat-time-day-and-date t)
     
    ;; Sauvegarder la session
    (desktop-load-default)
    (desktop-read)
     
    ;; ido mode
    (require 'ido)
    (ido-mode t)
    (setq ido-enable-flex-matching t)
    raccourcis.el
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    ;; Reduit la fontion sur elle meme
    (add-hook 'c-mode-common-hook 'hs-minor-mode)
    (add-hook 'lisp-mode-hook 'hs-minor-mode)
    (add-hook 'emacs-lisp-mode-hook 'hs-minor-mode)
    (add-hook 'python-mode-hook 'hs-minor-mode)
    (global-set-key [f1] 'hs-hide-block)
     
    ;; Et la 'de'reduit
    (global-set-key [f2] 'hs-show-block)
     
    ;; F3 : lance le man sur le mot ou se trouve le curseur
    (global-set-key [f3] 'vectra-man-on-word)
     
    ;; F6 -> compiler
    (setq compilation-window-height 10)
    (setq compilation-window-width 10)
    (global-set-key [f6] `compile)
     
    ;; F7 -> GDB
    (setq-default gdb-many-windows t)
    (global-set-key [f7] `gdb)
     
    ;; F8 -> aller a la prochaine erreur de compilation
    (global-set-key    [f8] 'next-error)
    Et vous ?

  2. #2
    Invité
    Invité(e)
    Par défaut
    Super ta config, je vais tester :-)))) Merci !! Au passage, comment tu testes la norme ? (Si tu es bien à Epitech...)

    Il y en a que j'ai dû ne pas voir dans tes fichiers, désolé pour la redondance :

    Je mets en premier le plus utile pour moi, pour ceux qui codent sous Unix/Windows/Mac en même temps :
    ;Transform automatically end of line from mac/windows to unix
    (defun no-junk-please-were-unixish ()
    (let ((coding-str (symbol-name buffer-file-coding-system)))
    (when (string-match "-\\(?:dos\\|mac\\)$" coding-str)
    (setq coding-str
    (concat (substring coding-str 0 (match-beginning 0)) "-unix"))
    (message "CODING: %s" coding-str)
    (set-buffer-file-coding-system (intern coding-str)) )))
    (add-hook 'find-file-hooks 'no-junk-please-were-unixish)

    ;; Colorise en Rouge les espace
    (setq show-trailing-whitespace t)
    (setq-default show-trailing-whitespace t)

    ; Affiche la parenthese & Accolade parrente
    (require 'paren)
    (show-paren-mode)

    ; Affiche l'heure au format 24h
    (setq display-time-24hr-format t)
    (setq display-time-day-and-date t)

    ; surlignage d'une région sélectionnée
    (transient-mark-mode t)

    ; Activer la coloration syntaxique
    (global-font-lock-mode t)

    ; Supprime tous les espaces en fin de ligne
    ; http://www.splode.com/users/friedman...re/emacs-lisp/
    (autoload 'nuke-trailing-whitespace "whitespace" nil t)

    ; Mettre un titre aux fenêtres
    (setq frame-title-format '(buffer-file-name "Emacs: %b (%f)" "Emacs: %b"))

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    .
    Inscrit en
    Décembre 2009
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Fidji

    Informations professionnelles :
    Activité : .

    Informations forums :
    Inscription : Décembre 2009
    Messages : 35
    Points : 38
    Points
    38
    Par défaut
    Lol oui je suis a epitech, mais je ne verifie pas la norme automatiquement pour le moment.

    les fichier qui manque sont principalement le mode auto-complete [ici]

    Pour une verification syntaxique j'ai vu un tit mode sympas, mais pas trop compris comment il marcher encore (il y a des explication sur youtube), flymake

    Il y a aussi auto, qui effectue certaine action quand on ouvre un fichier en particulier (genre .h vide, alors il le protege)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    ;; Si Makefile vide, creer une makefile                                                                                                      
    (add-hook 'find-file-hook
              (lambda()
                (if (and
                     (string-match "\\Makefile$" (buffer-file-name))
                     (= (buffer-size) 0))
                    (create-makefile))))
     
    ;; Si header vide, creer un header protege                                                                                                   
    (add-hook 'find-file-hook
              (lambda()
                (if (and
                     (string-match "\\.h$" (buffer-file-name))
                     (= (buffer-size) 0))
                    (insert-protect-header
                     (goto-line 13)))))

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 57
    Points : 53
    Points
    53
    Par défaut
    C'est interessant. Ce que je cherche plutot, c'est comment avoir la completion sur les noms presents par include (et eventuellement, avoir par defaut ceux venant des entetes standard) facilement ...

    La derniere fois que j'avais recherchee c'etait a base de etags mais trop complexe a mettre en oeuvre.

  5. #5
    Futur Membre du Club
    Inscrit en
    Juillet 2010
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 4
    Points : 5
    Points
    5
    Par défaut
    J'ai découvert ça récemment :

    http://cedet.sourceforge.net/

    je viens de l'installer et je suis sous windows au boulot donc j'ai pas encore pu vraiment tester
    Mais ça à l'air de gérer correctement une vraie auto-complétion "intelligente", qui suit les .h, comprends un minimum l'architecture du projet et propose une complétion pertinente

  6. #6
    Membre expert Avatar de jabbounet
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juin 2009
    Messages
    1 909
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 909
    Points : 3 284
    Points
    3 284
    Par défaut
    ma config emacs est assez compliquée, il me faudra la retravailler avec emacs 24

    En gros elle me permet d'utiliser les éléments suivant (pour le C++ principalement):
    - flymake + extension + un modif perso
    - autocomplete
    - autocomplete gtags,
    - tempo cpp (pour generer du code sur certains raccurcis)
    - Quelques parser maison pour analyser les fichier pondu par les application sur lesquelle je travaille
    - un simulateur tcp (tout en lisp qui écoute sur un port et qui simule les réponse faite aux applis)
    - Un mode me permettant de naviguer plus facilement dans les différents projets (tournat sous windows et linux et initialement pense pour visual studio)
    - quelque générateurs de données pour des tests.
    - ...
    bazar: http://www.improetcompagnie.com/publ...ctacles-6.html

    BÉPO la disposition de clavier francophone, ergonomique et libre: http://bepo.fr/wiki/Accueil

    Emacs Wiki: http://www.emacswiki.org/

    En attente de ce que produira: http://www.pushmid.com

  7. #7
    Membre à l'essai
    Profil pro
    Administrateur de base de données
    Inscrit en
    Septembre 2011
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : Congo-Brazzaville

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2011
    Messages : 15
    Points : 19
    Points
    19
    Par défaut sml-mode dans Emacs
    bonjour
    Es ce que quelqu'un peut m'aidez pour integer SML NJ à Emacs afin d'amelier la convivialité de l'interface graphique et l'indentation sous Emacs.
    Car en fait j'ai installer les deux applis mais j'ai des problemes de comfiguration.
    Merci

  8. #8
    Membre expert Avatar de jabbounet
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juin 2009
    Messages
    1 909
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 909
    Points : 3 284
    Points
    3 284
    Par défaut
    Je viens de faire une recherche rapide, SML/NJ est un langage fonctionnel, il n'a pas grand chose a voir avec l'interface d'emacs.

    Il n'y a pas besoin d'installer SML NJ pour rendre emacs plus convivial (coloration syntaxique, complétion automatique, indentation, ...) beaucoup de ces choses sont déjà présente nativement même s'il elle peuvent être un peu caché.

    A moins que ton travaille tourne autour de SML/NJ (développement d'application, travaux sur les langage fonctionnels, ...) il n'est pas utile d'installer un mode spécifique pour ce langage.

    Sémantique mise à part quelques liens pour débuter sous emacs

    En premier conseil je te dirais d'abord d'essayer de te familiariser avec les commandes de bases, en ajoutant des configurations basique tel que la coloration syntaxique et l'indentation automatique par exemple.

    un fois familiarisé avec les bases tu pourras commencer a chercher a intégrer des éléments plus avancés qui te paraissent intéressants.

    http://ensiwiki.ensimag.fr/index.php/Emacs
    http://www.emacswiki.org/
    http://ergoemacs.org/emacs/emacs_ins..._packages.html
    http://www.dotemacs.de/about.html
    ...
    bazar: http://www.improetcompagnie.com/publ...ctacles-6.html

    BÉPO la disposition de clavier francophone, ergonomique et libre: http://bepo.fr/wiki/Accueil

    Emacs Wiki: http://www.emacswiki.org/

    En attente de ce que produira: http://www.pushmid.com

  9. #9
    Futur Membre du Club Avatar de L0ser
    Homme Profil pro
    Etudiant
    Inscrit en
    Août 2017
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Etudiant

    Informations forums :
    Inscription : Août 2017
    Messages : 8
    Points : 9
    Points
    9
    Par défaut
    Ma config ressemble à ça :

    .emacs:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
     
    ;; Environnement
     
    (set-language-environment "UTF-8")
     
    (load-file "~/.emacs-custom.el")
    (load-file "~/.emacs.d/time.el")
     
    ;;dictionnaire francais par defaut
    (setq ispell-dictionary "francais")
     
    ;; Remplacer le texte selectionne si on tape
    (delete-selection-mode t)
     
    ;; affiche les espaces inutile
    (setq-default show-trailing-whitespace t)
     
    ;; Affiche le numéro de ligne et de colonne
    (column-number-mode t)
    (line-number-mode t)
    (global-linum-mode 1)
     
    ;; Afficher la 'parenthèse correspondante'
    (require 'paren)
    (show-paren-mode)
     
    ;; Activer la coloration syntaxique
    (global-font-lock-mode t)
     
    ;; Complette automatiquement ce que vous tapez dans le mini-buffer
    (icomplete-mode 1)
     
    ;; yes > y | no > n
    (fset 'yes-or-no-p 'y-or-n-p)
     
    ;; Melpa
    (require 'package)
    (add-to-list 'package-archives '("melpa" . "http://melpa.org/packages/"))
    (package-initialize)
    .emacs.d/time.el
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    ;; format jour/mois/an pour le calendrier (M-x calendar)
    (setq european-calendar-style t)
    ; la semaine commence le lundi
    (setq calendar-week-start-day 1)
    ;; Affiche l'heure au format 24h
    (setq display-time-24hr-format t)
    (setq displat-time-day-and-date t)
    (display-time)
        ;; jours et mois en francais dans le calendrier
    (defvar calendar-day-abbrev-array
    ["dim" "lun" "mar" "mer" "jeu" "ven" "sam"])
    (defvar calendar-day-name-array
    ["dimanche" "lundi" "mardi" "mercredi" "jeudi" "vendredi" "samedi"])
    (defvar calendar-month-abbrev-array
    ["jan" "fév" "mar" "avr" "mai" "jun""jul" "aou" "sep" "oct" "nov" "déc"])
    (defvar calendar-month-name-array
    ["janvier" "février" "mars" "avril" "mai" "juin""juillet" "aout" "septembre" "octobre" "novembre" "décembre"])
    .emacs-custom.el
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    (custom-set-variables
     '(custom-enabled-themes (quote (wombat))))
    (custom-set-faces)
    Je dois l'avouer pour le momment c'est assez pauvre mais voila je suis comme meme assez fiere de cette config

Discussions similaires

  1. Réponses: 18
    Dernier message: 24/10/2013, 14h24
  2. [Emacs + CEDET] Votre avis sur EDE ?
    Par delroot dans le forum Autres EDI
    Réponses: 0
    Dernier message: 12/05/2012, 21h50
  3. J'ai besoin de votre avis pour une config
    Par x-day dans le forum Ordinateurs
    Réponses: 10
    Dernier message: 03/01/2012, 10h31
  4. [PC fixe] config PC si vous pouvez donner votre avis
    Par kacedda dans le forum Ordinateurs
    Réponses: 2
    Dernier message: 07/01/2009, 15h42
  5. Votre avis sur une config
    Par Stuff dans le forum Ordinateurs
    Réponses: 14
    Dernier message: 15/07/2008, 14h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo