anchor.diff:               (< 1 (length chemin)))
       (unless (char= #\/ (aref chemin (1- (length chemin))))
         (setf chemin (concatenate 'string chemin "/")))
  -    (setf *current-shelf*
  -          (truename (make-pathname
  -                     :name nil :type nil :version nil
  -                     :defaults (if (char= #\/ (aref chemin 0))
  -                                   (merge-pathnames (concatenate 'string "." chemin) *lse-root*)
  -                                   (merge-pathnames chemin *current-directory*))))))
  -  (let ((relpath (enough-namestring *current-shelf* *lse-root*)))
  -   (io-format *task* "~&L'ETAGERE DE RUBAN COURANTE EST: ~:[/~;~]~A~%"
  -              (and (<= 1 (length relpath)) (char= #\/ (aref relpath 0)))
  -              relpath))
  +    (setf *current-shelf* (change-directory *lse-root* *current-shelf* chemin)))
  +  (io-format *task* "~&L'ETAGERE DE RUBAN COURANTE EST: ~A~%"
  +             (clip-directory *lse-root* *current-shelf*))
     (lister-rubans))
  +
   
   
   (defcommand "SELECTIONNER RUBAN" awake un-fichier (ruban)
  
positive.code: 
  
  (defcommand "ETAGERE DE RUBANS" awake  une-ligne (chemin) 
    "Selectionne une étagère de rubans perforés."
    "Les rubans perforés sont simulés par des fichiers.  Ils sont
  conservés sur des \"étagère\", c'est à dire, enregistrés dans des répertoires.
  
  Cette commande permet de sélectionner le répertoire où les rubans
  
negative.code:              (< 1 (length nouveau-repertoire)))
      (unless (char= #\/ (aref nouveau-repertoire (1- (length nouveau-repertoire))))
        (setf nouveau-repertoire (concatenate 'string nouveau-repertoire "/")))
      (setf *current-directory* (change-directory *lse-root*  *current-directory*  nouveau-repertoire)))
    (task-close-all-files *task*))
  
  
  