Loading ...
Sorry, an error occurred while loading the content.
 

Re: [jasspa] Client-Server Problems with find-file, goto-line

Expand Messages
  • Steven Phillips
    The server interface has deliberately been restricted to avoid the user accidentally breaking things (consider doing a large macro based operation to modify
    Message 1 of 10 , Apr 9, 2008
      The server interface has deliberately been restricted to avoid the user
      accidentally breaking things (consider doing a large macro based
      operation to modify the current buffer when the server interface changes
      the current buffer half way through - the confusion this will create is
      going to hurt). But if you are convinced that this really is what you
      want (and you give up your right to sue when you corrupt your files :-))
      then I'll look into how to do this...

      Dr. Detlef Groth wrote:
      >
      > Hello all,
      >
      > I would like to run a pipeline like:
      >
      > $ /c/Programme/jasspa/me32.exe -m 'C:ME:find-file c:/path/to/
      > Makefile'
      > $ /c/Programme/jasspa/me32.exe -m 'C:ME:goto-line 18'
      >
      > unfortunatly does not work. Sometimes the *server* window popups
      > instead of the desired file argument and the file even if it popups
      > does not have a focus
      >
      > cmds like
      > $ /c/Programme/jasspa/me32.exe -m 'C:ME:delete-other-windows'
      >
      > are simply ignored.
      >
      > A macro like:
      >
      > define-macro find-file-line
      > find-file @1
      > !if ¬ &equal 0 @2
      > goto-line @2
      > !endif
      > !emacro
      >
      > works if tested inside emacs but the invoked file-window does not get
      > the focus if invoked from the commandline.
      >
      > Keeping short. I would like to invoke me with two arguments the file-
      > name and a line number. The server should show at the end just one
      > window with the right file at the right line.
      >
      > any suggestions ?
      >
      > regards,
      > Detlef
      >
      >
    • Detlef Groth
      Hi Steven, I think the only thing I really would like to do is opening a file or reusing an existing buffer and optional going to a certain line number if line
      Message 2 of 10 , Apr 9, 2008
        Hi Steven,

        I think the only thing I really would like to do is opening a file or reusing an existing buffer and optional going to a certain line number if line number is not null. As can be seen in the example macro. The reason for this, that is that I want to implement a tree control in Tcl/Tk which keeps track of my files and Tcl-classes and Tcl-Procs. Klicking on file should visit the appropiate buffer, clicking on a class-method or a file should open the file and jump to the appropiate line. Similar to a Tcl-proc. See the sample.gif

        Such feature which are common to eclipse and komodo for instance. Our me- toolbar is quite handy but with many projects and files it becomes to difficult to use.

        regards,
        Detlef

        -------- Original-Nachricht --------
        > Datum: Wed, 09 Apr 2008 13:44:40 +0100
        > Von: Steven Phillips <bill@...>
        > An: jasspa@yahoogroups.com
        > Betreff: Re: [jasspa] Client-Server Problems with find-file, goto-line

        > The server interface has deliberately been restricted to avoid the user
        > accidentally breaking things (consider doing a large macro based
        > operation to modify the current buffer when the server interface changes
        > the current buffer half way through - the confusion this will create is
        > going to hurt). But if you are convinced that this really is what you
        > want (and you give up your right to sue when you corrupt your files :-))
        > then I'll look into how to do this...
        >
        > Dr. Detlef Groth wrote:
        > >
        > > Hello all,
        > >
        > > I would like to run a pipeline like:
        > >
        > > $ /c/Programme/jasspa/me32.exe -m 'C:ME:find-file c:/path/to/
        > > Makefile'
        > > $ /c/Programme/jasspa/me32.exe -m 'C:ME:goto-line 18'
        > >
        > > unfortunatly does not work. Sometimes the *server* window popups
        > > instead of the desired file argument and the file even if it popups
        > > does not have a focus
        > >
        > > cmds like
        > > $ /c/Programme/jasspa/me32.exe -m 'C:ME:delete-other-windows'
        > >
        > > are simply ignored.
        > >
        > > A macro like:
        > >
        > > define-macro find-file-line
        > > find-file @1
        > > !if ¬ &equal 0 @2
        > > goto-line @2
        > > !endif
        > > !emacro
        > >
        > > works if tested inside emacs but the invoked file-window does not get
        > > the focus if invoked from the commandline.
        > >
        > > Keeping short. I would like to invoke me with two arguments the file-
        > > name and a line number. The server should show at the end just one
        > > window with the right file at the right line.
        > >
        > > any suggestions ?
        > >
        > > regards,
        > > Detlef
        > >
        > >
        >
        >
        > ------------------------------------
        >
        > __________________________________________________________________________
        >
        > This is an unmoderated list, but new members are moderated to ensure that
        > there are no spam users. JASSPA is not responsible for the content of
        > any material posted to this list.
        >
        > To un-subscribe, send a mail message to
        >
        > mailto:jasspa-unsubscribe@yahoogroups.com
        >
        > or visit http://groups.yahoo.com/group/jasspa and
        > modify your account settings manually.
        >
        >
        > Yahoo! Groups Links
        >
        >
        >
        --
        Dr.Detlef Groth
        Neue Scheune 5
        14548 Ferch
        Germany
      • Steven Phillips
        Detlef, I ve worked out the best way to do this, you need 2 macros - the first is the one directly called by the client/server interface, this stores the
        Message 3 of 10 , Apr 9, 2008
          Detlef,

          I've worked out the best way to do this, you need 2 macros - the first
          is the one directly called by the client/server interface, this stores
          the information. The second is the one that actually does the work, it
          is executed via the callback mechanism from the first macro so it will
          not run until ME is idle and is reasonably safe to do so. Below are the
          2 macros, however I did hit a problem with the meserver.emf macro code,
          below is a fix, 2 lines need to be removed.

          Steve

          0 define-macro server-find-file-callback
          find-file .server-find-file.f
          delete-other-windows
          !if &gre .server-find-file.l 0
          !force goto-line .server-find-file.l
          !endif
          screen-update
          !emacro

          define-macro server-find-file
          !force set-variable .f @1
          !if $status
          !force set-variable .l @2
          !if ¬ $status
          set-variable .l 0
          !endif
          1 create-callback server-find-file-callback
          !endif
          !emacro

          *** meserver.emf 4 Oct 2006 20:07:08 -0000 2.10
          --- meserver.emf 9 Apr 2008 20:53:03 -0000
          ***************
          *** 30,40 ****
          !force 0 find-buffer #l4
          !endif
          !force execute-line #l3
          - !if ¬ &seq $buffer-bname #l4
          set-variable #l4 $buffer-bname
          popup-window #l1
          set-variable &ind &spr ":%s-buffer" #l2 #l4
          - !endif
          !elif &seq @wc "M"
          set-variable #l2 &lget &rig @wl 1 1
          set-variable #l3 &rig @wl &add 3 &len #l2
          --- 30,38 ----


          Detlef Groth wrote:
          >
          > Hi Steven,
          >
          > I think the only thing I really would like to do is opening a file or
          > reusing an existing buffer and optional going to a certain line number
          > if line number is not null. As can be seen in the example macro. The
          > reason for this, that is that I want to implement a tree control in
          > Tcl/Tk which keeps track of my files and Tcl-classes and Tcl-Procs.
          > Klicking on file should visit the appropiate buffer, clicking on a
          > class-method or a file should open the file and jump to the appropiate
          > line. Similar to a Tcl-proc. See the sample.gif
          >
          > Such feature which are common to eclipse and komodo for instance. Our
          > me- toolbar is quite handy but with many projects and files it becomes
          > to difficult to use.
          >
          > regards,
          > Detlef
          >
          > -------- Original-Nachricht --------
          > > Datum: Wed, 09 Apr 2008 13:44:40 +0100
          > > Von: Steven Phillips <bill@... <mailto:bill%40jasspa.com>>
          > > An: jasspa@yahoogroups.com <mailto:jasspa%40yahoogroups.com>
          > > Betreff: Re: [jasspa] Client-Server Problems with find-file, goto-line
          >
          > > The server interface has deliberately been restricted to avoid the user
          > > accidentally breaking things (consider doing a large macro based
          > > operation to modify the current buffer when the server interface
          > changes
          > > the current buffer half way through - the confusion this will create is
          > > going to hurt). But if you are convinced that this really is what you
          > > want (and you give up your right to sue when you corrupt your files
          > :-))
          > > then I'll look into how to do this...
          > >
          > > Dr. Detlef Groth wrote:
          > > >
          > > > Hello all,
          > > >
          > > > I would like to run a pipeline like:
          > > >
          > > > $ /c/Programme/jasspa/me32.exe -m 'C:ME:find-file c:/path/to/
          > > > Makefile'
          > > > $ /c/Programme/jasspa/me32.exe -m 'C:ME:goto-line 18'
          > > >
          > > > unfortunatly does not work. Sometimes the *server* window popups
          > > > instead of the desired file argument and the file even if it popups
          > > > does not have a focus
          > > >
          > > > cmds like
          > > > $ /c/Programme/jasspa/me32.exe -m 'C:ME:delete-other-windows'
          > > >
          > > > are simply ignored.
          > > >
          > > > A macro like:
          > > >
          > > > define-macro find-file-line
          > > > find-file @1
          > > > !if ¬ &equal 0 @2
          > > > goto-line @2
          > > > !endif
          > > > !emacro
          > > >
          > > > works if tested inside emacs but the invoked file-window does not get
          > > > the focus if invoked from the commandline.
          > > >
          > > > Keeping short. I would like to invoke me with two arguments the file-
          > > > name and a line number. The server should show at the end just one
          > > > window with the right file at the right line.
          > > >
          > > > any suggestions ?
          > > >
          > > > regards,
          > > > Detlef
          > > >
          > > >
          > >
          > >
          > > ------------------------------------
          > >
          > > __________________________________________________________
          > >
          > > This is an unmoderated list, but new members are moderated to ensure
          > that
          > > there are no spam users. JASSPA is not responsible for the content of
          > > any material posted to this list.
          > >
          > > To un-subscribe, send a mail message to
          > >
          > > mailto:jasspa-unsubscribe@yahoogroups.com
          > <mailto:jasspa-unsubscribe%40yahoogroups.com>
          > >
          > > or visit http://groups.yahoo.com/group/jasspa
          > <http://groups.yahoo.com/group/jasspa> and
          > > modify your account settings manually.
          > >
          > >
          > > Yahoo! Groups Links
          > >
          > >
          > >
          > --
          > Dr.Detlef Groth
          > Neue Scheune 5
          > 14548 Ferch
          > Germany
          >
          >
          > ------------------------------------------------------------------------
          >
        • Detlef Groth
          Thanks Steven, works like a charm: $ /c/Programme/jasspa/me32.exe -m C:ME:server-find-file c:/home/dgroth/mycvs/mytcl/goblet1/conf/goblet.cfg 2 $
          Message 4 of 10 , Apr 9, 2008
            Thanks Steven,

            works like a charm:

            $ /c/Programme/jasspa/me32.exe -m 'C:ME:server-find-file c:/home/dgroth/mycvs/mytcl/goblet1/conf/goblet.cfg 2'

            $ /c/Programme/jasspa/me32.exe -m 'C:ME:server-find-file c:/home/dgroth/mycvs/mytcl/goblet1/Makefile 13'

            now does indeed what it should.

            Just for curious, is it possible to invoke the client that way that the server just returns the actual value of a variable ($buffer-bname or $buffer-fname) as an example.

            This would be the last step to do such external me-extensions enabling auto-update of the source-tree for instance. We can invoke a client at regular intervals. Of course a socket communication would make this less heavy. It might be as well possible to alter save-file that it writes important variables into a communication file.

            regards,
            Detlef
            regards,
            Detlef
            -------- Original-Nachricht --------
            > Datum: Wed, 09 Apr 2008 22:14:06 +0100
            > Von: Steven Phillips <bill@...>
            > An: jasspa@yahoogroups.com
            > Betreff: Re: [jasspa] Client-Server Problems with find-file, goto-line

            > Detlef,
            >
            > I've worked out the best way to do this, you need 2 macros - the first
            > is the one directly called by the client/server interface, this stores
            > the information. The second is the one that actually does the work, it
            > is executed via the callback mechanism from the first macro so it will
            > not run until ME is idle and is reasonably safe to do so. Below are the
            > 2 macros, however I did hit a problem with the meserver.emf macro code,
            > below is a fix, 2 lines need to be removed.
            >
            > Steve
            >
            > 0 define-macro server-find-file-callback
            > find-file .server-find-file.f
            > delete-other-windows
            > !if &gre .server-find-file.l 0
            > !force goto-line .server-find-file.l
            > !endif
            > screen-update
            > !emacro
            >
            > define-macro server-find-file
            > !force set-variable .f @1
            > !if $status
            > !force set-variable .l @2
            > !if ¬ $status
            > set-variable .l 0
            > !endif
            > 1 create-callback server-find-file-callback
            > !endif
            > !emacro
            >
            > *** meserver.emf 4 Oct 2006 20:07:08 -0000 2.10
            > --- meserver.emf 9 Apr 2008 20:53:03 -0000
            > ***************
            > *** 30,40 ****
            > !force 0 find-buffer #l4
            > !endif
            > !force execute-line #l3
            > - !if ¬ &seq $buffer-bname #l4
            > set-variable #l4 $buffer-bname
            > popup-window #l1
            > set-variable &ind &spr ":%s-buffer" #l2 #l4
            > - !endif
            > !elif &seq @wc "M"
            > set-variable #l2 &lget &rig @wl 1 1
            > set-variable #l3 &rig @wl &add 3 &len #l2
            > --- 30,38 ----
            >
            >
            > Detlef Groth wrote:
            > >
            > > Hi Steven,
            > >
            > > I think the only thing I really would like to do is opening a file or
            > > reusing an existing buffer and optional going to a certain line number
            > > if line number is not null. As can be seen in the example macro. The
            > > reason for this, that is that I want to implement a tree control in
            > > Tcl/Tk which keeps track of my files and Tcl-classes and Tcl-Procs.
            > > Klicking on file should visit the appropiate buffer, clicking on a
            > > class-method or a file should open the file and jump to the appropiate
            > > line. Similar to a Tcl-proc. See the sample.gif
            > >
            > > Such feature which are common to eclipse and komodo for instance. Our
            > > me- toolbar is quite handy but with many projects and files it becomes
            > > to difficult to use.
            > >
            > > regards,
            > > Detlef
            > >
            > > -------- Original-Nachricht --------
            > > > Datum: Wed, 09 Apr 2008 13:44:40 +0100
            > > > Von: Steven Phillips <bill@... <mailto:bill%40jasspa.com>>
            > > > An: jasspa@yahoogroups.com <mailto:jasspa%40yahoogroups.com>
            > > > Betreff: Re: [jasspa] Client-Server Problems with find-file, goto-line
            > >
            > > > The server interface has deliberately been restricted to avoid the
            > user
            > > > accidentally breaking things (consider doing a large macro based
            > > > operation to modify the current buffer when the server interface
            > > changes
            > > > the current buffer half way through - the confusion this will create
            > is
            > > > going to hurt). But if you are convinced that this really is what you
            > > > want (and you give up your right to sue when you corrupt your files
            > > :-))
            > > > then I'll look into how to do this...
            > > >
            > > > Dr. Detlef Groth wrote:
            > > > >
            > > > > Hello all,
            > > > >
            > > > > I would like to run a pipeline like:
            > > > >
            > > > > $ /c/Programme/jasspa/me32.exe -m 'C:ME:find-file c:/path/to/
            > > > > Makefile'
            > > > > $ /c/Programme/jasspa/me32.exe -m 'C:ME:goto-line 18'
            > > > >
            > > > > unfortunatly does not work. Sometimes the *server* window popups
            > > > > instead of the desired file argument and the file even if it popups
            > > > > does not have a focus
            > > > >
            > > > > cmds like
            > > > > $ /c/Programme/jasspa/me32.exe -m 'C:ME:delete-other-windows'
            > > > >
            > > > > are simply ignored.
            > > > >
            > > > > A macro like:
            > > > >
            > > > > define-macro find-file-line
            > > > > find-file @1
            > > > > !if ¬ &equal 0 @2
            > > > > goto-line @2
            > > > > !endif
            > > > > !emacro
            > > > >
            > > > > works if tested inside emacs but the invoked file-window does not
            > get
            > > > > the focus if invoked from the commandline.
            > > > >
            > > > > Keeping short. I would like to invoke me with two arguments the
            > file-
            > > > > name and a line number. The server should show at the end just one
            > > > > window with the right file at the right line.
            > > > >
            > > > > any suggestions ?
            > > > >
            > > > > regards,
            > > > > Detlef
            > > > >
            > > > >
            > > >
            > > >
            > > > ------------------------------------
            > > >
            > > > __________________________________________________________
            > > >
            > > > This is an unmoderated list, but new members are moderated to ensure
            > > that
            > > > there are no spam users. JASSPA is not responsible for the content of
            > > > any material posted to this list.
            > > >
            > > > To un-subscribe, send a mail message to
            > > >
            > > > mailto:jasspa-unsubscribe@yahoogroups.com
            > > <mailto:jasspa-unsubscribe%40yahoogroups.com>
            > > >
            > > > or visit http://groups.yahoo.com/group/jasspa
            > > <http://groups.yahoo.com/group/jasspa> and
            > > > modify your account settings manually.
            > > >
            > > >
            > > > Yahoo! Groups Links
            > > >
            > > >
            > > >
            > > --
            > > Dr.Detlef Groth
            > > Neue Scheune 5
            > > 14548 Ferch
            > > Germany
            > >
            > >
            > > ------------------------------------------------------------------------
            > >
            >
            >
            > ------------------------------------
            >
            > __________________________________________________________________________
            >
            > This is an unmoderated list, but new members are moderated to ensure that
            > there are no spam users. JASSPA is not responsible for the content of
            > any material posted to this list.
            >
            > To un-subscribe, send a mail message to
            >
            > mailto:jasspa-unsubscribe@yahoogroups.com
            >
            > or visit http://groups.yahoo.com/group/jasspa and
            > modify your account settings manually.
            >
            >
            > Yahoo! Groups Links
            >
            >
            >
            --
            Dr.Detlef Groth
            Neue Scheune 5
            14548 Ferch
            Germany
          • Bryan Schofield
            Detlef - Once apon a time I integrated a TCL interpreter with MicroEmacs that provided a new ME command tcl some tcl statement and one new TCL command emf
            Message 5 of 10 , Apr 10, 2008
              Detlef -

              Once apon a time I integrated a TCL interpreter with MicroEmacs that
              provided a new ME command "tcl some tcl statement" and one new TCL
              command "emf some-me-macro" With just a little bit of macros and TCL
              procs it was very easy to get tight integration. It looks like you
              going down an ME based TCL IDE road, so this may be an option to
              consider.

              cheers

              -- bryan
            • Detlef Groth
              Hi Brian, sounds very interesting, do you have still some code around for the Tcl integration ? regards, Detlef ... -- Dr.Detlef Groth Neue Scheune 5 14548
              Message 6 of 10 , Apr 10, 2008
                Hi Brian,

                sounds very interesting,
                do you have still some code around for the Tcl integration ?


                regards,
                Detlef
                -------- Original-Nachricht --------
                > Datum: Thu, 10 Apr 2008 08:40:37 -0400
                > Von: "Bryan Schofield" <schofield.bryan@...>
                > An: MicroEmacs <jasspa@yahoogroups.com>
                > Betreff: RE: [jasspa] Client-Server Problems with find-file, goto-line

                > Detlef -
                >
                > Once apon a time I integrated a TCL interpreter with MicroEmacs that
                > provided a new ME command "tcl some tcl statement" and one new TCL
                > command "emf some-me-macro" With just a little bit of macros and TCL
                > procs it was very easy to get tight integration. It looks like you
                > going down an ME based TCL IDE road, so this may be an option to
                > consider.
                >
                > cheers
                >
                > -- bryan
                >
                > ------------------------------------
                >
                > __________________________________________________________________________
                >
                > This is an unmoderated list, but new members are moderated to ensure that
                > there are no spam users. JASSPA is not responsible for the content of
                > any material posted to this list.
                >
                > To un-subscribe, send a mail message to
                >
                > mailto:jasspa-unsubscribe@yahoogroups.com
                >
                > or visit http://groups.yahoo.com/group/jasspa and
                > modify your account settings manually.
                >
                >
                > Yahoo! Groups Links
                >
                >
                >
                --
                Dr.Detlef Groth
                Neue Scheune 5
                14548 Ferch
                Germany
              • Bryan Schofield
                I m afraid I can t find it, but I remember the changes were pretty simple. A couple of C files. This would have been 3 years or so ago... I can t search the
                Message 7 of 10 , Apr 10, 2008
                  I'm afraid I can't find it, but I remember the changes were pretty
                  simple. A couple of C files. This would have been 3 years or so ago...
                  I can't search the Yahoo Groups archives (blocked by corporate web
                  proxy) but I know I posted something, whether it was code or not I
                  can't remember.

                  On Thu, Apr 10, 2008 at 9:59 AM, Detlef Groth <dgroth@...> wrote:
                  >
                  >
                  >
                  >
                  >
                  >
                  > Hi Brian,
                  >
                  > sounds very interesting,
                  > do you have still some code around for the Tcl integration ?
                  >
                  > regards,
                  > Detlef
                  > -------- Original-Nachricht --------
                  > > Datum: Thu, 10 Apr 2008 08:40:37 -0400
                  > > Von: "Bryan Schofield" <schofield.bryan@...>
                  > > An: MicroEmacs <jasspa@yahoogroups.com>
                  > > Betreff: RE: [jasspa] Client-Server Problems with find-file, goto-line
                  >
                  >
                  >
                  > > Detlef -
                  > >
                  > > Once apon a time I integrated a TCL interpreter with MicroEmacs that
                  > > provided a new ME command "tcl some tcl statement" and one new TCL
                  > > command "emf some-me-macro" With just a little bit of macros and TCL
                  > > procs it was very easy to get tight integration. It looks like you
                  > > going down an ME based TCL IDE road, so this may be an option to
                  > > consider.
                  > >
                  > > cheers
                  > >
                  > > -- bryan
                  > >
                  > > ------------------------------------
                  > >
                  > > __________________________________________________________
                  > >
                  > > This is an unmoderated list, but new members are moderated to ensure that
                  > > there are no spam users. JASSPA is not responsible for the content of
                  > > any material posted to this list.
                  > >
                  > > To un-subscribe, send a mail message to
                  > >
                  > > mailto:jasspa-unsubscribe@yahoogroups.com
                  > >
                  > > or visit http://groups.yahoo.com/group/jasspa and
                  > > modify your account settings manually.
                  > >
                  > >
                  > > Yahoo! Groups Links
                  > >
                  > >
                  > >
                  > --
                  > Dr.Detlef Groth
                  > Neue Scheune 5
                  > 14548 Ferch
                  > Germany
                  >
                  >
                • Dr. Detlef Groth
                  Hi all, I finally found the time to interact with the ME-Server from an Tcl-Tree showing my project files see: http://www.dgroth.de/downloads/me-no-ide.png
                  Message 8 of 10 , Jun 20, 2008
                    Hi all,

                    I finally found the time to interact with the ME-Server from an
                    Tcl-Tree showing my project files see:
                    http://www.dgroth.de/downloads/me-no-ide.png

                    What disturbs me is that me opens a popup-window for the running
                    me-server. If I have just one window I would rather see after clicking
                    in the tree just again one window. This is especially true for the
                    second feature goto-line where I would like to jum to a certain method
                    of a class definition for example.

                    I tried to comment out popup-window invokations inside meserver.emf
                    but this does not work. Any idea ?

                    regards,
                    Detlef


                    --- In jasspa@yahoogroups.com, Steven Phillips <bill@...> wrote:
                    >
                    > Detlef,
                    >
                    > I've worked out the best way to do this, you need 2 macros - the first
                    > is the one directly called by the client/server interface, this stores
                    > the information. The second is the one that actually does the work, it
                    > is executed via the callback mechanism from the first macro so it will
                    > not run until ME is idle and is reasonably safe to do so. Below are the
                    > 2 macros, however I did hit a problem with the meserver.emf macro code,
                    > below is a fix, 2 lines need to be removed.
                    >
                    > Steve
                    >
                    > 0 define-macro server-find-file-callback
                    > find-file .server-find-file.f
                    > delete-other-windows
                    > !if &gre .server-find-file.l 0
                    > !force goto-line .server-find-file.l
                    > !endif
                    > screen-update
                    > !emacro
                    >
                    > define-macro server-find-file
                    > !force set-variable .f @1
                    > !if $status
                    > !force set-variable .l @2
                    > !if ¬ $status
                    > set-variable .l 0
                    > !endif
                    > 1 create-callback server-find-file-callback
                    > !endif
                    > !emacro
                    >
                    > *** meserver.emf 4 Oct 2006 20:07:08 -0000 2.10
                    > --- meserver.emf 9 Apr 2008 20:53:03 -0000
                    > ***************
                    > *** 30,40 ****
                    > !force 0 find-buffer #l4
                    > !endif
                    > !force execute-line #l3
                    > - !if ¬ &seq $buffer-bname #l4
                    > set-variable #l4 $buffer-bname
                    > popup-window #l1
                    > set-variable &ind &spr ":%s-buffer" #l2 #l4
                    > - !endif
                    > !elif &seq @wc "M"
                    > set-variable #l2 &lget &rig @wl 1 1
                    > set-variable #l3 &rig @wl &add 3 &len #l2
                    > --- 30,38 ----
                    >
                    >
                    > Detlef Groth wrote:
                    > >
                    > > Hi Steven,
                    > >
                    > > I think the only thing I really would like to do is opening a file or
                    > > reusing an existing buffer and optional going to a certain line
                    number
                    > > if line number is not null. As can be seen in the example macro. The
                    > > reason for this, that is that I want to implement a tree control in
                    > > Tcl/Tk which keeps track of my files and Tcl-classes and Tcl-Procs.
                    > > Klicking on file should visit the appropiate buffer, clicking on a
                    > > class-method or a file should open the file and jump to the
                    appropiate
                    > > line. Similar to a Tcl-proc. See the sample.gif
                    > >
                    > > Such feature which are common to eclipse and komodo for instance. Our
                    > > me- toolbar is quite handy but with many projects and files it
                    becomes
                    > > to difficult to use.
                    > >
                    > > regards,
                    > > Detlef
                    > >
                    > > -------- Original-Nachricht --------
                    > > > Datum: Wed, 09 Apr 2008 13:44:40 +0100
                    > > > Von: Steven Phillips <bill@... <mailto:bill%40jasspa.com>>
                    > > > An: jasspa@yahoogroups.com <mailto:jasspa%40yahoogroups.com>
                    > > > Betreff: Re: [jasspa] Client-Server Problems with find-file,
                    goto-line
                    > >
                    > > > The server interface has deliberately been restricted to avoid
                    the user
                    > > > accidentally breaking things (consider doing a large macro based
                    > > > operation to modify the current buffer when the server interface
                    > > changes
                    > > > the current buffer half way through - the confusion this will
                    create is
                    > > > going to hurt). But if you are convinced that this really is
                    what you
                    > > > want (and you give up your right to sue when you corrupt your files
                    > > :-))
                    > > > then I'll look into how to do this...
                    > > >
                    > > > Dr. Detlef Groth wrote:
                    > > > >
                    > > > > Hello all,
                    > > > >
                    > > > > I would like to run a pipeline like:
                    > > > >
                    > > > > $ /c/Programme/jasspa/me32.exe -m 'C:ME:find-file c:/path/to/
                    > > > > Makefile'
                    > > > > $ /c/Programme/jasspa/me32.exe -m 'C:ME:goto-line 18'
                    > > > >
                    > > > > unfortunatly does not work. Sometimes the *server* window popups
                    > > > > instead of the desired file argument and the file even if it
                    popups
                    > > > > does not have a focus
                    > > > >
                    > > > > cmds like
                    > > > > $ /c/Programme/jasspa/me32.exe -m 'C:ME:delete-other-windows'
                    > > > >
                    > > > > are simply ignored.
                    > > > >
                    > > > > A macro like:
                    > > > >
                    > > > > define-macro find-file-line
                    > > > > find-file @1
                    > > > > !if ¬ &equal 0 @2
                    > > > > goto-line @2
                    > > > > !endif
                    > > > > !emacro
                    > > > >
                    > > > > works if tested inside emacs but the invoked file-window does
                    not get
                    > > > > the focus if invoked from the commandline.
                    > > > >
                    > > > > Keeping short. I would like to invoke me with two arguments
                    the file-
                    > > > > name and a line number. The server should show at the end just one
                    > > > > window with the right file at the right line.
                    > > > >
                    > > > > any suggestions ?
                    > > > >
                    > > > > regards,
                    > > > > Detlef
                    > > > >
                    > > > >
                    > > >
                    > > >
                    > > > ------------------------------------
                    > > >
                    > > > __________________________________________________________
                    > > >
                    > > > This is an unmoderated list, but new members are moderated to
                    ensure
                    > > that
                    > > > there are no spam users. JASSPA is not responsible for the
                    content of
                    > > > any material posted to this list.
                    > > >
                    > > > To un-subscribe, send a mail message to
                    > > >
                    > > > mailto:jasspa-unsubscribe@yahoogroups.com
                    > > <mailto:jasspa-unsubscribe%40yahoogroups.com>
                    > > >
                    > > > or visit http://groups.yahoo.com/group/jasspa
                    > > <http://groups.yahoo.com/group/jasspa> and
                    > > > modify your account settings manually.
                    > > >
                    > > >
                    > > > Yahoo! Groups Links
                    > > >
                    > > >
                    > > >
                    > > --
                    > > Dr.Detlef Groth
                    > > Neue Scheune 5
                    > > 14548 Ferch
                    > > Germany
                    > >
                    > >
                    > >
                    ------------------------------------------------------------------------
                    > >
                    >
                  • Dr. Detlef Groth
                    Hi. sorry, but I found the solution myself. Of course I have to use just the server-find-file command from below instead of find-file: The Tcl-command is: exec
                    Message 9 of 10 , Jun 20, 2008
                      Hi.

                      sorry, but I found the solution myself. Of course I have to use just
                      the server-find-file command from below instead of find-file:

                      The Tcl-command is:
                      exec $me -m "C:ME:server-find-file $path" &

                      regards,
                      Detlef
                      --- In jasspa@yahoogroups.com, "Dr. Detlef Groth" <dgroth@...> wrote:
                      >
                      > Hi all,
                      >
                      > I finally found the time to interact with the ME-Server from an
                      > Tcl-Tree showing my project files see:
                      > http://www.dgroth.de/downloads/me-no-ide.png
                      >
                      > What disturbs me is that me opens a popup-window for the running
                      > me-server. If I have just one window I would rather see after clicking
                      > in the tree just again one window. This is especially true for the
                      > second feature goto-line where I would like to jum to a certain method
                      > of a class definition for example.
                      >
                      > I tried to comment out popup-window invokations inside meserver.emf
                      > but this does not work. Any idea ?
                      >
                      > regards,
                      > Detlef
                      >
                      >
                      > --- In jasspa@yahoogroups.com, Steven Phillips <bill@> wrote:
                      > >
                      > > Detlef,
                      > >
                      > > I've worked out the best way to do this, you need 2 macros - the
                      first
                      > > is the one directly called by the client/server interface, this
                      stores
                      > > the information. The second is the one that actually does the
                      work, it
                      > > is executed via the callback mechanism from the first macro so it
                      will
                      > > not run until ME is idle and is reasonably safe to do so. Below
                      are the
                      > > 2 macros, however I did hit a problem with the meserver.emf macro
                      code,
                      > > below is a fix, 2 lines need to be removed.
                      > >
                      > > Steve
                      > >
                      > > 0 define-macro server-find-file-callback
                      > > find-file .server-find-file.f
                      > > delete-other-windows
                      > > !if &gre .server-find-file.l 0
                      > > !force goto-line .server-find-file.l
                      > > !endif
                      > > screen-update
                      > > !emacro
                      > >
                      > > define-macro server-find-file
                      > > !force set-variable .f @1
                      > > !if $status
                      > > !force set-variable .l @2
                      > > !if ¬ $status
                      > > set-variable .l 0
                      > > !endif
                      > > 1 create-callback server-find-file-callback
                      > > !endif
                      > > !emacro
                      > >
                      > > *** meserver.emf 4 Oct 2006 20:07:08 -0000 2.10
                      > > --- meserver.emf 9 Apr 2008 20:53:03 -0000
                      > > ***************
                      > > *** 30,40 ****
                      > > !force 0 find-buffer #l4
                      > > !endif
                      > > !force execute-line #l3
                      > > - !if ¬ &seq $buffer-bname #l4
                      > > set-variable #l4 $buffer-bname
                      > > popup-window #l1
                      > > set-variable &ind &spr ":%s-buffer" #l2 #l4
                      > > - !endif
                      > > !elif &seq @wc "M"
                      > > set-variable #l2 &lget &rig @wl 1 1
                      > > set-variable #l3 &rig @wl &add 3 &len #l2
                      > > --- 30,38 ----
                      > >
                      > >
                      > > Detlef Groth wrote:
                      > > >
                      > > > Hi Steven,
                      > > >
                      > > > I think the only thing I really would like to do is opening a
                      file or
                      > > > reusing an existing buffer and optional going to a certain line
                      > number
                      > > > if line number is not null. As can be seen in the example macro.
                      The
                      > > > reason for this, that is that I want to implement a tree control in
                      > > > Tcl/Tk which keeps track of my files and Tcl-classes and Tcl-Procs.
                      > > > Klicking on file should visit the appropiate buffer, clicking on a
                      > > > class-method or a file should open the file and jump to the
                      > appropiate
                      > > > line. Similar to a Tcl-proc. See the sample.gif
                      > > >
                      > > > Such feature which are common to eclipse and komodo for
                      instance. Our
                      > > > me- toolbar is quite handy but with many projects and files it
                      > becomes
                      > > > to difficult to use.
                      > > >
                      > > > regards,
                      > > > Detlef
                      > > >
                      > > > -------- Original-Nachricht --------
                      > > > > Datum: Wed, 09 Apr 2008 13:44:40 +0100
                      > > > > Von: Steven Phillips <bill@ <mailto:bill%40jasspa.com>>
                      > > > > An: jasspa@yahoogroups.com <mailto:jasspa%40yahoogroups.com>
                      > > > > Betreff: Re: [jasspa] Client-Server Problems with find-file,
                      > goto-line
                      > > >
                      > > > > The server interface has deliberately been restricted to avoid
                      > the user
                      > > > > accidentally breaking things (consider doing a large macro based
                      > > > > operation to modify the current buffer when the server interface
                      > > > changes
                      > > > > the current buffer half way through - the confusion this will
                      > create is
                      > > > > going to hurt). But if you are convinced that this really is
                      > what you
                      > > > > want (and you give up your right to sue when you corrupt your
                      files
                      > > > :-))
                      > > > > then I'll look into how to do this...
                      > > > >
                      > > > > Dr. Detlef Groth wrote:
                      > > > > >
                      > > > > > Hello all,
                      > > > > >
                      > > > > > I would like to run a pipeline like:
                      > > > > >
                      > > > > > $ /c/Programme/jasspa/me32.exe -m 'C:ME:find-file c:/path/to/
                      > > > > > Makefile'
                      > > > > > $ /c/Programme/jasspa/me32.exe -m 'C:ME:goto-line 18'
                      > > > > >
                      > > > > > unfortunatly does not work. Sometimes the *server* window popups
                      > > > > > instead of the desired file argument and the file even if it
                      > popups
                      > > > > > does not have a focus
                      > > > > >
                      > > > > > cmds like
                      > > > > > $ /c/Programme/jasspa/me32.exe -m 'C:ME:delete-other-windows'
                      > > > > >
                      > > > > > are simply ignored.
                      > > > > >
                      > > > > > A macro like:
                      > > > > >
                      > > > > > define-macro find-file-line
                      > > > > > find-file @1
                      > > > > > !if ¬ &equal 0 @2
                      > > > > > goto-line @2
                      > > > > > !endif
                      > > > > > !emacro
                      > > > > >
                      > > > > > works if tested inside emacs but the invoked file-window does
                      > not get
                      > > > > > the focus if invoked from the commandline.
                      > > > > >
                      > > > > > Keeping short. I would like to invoke me with two arguments
                      > the file-
                      > > > > > name and a line number. The server should show at the end
                      just one
                      > > > > > window with the right file at the right line.
                      > > > > >
                      > > > > > any suggestions ?
                      > > > > >
                      > > > > > regards,
                      > > > > > Detlef
                      > > > > >
                      > > > > >
                      > > > >
                      > > > >
                      > > > > ------------------------------------
                      > > > >
                      > > > > __________________________________________________________
                      > > > >
                      > > > > This is an unmoderated list, but new members are moderated to
                      > ensure
                      > > > that
                      > > > > there are no spam users. JASSPA is not responsible for the
                      > content of
                      > > > > any material posted to this list.
                      > > > >
                      > > > > To un-subscribe, send a mail message to
                      > > > >
                      > > > > mailto:jasspa-unsubscribe@yahoogroups.com
                      > > > <mailto:jasspa-unsubscribe%40yahoogroups.com>
                      > > > >
                      > > > > or visit http://groups.yahoo.com/group/jasspa
                      > > > <http://groups.yahoo.com/group/jasspa> and
                      > > > > modify your account settings manually.
                      > > > >
                      > > > >
                      > > > > Yahoo! Groups Links
                      > > > >
                      > > > >
                      > > > >
                      > > > --
                      > > > Dr.Detlef Groth
                      > > > Neue Scheune 5
                      > > > 14548 Ferch
                      > > > Germany
                      > > >
                      > > >
                      > > >
                      > ------------------------------------------------------------------------
                      > > >
                      > >
                      >
                    Your message has been successfully submitted and would be delivered to recipients shortly.