Aller au contenu

Retrouver un fichier .lsp


Messages recommandés

Posté(e)

Bonjour

 

J'aimerais pouvoir retrouver un fichier .lsp en tapant sa commande suivi d'un ? (ra? pour ouvrir Raccord.lsp par exemple)

 

J'ai de nombreux lisp perso, parfois très courts et souvent regroupés dans un même fichier .lsp par thème, mais pas facile d'ouvrir le fichier correspondant pour faire une correction.

Si qqun a une idée, elle est bienvenue.

 

Et merci d'avance

 

 

Posté(e)

Salut,

 

À ma connaissance, ce que tu demandes n'est pas possible : il n'est pas possible de définir une commande sans la nommer au préalable.

 

Mais tu peux faire une commande (findcmd dans l'exemple ci-dessous) qui qui récupère le nom de la commande recherchée et lit les fichiers .lsp du répertoire jusqu'à trouver la commande.

 

(defun c:FindCmd (/ cmd dir files filenames file)
 (if (setq cmd (getstring "\nEntrez le nom de la commande: "))
   (progn
     (setq cmd	  (strcase cmd)
    [surligneur]dir "C:\\Mes fichiers LISP") ;; remplacer par le chemin du répertoire[/surligneur]
    files (vl-directory-files dir "*.lsp" 1)
     )
     (while (and (car files) (not filenames))
(setq file (open (strcat dir "\\" (car files)) "r")
      cnt  0
)
(while (setq cnt  (1+ cnt)
	     line (read-line file)
       )
  (if
    (or
      (vl-string-search (strcat " C:" cmd " ") (strcase line))
      (vl-string-search (strcat " C:" cmd "\t") (strcase line))
      (vl-string-search (strcat "\tC:" cmd " ") (strcase line))
      (vl-string-search (strcat "\tC:" cmd "\t") (strcase line))
    )
     (setq filenames (cons (cons cnt (car files)) filenames))
  )
)
(close file)
(setq files (cdr files))
     )
     (if filenames
(progn
  (princ
    (strcat "\nCommande " cmd " trouvée dans : \n")
  )
  (foreach f filenames
    (princ (strcat "\n- " (cdr f) "\tligne : " (itoa (car f))))
  )
)
(princ "\nFichier LISP non trouvé")
     )
   )
 )
 (princ)
)

Gilles Chanteau - gileCAD - GitHub
Développements sur mesure pour AutoCAD

Posté(e)

Salut,

tu peux utiliser la fonction "rechercher" de windows, avec l'option "Un mot ou une phrase dans le fichier".

 

Mais comme les fichier .lsp ne sont pas recoonu, il faut que tu rajoutes dans la base de Registre :

 

HKEY_CLASSES_ROOT\.lsp\PersistentHandler\(Default) = {5e941d80-bf96-11cd-b579-08002b30bfeb}

Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...

Posté(e)

Merci pour l'astuce Bred,

 

J'avais déjà remarqué cette impossibilité avec les fichiers .lsp, du coup je me servais d'un utilitaire.

 

Cela va simplifier la procédure ;)

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

  • 1 mois après...
Posté(e)

Salut à vous tous,

Super ton lisp gile...

 

Bred peut tu donner la procédure pour inscrire dans la base de registre le petit mot doux que t'a cité?....

 

DAO: AutoCAD(2D & 3D), Covadis

CAO: 3D's MAX, Rhinoceros 3D, REVIT

GeoModeliSation: AutoCAD MEP, RhinoTerrain

Rendu: Vray for Rhino, Keyshot, Lumion

Programmation: Grasshopper, Dynamo, VisualStudio

 

C.V.

Profil LinkedIn

Book

Site web

 

http://nsa37.casimages.com/img/2016/09/26/160926023334168603.jpg

Posté(e)

procédure pour inscrire dans la base de registre le petit mot doux que t'a cité?....

 

Simplement avec regedit dans démarrer, exécuter de windows.

 

http://upload-perso.net/uploads1/1285102891.png

 

