bonuscad Posté(e) le 28 janvier 2011 Posté(e) le 28 janvier 2011 Bonjour, Tout le monde c'est rendu compte que lorsque on publie un code (dans les balises appropriées ;) ),des lignes vides s'intercalent systématiquement pour chaque lignes :mad: Bon quand le code est court, c'est pas trop gênant, mais quand il commence à être conséquent, la molette de défilement tourne à plein régime :P Donc je vous propose un bout de code tout simple, sans grande prétention, pour remédier à ce petit inconvénient du forum. Donc après avoir fait un copier-coller du code et sauvegarder celui ci dans un fichier .lsp , il vous suffira d'appliquer ce petit correctif qui suit. [surligneur]IMPORTANT: La 1ere ligne de VOTRE fichier lisp NE DOIT PAS ETRE une ligne VIDE [/surligneur] Ceci justement pour la bonne synchronisation des suppressions des lignes vides. ;) ((lambda ( / file_name f_open id_line f_new_open) (setq file_name (getfiled "Nom du fichier lisp à corriger ?: " "" "lsp" 0)) (if (null file_name) (exit)) (if (findfile file_name) (progn (setq f_open (open file_name "r") id_line 0 fnew_open (open (strcat (vl-string-right-trim "lsp" file_name) "by-CadXp-corrected.lsp") "w") ) (while (setq line_char (read-line f_open)) (setq id_line (1+ id_line)) (if (not (zerop (rem id_line 2))) (write-line line_char fnew_open) ) ) (close fnew_open) (close f_open) ) ) (princ (strcat "\nLe fichier \"" (strcat (vl-string-right-trim "lsp" file_name) "by-CadXp-corrected.lsp") "\" a été créé")) (prin1) )) Il n'y a plus qu'a faire glisser ce code dans la fenêtre graphique quand vous voudrez remettre en forme un lisp issu de CadXp.Je l'ai nommé CadXp-Corrected.lsp pour l'enregistrement afin de le retrouver facilement, mais vous faites ce que vous voulez... Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
chris_mtp Posté(e) le 28 janvier 2011 Posté(e) le 28 janvier 2011 Bonjour Bonuscad, Personnellement, j'utilise le gratuiciel GBEPad.exe pour supprimer les lignes vides et les espaces en début ou fin de ligne pour avoir un code concis. http://www.toocharger.com/fiches/windows/gbepad/7893.htm Bravo encore pour cette routine.John
(gile) Posté(e) le 21 octobre 2011 Posté(e) le 21 octobre 2011 Salut, Je propose aussi ma solution (.NET) - télécharger RemoveLineFeedsInClipboardContent.zip ;- extraire RemoveLineFeedsInClipboardContent.exe directement sur le bureau (ou faire un raccourci). Quand vous copiez un code sur CADxp, double-cliquez sur l'exe (ou sur le raccourci) avant de coller le code. Le code de l'exeusing System; using System.Text.RegularExpressions; using System.Windows; namespace RemoveLineFeedsInClipboardContent { class Program { [sTAThread] static void Main() { if (Clipboard.ContainsText()) { try { string content = Clipboard.GetText(); content = Regex.Replace(content, "(\r\n){2}", "\r\n"); Clipboard.SetText(content); } catch { } } } } } PS : j'ai oublié de dire, le Framework .NET version 3.0 ou supérieur est requis (le 3.5 est installé automatiquement avec la AutoCAD 2010, le 4.0 avec 2012).RemoveLineFeedsInClipboardContent.zip Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
flobonhomme Posté(e) le 21 octobre 2011 Posté(e) le 21 octobre 2011 Salut à tous, Sinon pour ceux qui bossent avec Notepad++, et oui il y en a encore ..... Le texte en Sélection :Menu TextFX > TextFX Edit > Delete Blank Lines Et pour installer le plugin Menu Compléments > Plugin Manager > Show Plugin Manager Et cocher le plugin TextFx > Install Voilou @+ Dessinateur 2D / 3D InfographisteEn recherche de poste sur la région du grand Lille. Autocad, Allplan, Microstation, Sketchup.Photoshop, Illustrator, Artlantis.
(gile) Posté(e) le 21 octobre 2011 Posté(e) le 21 octobre 2011 L'avantage de ma solution, c'est qu'elle ne supprime pas toutes les lignes vides.Si l'auteur du code a mis volontairement une ligne vide (pour la lisibilité ou, plus important, pour une validation dans un script) l'ancien CADxp (mais aussi d'autres sites comme le blog de Kean Walmsley) rajoutait une ligne vide supplémentaire. Seule cette ligne supplémentaire est supprimée par RemoveLineFeedsInClipboardContent. Exemple avec ce code :(defun div (x y / *error*) ; 'localisation' de la fonction *error* ;; redéfinition de la fonction*error* (modification du message) (defun *error* (msg) (princ (strcat "\nErreur dans la fonction div: " msg)) (princ) ) ;; expressions de la fonction principale (/ x (float y)) ) Résultat, les sauts de ligne avant les commentaires sont conservés :(defun div (x y / *error*) ; 'localisation' de la fonction *error* ;; redéfinition de la fonction*error* (modification du message) (defun *error* (msg) (princ (strcat "\nErreur dans la fonction div: " msg)) (princ) ) ;; expressions de la fonction principale (/ x (float y)) ) Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
Messages recommandés
Créer un compte ou se connecter pour commenter
Vous devez être membre afin de pouvoir déposer un commentaire
Créer un compte
Créez un compte sur notre communauté. C’est facile !
Créer un nouveau compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant