Faire un don ! | | style | statistiques | contactez-nous | plan | lettre d'information

Journal : Emacs ma tuer

Posté par Benjamin (Jabber id, page perso, ) le 18 décembre 2005
Argh.

Plusieurs heures, cela fait plusieurs heures et depuis plusieurs fois que je bute sur un problème à la noix avec PHP sous emacs. j'ai ce morceau de code :
... if ($_REQUEST["action"]=="recalc") { ...
jusque là tout va bien. Je veux y ajouter une seconde condition :
... if ($_REQUEST["action"]=="recalc" || isset($_REQUEST["go"])) { ...
et là, c'est le drame :

Parse error: parse error, unexpected T_STRING in /var/alternc/html/i/ika/dev/panier.php on line 6

Le problème est que cela fait plusieurs fois que j'ai quelques problèmes avec le fait d'ajouter un ou logique ( || ) dans un if en php. Bizarre étrange et tout. Et ça n'est pas http://php.net/operators qui m'apprends grand chose, si ce n'est que je peux essayer "or" au lieu de "||", ce qui, une fois précédente, m'avais sauvé (sans que je sache pourquoi, j'ai peur quand l'informatique me fait ça hein ...) mais là, que dalle ...

Parse error: parse error, unexpected T_STRING in /var/alternc/html/i/ika/dev/panier.php on line 7

(mouaip, j'ai découpé mon if en plusieurs lignes, ca peut aider ...)

J'ai fini par trouver : sur mon clavier azerty, le | s'obtient avec Alt-gr+6 et après les 2 |, j'ai un espace à écrire, pour séparer le ou logique de la condition suivante. Cet espace a eu le malheur d'être composé avec emacs (que je continue à adorer cependant ...). Conséquence de cet acte inconsidéré, ledit espace (Alt-gr + espace) n'est pas un caractère hexa 0x20 mais un espace insécable : 0xA0 !!

donc, emacs ma tuer, plusieurs heures de prise de tête à essayer de comprendre pourquoi ce problème, accusant à nouveau PHP de tous les maux sans raison, et, je le sais maintenant, à tort.

> Lire le journal (45 commentaires, moyenne: 2,5).  

Cette discussion est archivée, il n'est plus possible de laisser des commentaires.

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.

[+] ah...

Posté par elloco (page perso, ) le 18/12/2005 à 20:41. (lien). Évalué à -10.

...d'accord. Moi je suis allé mangé au restaurant avec toute ma famille. C'était bien bon.

Sinon pour revenir dans le sujet... moi j'utilise KWrite et les espaces sont des espaces.

espace insécable = utile

Posté par Pierrick Le Gall (page perso, ) le 18/12/2005 à 20:43. (lien). Évalué à 1.

En lisant ton journal, je me suis dit "super, je vais enfin pouvoir écrire foo : bar et qu'Emacs ne coupe pas la ligne entre foo et :". Et bien non, déception, Emacs coupe quand même. Je continue à faire comme en anglais : pas d'espace avant le :.

PS : si quelqu'un a la solution, je suis à l'écoute :-)

  • [^]Re: espace insécable = utile

    Posté par divad () le 18/12/2005 à 21:38. (lien). Évalué à 10.

    Utilises:
    NEdit, vim, vi, joe, kate ou autre éditeur.

    Car on le sait bien emacs est un OS, pas un éditeur de texte

    --
    --
    make bzImage
  • [^]Re: espace insécable = utile

    Posté par Matthieu Moy (page perso, ) le 19/12/2005 à 10:36. (lien). Évalué à 7.


    (defun my-fill-nobreak-predicate ()
    (save-match-data
    (or (looking-at "[ \t]*[])}»!?;:]")
    (looking-at "[ \t]*\\.\\.\\.")
    (save-excursion
    (skip-chars-backward " \t")
    (backward-char 1)
    (looking-at "[([{«]")))))

    (setq fill-nobreak-predicate 'my-fill-nobreak-predicate)


    Et pour voir les espaces insécables,


    (make-face 'nbsp-face)
    (require 'disp-table)
    (aset standard-display-table
    (make-char 'latin-iso8859-1 (- ?\240 128))
    (vector (+ ?\267 (* 524288 (face-id 'nbsp-face)))))


    puis définir la face 'nbsp-face.

    Sinon, j'ai pas compris le rapport entre l'espace insécable en faisant AltGr-ESPACE et Emacs. C'est défini par la keymap X, pas par l'éditeur. (l'éternel "foo | bar" ou on relache trop tard AltGr sur un azerty, ça marche aussi dans un shell !)

Comme quoi...

Posté par Mathieu Stumpf (Jabber id, page perso, ) le 18/12/2005 à 20:53. (lien). Évalué à 10.

[troll style="classique;indémodable" ]
..on vois bien que vim c'est mieux qu'emacs!
[/troll]

  • [^]Re: Comme quoi...

    Posté par champi () le 18/12/2005 à 21:59. (lien). Évalué à 2.

    pour info, c'est comment l'espace insecable sous vim ?

    • [^]Re: Comme quoi...

      Posté par LeMarsu (page perso, ) le 19/12/2005 à 09:30. (lien). Évalué à 3.

      Oulà, c'est vrai, c'est compliqué comme question... Tien, et si j'essayai Alt-Espace.

      Wow, c'est fou, ça marche aussi dans vim ! Incroyable hein !

      LeMarsu, Nan, mais je vous jure, il y'en a qui ne connaissent pas vim !

Une espace

Posté par Guillaume G. () le 18/12/2005 à 21:39. (lien). Évalué à 6.

S'agissant du (non-)caractère typographique, on dit une espace.

  • [^]Re: Une espace

    Posté par kursus_hc () le 18/12/2005 à 22:20. (lien). Évalué à 2.

    Et dit-on "un" ou "une" 806 ?

    • [^]Re: Une espace

      Posté par divad () le 18/12/2005 à 22:33. (lien). Évalué à 7.

      On dit un C8

      --
      --
      make bzImage
  • [^]Re: Une espace

    Posté par ♪♬♬♩ ♫♪♬♩ () le 19/12/2005 à 08:04. (lien). Évalué à 0.

    Je ne dis pas ça pour ta remarque, qui est très pertinente, et vraie, mais franchement, en français, on se traîne des trucs incroyables.

    Le pire, c'est que nos immortels et autres se secouent la nouille pour des conneries, alors qu'à côté de ça, on utilise toujours majoritairement les soixante-dix, quatre-vingt, quatre-vingt-dix et consors, mais par contre, on dit bien septuagénaire, octogénaire, nonagénaire, etc.

    Quand on pense que nos cousins belges et suisses (par exemple) utilisent depuis bien longtemps les beaucoup plus logiques septante, octante (huitante pour les suisses, mais personne n'est parfait), et nonante...

    • [^]Re: Une espace

      Posté par divad () le 19/12/2005 à 09:07. (lien). Évalué à 1.

      Moi, je reste neutre quand on parle des Suisses
      Bon, je vais m'acheter un foehn

      (Oui, commentaire totalement inutile, mais elle etait trop tentante)

      Amitiés à mes amis Genevois et Bâlois et Bernois

      --
      --
      make bzImage
    • [^]Re: Une espace

      Posté par Nicolas Schoonbroodt (Jabber id, page perso, ) le 19/12/2005 à 09:07. (lien). Évalué à 5.

      on dit quatre-vingt en Belgique... (septante et nonante c'est vrai, mais pas octante)

      --
      [ Répondre ] Ce commentaire est-il impertinent ou utile ?
      • [^]Re: Une espace

        Posté par ♪♬♬♩ ♫♪♬♩ () le 19/12/2005 à 09:25. (lien). Évalué à 2.

        Moi je m'étais fié à ça : http://fr.wikipedia.org/wiki/Huitante :-)

        • [^]Re: Une espace

          Posté par py (page perso, ) le 19/12/2005 à 10:52. (lien). Évalué à 2.

          On ne dit pas octante en Belgique mais bien en Suisse (bien que le terme soit assez rare par rapport à huitante)

        • [^]Re: Une espace

          Posté par patrick_g (page perso, ) le 19/12/2005 à 12:03. (lien). Évalué à 2.

          >> « Je vous emmerde, et je rentre à ma maison »

          Avant y'avait l'attribution à cartman et c'était mieux =8^)

          • [^]Re: Une espace

            Posté par serge_kara () le 19/12/2005 à 12:59. (lien). Évalué à 4.

            RESPECTE SA PUTAIN D'AUTORITE!!!!!

            :-P

            • [^]Re: Une espace

              Posté par ♪♬♬♩ ♫♪♬♩ () le 19/12/2005 à 15:52. (lien). Évalué à 2.

              Ça me trou le cul ! :-)

          • [^]Re: Une espace

            Posté par ♪♬♬♩ ♫♪♬♩ () le 19/12/2005 à 15:53. (lien). Évalué à 1.

            Putain, je vais te latter les couilles !

          • [^]Re: Une espace

            Posté par ♪♬♬♩ ♫♪♬♩ () le 20/12/2005 à 12:41. (lien). Évalué à 4.

            Avant y'avait l'attribution à cartman et c'était mieux =8^)


            Pour la petite histoire, j'ai viré l'attribution parce qu'il s'avère qu'en réalité personne n'est d'accord concernant son auteur.

            Certains parlent de Albert Einstein, d'autres de Georges washington, d'autres encore de Eric Cartman... Bref, la galère, donc pour éviter les trolls, j'ai viré l'attribution, et je laisse au lecteur le soin de parfaire sa culture à l'aide de son moteur de recherche préféré. :-)

        • [^]Re: Une espace

          Posté par divad () le 19/12/2005 à 12:21. (lien). Évalué à 3.

          Et ciomment ils disent 42 dans le canton de Delemont ?

          --
          --
          make bzImage
    • [^]Re: Une espace

      Posté par petit_bibi () le 20/12/2005 à 00:03. (lien). Évalué à 1.

      Si je ne me trompe pas, pour les nombres, ce sont nos ancêtres Celtes.
      Ils comptaient en vicésimale (base 20) ..

      -deux vingts (40) deux vingts et 10 (50) trois vingts (60) etc ...

      Et il reste la transition: le soixante "et" dix qui est un mélange de Latin
      et de Celte.

      Une explication détaillée ici:
      http://linuxfr.org/~Dinmax/9482.html#397841

      Personnelement, je préfère une langue chargée d' histoire et de poésie à une langue extrèmement logique qui ne sert qu' à communiquer...

      Un anglais un peu plus logique ;-) :
      eleven -> oneteen (ou dix-un)
      twelve -> twoteen (ou dix-deux)

      • [^]Re: Une espace

        Posté par ♪♬♬♩ ♫♪♬♩ () le 20/12/2005 à 01:10. (lien). Évalué à 1.

        Personnelement, je préfère une langue chargée d' histoire et de poésie à une langue extrèmement logique qui ne sert qu' à communiquer...


        Justement, côté histoire, on utilisait déjà le septante et autre, qui ont progressivement été remplacés par soixante-dix et consors.


        http://mathcentral.uregina.ca/QQ/database/QQ.09.99/bessis1.h(...)
        http://www.langue-fr.net/index/S/septante.htm

        Moi je préfère une langue logique qu'un truc bourré d'exceptions illogiques, et qui n'a, en ce qui me concerne, rien de poétique :-)

        • [^]Re: Une espace

          Posté par Khanh-Dang (page perso, ) le 20/12/2005 à 10:27. (lien). Évalué à 2.

          Moi je préfère une langue logique qu'un truc bourré d'exceptions illogiques, et qui n'a, en ce qui me concerne, rien de poétique :-)

          C'est que la beauté des mots, leur richesse, leur sonorité, les idées, les sensations et l'histoire qu'ils véhiculent te laisse indifférent. Tu ne dois pas beaucoup aimer la littérature, ni la poésie.

          Imagine comme tout serait triste si la langue était régie par une grammaire stricte, tellement stricte qu'on pourrait la formaliser en syntaxe BNF, et écrire un parser, une espèce de moulinette impitoyable qui serait capable d'avaler des mots dont la combinaison prétend être du français. Un tel monstre de rigueur et de logique t'avertirait par un grisant « ceci n'est pas une phrase française » au moindre quatrain poésie.

          C'est comme si tu voulais qu'un dessin ou qu'un tableau soit quelque chose de logique et formel, tellement formel que chaque coup de pinceau serait une équation, une suite d'octets ; c'est comme si tu voulais qu'un chef d'oeuvre de Bach ou de Schubert ne soit que des partitions de musique, tellement logiques que le synthétiseur de ta carte son puisse en rendre toute la beauté.

          • [^]Re: Une espace

            Posté par serge_kara () le 20/12/2005 à 12:09. (lien). Évalué à 2.

            ouais, d'un autre cote, on pourrait enfin se comprendre tous sans problemes, et ca serait cool ca quand meme, non?

            • [^]Re: Une espace

              Posté par Khanh-Dang (page perso, ) le 20/12/2005 à 12:52. (lien). Évalué à 3.

              Je serais tenté de citer une boutade du type « Je n'aime pas les ordinateurs : ils font toujours ce que je dis, jamais ce que je pense » ;-)

              En tout cas, si tout le monde s'exprimait bien, il n'y aurait pas besoin d'une grammaire stricte pour que tout le monde se fasse comprendre. La seule différence dans le cas d'une hypothétique grammaire stricte, ça serait tout juste qu'il y aurait une formalisation des erreurs. Mais les erreurs d'expression et de langage seraient toujours là.

              Je n'arrive pas à saisir pourquoi cela peut gêner autant qu'il y ait des subtilités dans langue. La personne qui s'exprime bien sait où sont les subtilités et se débrouille pour se faire comprendre en levant l'ambiguïté. Celle qui s'exprime mal s'exprimera mal, quelle que soit la langue.

              Il suffit de lire quelques petits vers de poésie, et de se rendre compte tout le génie qu'il y a à exprimer autant de sensations, de sentiments en aussi peu de mots. Moi-même, et toi aussi probablement, aurions du mal à exprimer en un paragraphe ce que le poète dit en un alexandrin.

              • [^]Re: Une espace

                Posté par ♪♬♬♩ ♫♪♬♩ () le 20/12/2005 à 13:03. (lien). Évalué à 1.

                En même temps, tout le monde n'est pas poète, et la poésie, c'est aussi arranger les mots à sa sauce, voire inventer son propre vocabulaire. De plus, tout y est basé sur l'interprétation que tu peux en faire.

                Une langue n'a pas pour vocation première de satisfaire à des besoins artistiques, mais uniquement de communication, exit donc les interprétations douteuses et les tournures compliquées. Ce n'est pas pour rien que l'usage de l'anglais est quasiment une norme internationale et que le français périclite partout, sans oublier les innombrables fautes de français, et le langage SMS qui connaît un succès incroyable (sic).

                Septante, octance et nonante étaient d'usage en France jusqu'au XVème siècle, où ils ont commencé à être remplacés, sans raison apparente, par les termes qu'on leur connait aujourd'hui.

                • [^]Re: Une espace

                  Posté par serge_kara () le 20/12/2005 à 13:47. (lien). Évalué à 2.

                  mouais, le sms, ca existe dans toutes les langues, faut pas croire que c'est un phenomene franco francais : les telephones anglais n'ont qu'une dizaine de touche, comme tous les autres...

                • [^]Re: Une espace

                  Posté par Khanh-Dang (page perso, ) le 20/12/2005 à 16:15. (lien). Évalué à 3.

                  En même temps, tout le monde n'est pas poète, et la poésie, c'est aussi arranger les mots à sa sauce, voire inventer son propre vocabulaire. De plus, tout y est basé sur l'interprétation que tu peux en faire.

                  Oui, tout le monde n'est pas poète. La poésie est juste un exemple que j'ai trouvé pertinent pour montrer qu'une langue ne devrait pas n'être qu'un moyen de communication.

                  Une langue n'a pas pour vocation première de satisfaire à des besoins artistiques, mais uniquement de communication,

                  Une langue est un moyen de communication, mais elle ne doit pas se réduire à cela. On voit aujourd'hui quelles sont les conséquences de la « langue-communication ».

                  Le langage SMS en est un exemple particulièrement éloquent à mes yeux. La langue ne sert plus qu'à communiquer ; la communication est réduite à ce qu'elle a de technique : un échange d'informations, comme avec deux ordinateurs qui communiquent. Même sans les fautes de français, les SMS sont représentatifs de notre soif de communiquer.

                  La future génération sera celle qui connaîtra un monde où tout n'est plus que communication : SMS, mail, messagerie instantanée, téléphone. Mais la communication a ceci de nuisible qu'elle rapproche tellement les gens techniquement qu'en réalité elle les éloigne sur le plan humain. Les liens qui rattachent les gens ne sont pratiquement plus que des liens de communication.

                  Que serait une langue si elle pouvait n'être réduite qu'à un moyen de communication ? Ceci ?
                  if (langue pouvoir être(verbe2nom(communiquer).moyen)) then ?être(langue)
                  Accepterais-tu vraiment que tout le monde parle et écrive de la sorte, rien que pour mieux se faire comprendre ?

                  C'est sûr que pour se faire comprendre, il n'y a pas mieux, à supposer que tout le monde utilise ce langage. Parce que Microsoft sera toujours là pour n'être pas français-logique-compliant ;)

              • [^]Re: Une espace

                Posté par serge_kara () le 20/12/2005 à 13:46. (lien). Évalué à 2.

                La personne qui s'exprime bien sait où sont les subtilités et se débrouille pour se faire comprendre en levant l'ambiguïté.
                remplace comprendre par comprendre de travers et levant par couchant, et t'obtiens un maitre de la rethorique qui manipule le verbe a sa guise. :-)
                m'enfin, j'disais ca c'etait surtout pour pinailler, en fait.

                • [^]Re: Une espace

                  Posté par bluestorm () le 20/12/2005 à 19:07. (lien). Évalué à 1.

                  www.lojban.org

même problème avec vim

Posté par Gauthier Monserand (page perso, ) le 18/12/2005 à 22:46. (lien). Évalué à 1.

J'ai le même problème au bureau avec cet espace bizarre. Ce qui est bizarre c'est que je n'ai pas le problème sur une autre machine (autre clavier + gentoo au lieu de ubuntu).

  • [^]Re: même problème avec vim

    Posté par Mathieu Stumpf (Jabber id, page perso, ) le 18/12/2005 à 23:18. (lien). Évalué à 3.

    Sans doute une option de compil différente, tout simplement. Enfin j'ai jamais rencontré ce genre de problème avec vim.

    • [^]Re: même problème avec vim

      Posté par harbort1 () le 19/12/2005 à 07:43. (lien). Évalué à 1.

      Ce qui est vraiment étonnant c'est que vim note les espaces insécables par une barre bleue suivie d'un espace par défaut !

      De fait, il est aisé de les repérés ... à moins que la config de vim ait été modifiée !

fr

Posté par Sébastien TeRMiToR (page perso, ) le 18/12/2005 à 23:47. (lien). Évalué à 10.

c'est la map clavier qui gere cela , meme probleme sous bash
avec genre
zcat /var/log/messages.1.gz | grep toto
bash: grep: command not found

voila le meme probleme, encore l'espace insecable

donc, ce n'est pas la faute a emacs

  • [+] [^]Re: fr

    Posté par divad () le 19/12/2005 à 06:38. (lien). Évalué à -4.

    Pas du tout, effaces

    $zcat /var/log/messages.1.gz | grep toto

    Dec 14 04:19:46 localhost : - /usr/src/linux-2.6.14.2/drivers/mtd/maps/omap-toto-flash.c
    Dec 14 04:19:46 localhost : - /usr/src/linux-2.6.14.2/drivers/mtd/nand/toto.c
    Dec 15 04:19:14 localhost : - /usr/src/linux-2.6.14.2/drivers/mtd/maps/omap-toto-flash.c
    Dec 15 04:19:14 localhost : - /usr/src/linux-2.6.14.2/drivers/mtd/nand/toto.c

    --
    --
    make bzImage
    • [^]Re: fr

      Posté par Matthieu C () le 19/12/2005 à 07:04. (lien). Évalué à 4.

      Le mosieur te dis qu'il y a un espace insecable entre lepipe, ce qui doit pas etre le cas chez toi.

      j'ai le meme pb dans les VT Linux.

      • [^]Re: fr

        Posté par divad () le 19/12/2005 à 09:04. (lien). Évalué à 2.

        mauvaise pipe, changez pipe alors

        --
        --
        make bzImage
  • [^]Re: fr

    Posté par jcs (page perso, ) le 19/12/2005 à 07:38. (lien). Évalué à 4.

    C'est donc ça le problème ! J'ai déjà vu ça plusieurs fois sur Ubuntu. Merci pour l'info mais on fait quoi pour corriger le tir ?

    --
    Hurd will be out in a year (or two, or next month, who knows)
    -- Linus Benedict Torvalds, 1991
  • [^]Re: fr

    Posté par Rozé Etienne () le 19/12/2005 à 08:24. (lien). Évalué à 1.

    Dans mes bras !!!!

  • [^]Re: fr

    Posté par blobmaster () le 19/12/2005 à 08:54. (lien). Évalué à 1.

    De l'intérêt d'avoir un terminal coolorisé, l'espace insecable étant de la même couleur que le grep dans le message d'erreur, tu le vois.

    Maintenant je connais pour ls (et quelques autres commandes au cas par cas) mais...
    Quelqu'un aurait une idée pour trouver un tel terminal/shell ?

  • [^]Re: fr

    Posté par serge_kara () le 19/12/2005 à 09:05. (lien). Évalué à 2.

    merci merci merci merci merci!!!!

    je viens de comprendre pourquoi mon alias psaux ne marchait pas toujours :-P

Revenir en haut de page