Tu peux copier par exemple la clé du .log au-dessus (c'est la même), cela évite une erreur qui serait malvenue.

 

NB:

En même temps une adresse d'hébergeur d'images que je viens de découvrir et qui pourrait être utile au forum

 

http://www.upload-perso.net/index.php

 

Simple et il suffit de coller le lien en BBCode ici.

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Posté(e)

Salut,

Mais en remplacant Autlisp File par ce que t'a écrit:

{5e941d80-bf96-11cd-b579-08002b30bfeb}

Je perd laffichage de 'icone....

DAO: AutoCAD(2D & 3D), Covadis

CAO: 3D's MAX, Rhinoceros 3D, REVIT

GeoModeliSation: AutoCAD MEP, RhinoTerrain

Rendu: Vray for Rhino, Keyshot, Lumion

Programmation: Grasshopper, Dynamo, VisualStudio

 

C.V.

Profil LinkedIn

Book

Site web

 

http://nsa37.casimages.com/img/2016/09/26/160926023334168603.jpg

Posté(e)

Ha!

 

Ce n'est pas mon cas (avec windows XP)

 

C'est bien l'entrée .lsp (point lsp) dans HKEY_CLASSES_ROOT

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Posté(e)

Ha!

Moi j'ai XP64 peut être sa:

Qaund j'écrit "AutoLISPFile" dans les données du registre l'icône est bien reconnu.

Mais quand j'écrit:

{5e941d80-bf96-11cd-b579-08002b30bfeb}

L'icone est perdu et quand je lance une recherche sur un mot d'un LISP(Sujet du début):

fatale erreur de l'explorer....

DAO: AutoCAD(2D & 3D), Covadis

CAO: 3D's MAX, Rhinoceros 3D, REVIT

GeoModeliSation: AutoCAD MEP, RhinoTerrain

Rendu: Vray for Rhino, Keyshot, Lumion

Programmation: Grasshopper, Dynamo, VisualStudio

 

C.V.

Profil LinkedIn

Book

Site web

 

http://nsa37.casimages.com/img/2016/09/26/160926023334168603.jpg

Posté(e)

Je ne sais pas si tu ne fais pas une erreur...

 

Ce n'est pas la clé .lsp qu'il faut modifier mais l'entrée PersistentHandler

 

Si elle n'existe pas sous X64, tu peux essayer de créer l'entrée

 

Si tu n'est pas familier avec regedit, fait bien une sauvegarde de ton registre avant de bidouiller.

Car une base reg corrompue peu être la cata.

 

Donc a tes risques et périls ;)

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Posté(e)

Merci Bonuscad j'ai crée une clé avec la valeur dans l'entrée PersistentHandler

OK mais par contre la recherche annonce runtime C## error...

 

DAO: AutoCAD(2D & 3D), Covadis

CAO: 3D's MAX, Rhinoceros 3D, REVIT

GeoModeliSation: AutoCAD MEP, RhinoTerrain

Rendu: Vray for Rhino, Keyshot, Lumion

Programmation: Grasshopper, Dynamo, VisualStudio

 

C.V.

Profil LinkedIn

Book

Site web

 

http://nsa37.casimages.com/img/2016/09/26/160926023334168603.jpg

Posté(e)

OK mais par contre la recherche annonce runtime C## error...

 

Je me demande su tu ne ferais pas mieux de copier la valeur de l'entrée dans la clé .log que de prendre celle donné par Bred.

 

Il se peut que la valeur diffère entre XP en 32bit et celle en 64bit.

 

Mais je ne suis pas certain de mes dires, c'est juste la logique que j'ai observé.

 

Sous XP32 la valeur de PersistentHandler est identique quelque soit l'extension donc je suppose que sur XP64 le principe doit être le même.

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Posté(e)

C'est la même malheureusement....

DAO: AutoCAD(2D & 3D), Covadis

CAO: 3D's MAX, Rhinoceros 3D, REVIT

GeoModeliSation: AutoCAD MEP, RhinoTerrain

Rendu: Vray for Rhino, Keyshot, Lumion

Programmation: Grasshopper, Dynamo, VisualStudio

 

C.V.

Profil LinkedIn

Book

Site web

 

http://nsa37.casimages.com/img/2016/09/26/160926023334168603.jpg

Posté(e)

Désolé, je vois plus d'explication.

 

A moins que tu n'ouvre pas (par défault dans le navigateur) tes .lsp avec notepad car la clé donné par bred correspond à une ouverture avec celui-ci.

 

Je pense qu'il vaut mieux que tu laisse tomber...

 

 

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Posté(e)

Salut,

C'est exactement sa:

A moins que tu n'ouvre pas (par défault dans le navigateur) tes .lsp avec notepad

J'ai NotePAd++.

Je clique droit sur un de mes lisp et ouvrir avec....

Si je fait ouvrir de NotePad on voit pas les .lsp

DAO: AutoCAD(2D & 3D), Covadis

CAO: 3D's MAX, Rhinoceros 3D, REVIT

GeoModeliSation: AutoCAD MEP, RhinoTerrain

Rendu: Vray for Rhino, Keyshot, Lumion

Programmation: Grasshopper, Dynamo, VisualStudio

 

C.V.

Profil LinkedIn

Book

Site web

 

http://nsa37.casimages.com/img/2016/09/26/160926023334168603.jpg

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 compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité