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

Re: [jasspa] general questions/problems

Expand Messages
  • Jon Green
    I ve just got back from being away - you are asking some very good questions - to which I ll have to sit down and explore in a little more detail. As a matter
    Message 1 of 5 , Feb 20, 2002
    • 0 Attachment
      I've just got back from being away - you are
      asking some very good questions - to which I'll
      have to sit down and explore in a little more
      detail.

      As a matter of interest what platform are you
      running on - some of these questions are
      very platform specific. Your E-Mail address
      would imply UNIX, but the C-@ binding problem
      would imply Windows.

      Regards
      Jon.


      un_x wrote:
      >
      > FBSD4/latest ME.
      >
      > 1. how can you bind C-@?
      > i tried "\x00" "0x00" "C-@" "C- " "C-space"
      > etc, and none works ...

      I think on Windows this key is not coming
      through correctly. What Keyboard Locale/
      Country are you using ? What platform are
      you on ?


      >
      > 2. i think if OVERWRITE mode is ON, rectangle blocks
      > should "paste" OVER text ... as of now it appears
      > ME just "inserts" blocks regardless of OVERWRITE mode.

      Need to try this out.

      >
      > 3. is there a way to insert "literal" control chars?
      > ie, instead of ^B, i'd like a smilie face,
      > instead of ^F, i'd like to see a diamond.
      > normal PC charset.
      >

      Below 0x1f no unless the extended charset is removed.
      These are very platform specific - charset.emf controls
      what is enabled.

      > 4. is there a limit on keybindings? i have over a 100
      > and although i haven't tracked the problem down
      > specifically, certain bindings seems to disappear
      > when i add more, and they come back when i reduce the
      > amount. there is no consistency in regards to the order
      > so it will take me a while to figure out what is going on.

      Should be no limit.

      >
      > 5. is there a way to keep the *scratch* buffer from appearing?
      > if i want a scratch buffer, i can make one and it's kind of
      > annoying to always have "*scratch*" in my buffers when i
      > never wanted it or asked for one. it's just always
      > nagging to be deleted. i thought of using hooks, and
      > deleting "*scratch*" when a hook executes, but that seems
      > kinda dirty, since it will end up trying to delete "*scratch*"
      > even though it will be gone after the first delete.

      Nope. You can delete *scratch*, but if there is no
      buffer *scratch* will be created automatically because
      you always need 1 buffer. In you start up you could
      delete it provided you have another file loaded -
      you can never have "NO BUFFER"

      >
      > 6. is there a way to detect if a mark is set? i want to mark
      > an entire buffer if it is unset, and leave it set if it is.
      > ... for use in user-defined macros.

      Not sure - do not think so externally.

      >
      > 7. i think this is a known bug - the rectangle highlighting
      > still highlights in line mode, not block mode. it is functional
      > in rectangle modes however, just not the marking. how about
      > a mark highlights rectangularly if the 1st key is left/right
      > and not if the 1st key after a set-mark is up/down?
      > or a rectangle "mode" as in wrap/overwrite/etc...

      Need to try this.

      >
      > 8. "quote" should allow decimal/hex numbers, not just
      > literal keystrokes ... ? i'd like to be able to generate
      > any ascii char, not just typable ones.

      Fair point.

      >
      > 9. looking forward to a system() macro that throws ME into the
      > background allowing an interactive program to be used
      > (such as Ispell for example) on ME buffer data.

      I assume this is a background filter ?? There is
      already the ipipe mechanism which will run a command
      in the background. The filter does not do this in
      the background - probably because we do not use
      filters that often so no call reason to support it
      to date.

      >
      > great editor!

      This should keep me happy ?

      Thanks for the feedback - you seem to be taking it apart.

      Regards
      Jon.

      >
      >
      > __________________________________________________________________________
      >
      > This is an unmoderated list. JASSPA is not responsible for the content of
      > any material posted to this list.
      >
      > To unsubscribe, send a mail message to
      >
      > mailto:jasspa-unsubscribe@yahoogroups.com
      >
      > or visit http://groups.yahoo.com/group/jasspa and
      > modify your account settings manually.
      >
      >
      >
      > Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
    • Steven Phillips
      ... C-@ locks up my terminal, its one of those keys! Assuming you are using a termcap interface the problem is going to lie in the area of termcap and the
      Message 2 of 5 , Feb 20, 2002
      • 0 Attachment
        >
        > FBSD4/latest ME.
        >
        > 1. how can you bind C-@?
        > i tried "\x00" "0x00" "C-@" "C- " "C-space"
        > etc, and none works ...

        C-@ locks up my terminal, its one of those keys! Assuming you are using a
        termcap interface the problem is going to lie in the area of termcap and the
        character sequence it generates for the key. See fairly recent replies on
        the news group for other key binding problems or the faq of the subject
        (search for $recent-keys).

        > 2. i think if OVERWRITE mode is ON, rectangle blocks
        > should "paste" OVER text ... as of now it appears
        > ME just "inserts" blocks regardless of OVERWRITE mode.

        This is not a common way of doing things (Emacs, MicroEMACS, Word etc) but
        could be implemented in a macro using @y. But there are issues when the yank
        buffer contains a new-line char ('\n'), typically these are inserted, if so
        what happens to any remaining chars on the original line?? etc.

        For example, given the following yank buffer:

        ---------
        "Hello
        World and all that"
        ---------

        And the following buffer with the cursor at the '^'

        ---------
        This is the ^ point of
        insertion
        ---------

        The following are all legitimate results from an overwrite yank:
        ---------
        This is the Hello
        World and all thatt of
        insertion
        ---------
        This is the Hello
        World and all that
        insertion
        ---------
        This is the Hello
        World and all that
        ---------

        So how this would behave is fair less well defined hence the standard of
        inserting blocks (I think I would favour the middle result but much prefer
        the simple insertion as I know what I'm going to get).

        > 3. is there a way to insert "literal" control chars?
        > ie, instead of ^B, i'd like a smilie face,
        > instead of ^F, i'd like to see a diamond.
        > normal PC charset.

        Use:

        set-char-mask "dp" "\CB\CF"

        >
        > 4. is there a limit on keybindings? i have over a 100
        > and although i haven't tracked the problem down
        > specifically, certain bindings seems to disappear
        > when i add more, and they come back when i reduce the
        > amount. there is no consistency in regards to the order
        > so it will take me a while to figure out what is going on.

        Yes there is a limit, 384, there are a 181 burnt in default ones, that goes
        up to 209 when me.emf is run and when I use ME a further 34 are added (due
        to the mouse and MSShift support etc - I only add 4 of my own bindings)
        getting the total to 243, leaving ~140 left.

        So the question has to be why are you using so many? With only 50 odd keys
        on a keyboard this is like adding 2 new prefixes and binding every key on
        the keyboard to it. It suggest to me that you are completely reconfiguring
        the key-bindings in which case you should unbind the ones you don't want
        first (use '-1 global-unbind-key "y"' to unbind the lot or use '0
        global-unbind-key "esc"' etc to get rid of the main prefix keys and all
        their bindings).

        > 5. is there a way to keep the *scratch* buffer from appearing?
        > if i want a scratch buffer, i can make one and it's kind of
        > annoying to always have "*scratch*" in my buffers when i
        > never wanted it or asked for one. it's just always
        > nagging to be deleted. i thought of using hooks, and
        > deleting "*scratch*" when a hook executes, but that seems
        > kinda dirty, since it will end up trying to delete "*scratch*"
        > even though it will be gone after the first delete.

        Or define a start-up macro to delete the initial *scratch* buffer (see docs
        on start-up) - ME must have at least one buffer so when you delete the last
        buffer the *scratch* buffer will be created again, I don't see a way around
        this.

        >
        > 6. is there a way to detect if a mark is set? i want to mark
        > an entire buffer if it is unset, and leave it set if it is.
        > ... for use in user-defined macros.

        Try:

        define-macro Test-mark
        !force exchange-point-and-mark
        !if $status
        exchange-point-and-mark
        ml-write "Mark is set"
        !else
        ml-write "Mark is not set"
        !endif
        !emacro

        I can't stop the 'not set' case from ringing the bell - not such a problem
        if you use quiet mode. I will fix this.

        > 7. i think this is a known bug - the rectangle highlighting
        > still highlights in line mode, not block mode. it is functional
        > in rectangle modes however, just not the marking. how about
        > a mark highlights rectangularly if the 1st key is left/right
        > and not if the 1st key after a set-mark is up/down?
        > or a rectangle "mode" as in wrap/overwrite/etc...

        I don't think that rectangle regions are used enough to warrant this, I
        certainly don't want to have to move the cursor down to get the normal
        region hilight. If the cursor moving region hilight does not do the
        rectangle region then the only time it would be used is on the
        yank-rectangle command and thats a lot of code for one minor feature. ME is
        a careful balance between power and size, we have added the ability to do
        rectangle regions but I don't think the hilighting of the region can be
        justified, sorry.

        > 8. "quote" should allow decimal/hex numbers, not just
        > literal keystrokes ... ? i'd like to be able to generate
        > any ascii char, not just typable ones.

        A simple macro could be written to do this.

        > 9. looking forward to a system() macro that throws ME into the
        > background allowing an interactive program to be used
        > (such as Ispell for example) on ME buffer data.

        The filter-buffer command should be able to do this as it uses system so
        there is nothing to stop the command being run from opening a window etc.

        >
        > great editor!

        Glad you like it,

        Steve
      • un_x
        ... these ... imply UNIX, ... Windows. ... ME. ... C-@? ... C-space ... Keyboard ... ? i am just using std stuff - just the default english setup. ... blocks
        Message 3 of 5 , Feb 21, 2002
        • 0 Attachment
          > As a matter of interest what platform are you running on - some of
          these
          > questions are very platform specific. Your E-Mail address would
          imply UNIX,
          > but the C-@ binding problem would imply
          Windows.

          > FBSD4/latest
          ME.
          ^^^^^^^^^^^^^^^^^^

          > 1. how can you bind
          C-@?
          > i tried "\x00" "0x00" "C-@" "C- "
          "C-space"
          > etc, and none works
          ...

          > I think on Windows this key is not coming through correctly. What
          Keyboard
          > Locale/ Country are you using ? What platform are you on
          ?

          i am just using std stuff - just the default english
          setup.

          > 2. i think if OVERWRITE mode is ON, rectangle
          blocks
          > should "paste" OVER text ... as of now it
          appears
          > ME just "inserts" blocks regardless of OVERWRITE
          mode.

          > Need to try this
          out.

          > 3. is there a way to insert "literal" control
          chars?
          > ie, instead of ^B, i'd like a smilie
          face,
          > instead of ^F, i'd like to see a
          diamond.
          > normal PC
          charset.

          > Below 0x1f no unless the extended charset is removed. These are
          very
          > platform specific - charset.emf controls what is
          enabled.
          2 byte CTRL chars create problems with rectangular
          selections,
          as well as misaligned columns. maybe ^A can be an
          inverse
          or bold "A"? or hilight could be used to custom
          define
          the color of a CTRL char? 2 byte codes also force
          a
          user to scroll over the character to see if it is
          a
          real control char or merely the string
          "^A".

          > 4. is there a limit on keybindings? i have over a
          100
          > and although i haven't tracked the problem
          down
          > specifically, certain bindings seems to
          disappear
          > when i add more, and they come back when i reduce
          the
          > amount. there is no consistency in regards to the
          order
          > so it will take me a while to figure out what is going
          on.

          > Should be no
          limit.

          yes - the problem was that if "esc g" is bound to
          "abort",
          non-consecutive, seemingly random, bindings
          thereafter
          lose their definition. i removed the "esc g"
          binding,
          and all is
          well.

          > 5. is there a way to keep the *scratch* buffer from
          appearing?
          > if i want a scratch buffer, i can make one and it's kind
          of
          > annoying to always have "*scratch*" in my buffers when
          i
          > never wanted it or asked for one. it's just
          always
          > nagging to be deleted. i thought of using hooks,
          and
          > deleting "*scratch*" when a hook executes, but that
          seems
          > kinda dirty, since it will end up trying to delete
          "*scratch*"
          > even though it will be gone after the first
          delete.
          > Nope. You can delete *scratch*, but if there is no
          buffer
          > *scratch* will be created automatically
          because
          > you always need 1 buffer. In you start up you
          could
          > delete it provided you have another file loaded
          -
          > you can never have "NO
          BUFFER"

          from what i experience, my guess is "me.emf" is read before the
          scratch
          buffer is created. so deleting it from me.emf is useless. the
          problem with
          a hook is that it seems hooks require custom external macro files to
          be read.
          i would like to delete *scratch* without using more than "me" and
          "me.emf".
          is it
          possible?

          > 6. is there a way to detect if a mark is set? i want to
          mark
          > an entire buffer if it is unset, and leave it set if it
          is.
          > ... for use in user-defined
          macros.

          > Not sure - do not think so
          externally.

          this would be nice so that a region macro can select the whole buffer
          by
          default if no mark has been set. this is would be very
          handy.

          > 7. i think this is a known bug - the rectangle highlighting still
          highlights $
          > line mode, not block mode. it is functional in rectangle modes
          however, just
          > not the marking. how about a mark highlights rectangularly if the
          1st key is
          > left/right and not if the 1st key after a set-mark is up/down? or
          a
          > rectangle "mode" as in
          wrap/overwrite/etc...

          > Need to try
          this.


          > 8. "quote" should allow decimal/hex numbers, not
          just
          > literal keystrokes ... ? i'd like to be able to
          generate
          > any ascii char, not just typable
          ones.

          Fair
          point.

          > 9. looking forward to a system() macro that throws ME into
          the
          > background allowing an interactive program to be
          used
          > (such as Ispell for example) on ME buffer
          data.

          > I assume this is a background filter ?? There
          is
          > already the ipipe mechanism which will run a
          command
          > in the background. The filter does not do this
          in
          > the background - probably because we do not
          use
          > filters that often so no call reason to support
          it
          > to
          date.

          i am talking about the C "system()" call, where a
          parent
          can spawn a completely interactive process like
          "ispell"
          and resume operation when the child is exited. as far as i
          know,
          the current implementation will not all the spawning of
          interactive
          processes. "me" will merely dump stdout of a process into a
          buffer.

          > 10. i can't seem to left justify "email" that is indented with
          ">"
          > chars. is there anyway to reformat/justify a paragraph while
          maintaining
          > ">"
          "bullets"?

          > 11. HOME/END (bol/eol) doesn't work in termcap mode in an xterm.
          ?
          > HF <- that's what prints when i hit HOME/END in "me" in an
          xterm.

          > great editor!

          > This should keep me
          happy?

          i dunno :) i just know that JASSPA is the ONLY syntax
          highlighting,
          customizable termcap based editor out there of reasonable
          size.
          and i wouldn't know what to do without it
          :)
          i know i wouldn't be happy
          :)

          > Thanks for the feedback - you seem to be taking it
          apart.
        • un_x
          FBSD4/latest ME. ... ok, thanks. ... etc) but ... the yank ... inserted, if so ... Hello World and all that ... And the following buffer with the cursor at
          Message 4 of 5 , Feb 21, 2002
          • 0 Attachment
            FBSD4/latest ME.

            > 1. how can you bind C-@?
            > i tried "\x00" "0x00" "C-@" "C- " "C-space"
            > etc, and none works ...

            > (search for $recent-keys).

            ok, thanks.

            > 2. i think if OVERWRITE mode is ON, rectangle blocks
            > should "paste" OVER text ... as of now it appears
            > ME just "inserts" blocks regardless of OVERWRITE mode.

            > This is not a common way of doing things (Emacs, MicroEMACS, Word
            etc) but
            > could be implemented in a macro using @y. But there are issues when
            the yank
            > buffer contains a new-line char ('\n'), typically these are
            inserted, if so
            > what happens to any remaining chars on the original line?? etc.

            For example, given the following yank buffer:

            ---------
            "Hello
            World and all that"
            ---------

            And the following buffer with the cursor at the '^'

            ---------
            This is the ^ point of
            insertion
            ---------

            The following are all legitimate results from an overwrite yank:

            ---------
            This is the Hello
            World and all thatt of
            insertion
            ---------
            This is the Hello
            World and all that
            insertion
            ---------
            This is the Hello
            World and all that
            ---------

            > So how this would behave is fair less well defined hence the
            standard of
            > inserting blocks (I think I would favour the middle result but much
            prefer
            > the simple insertion as I know what I'm going to get).

            i think it should end up as (as in Qedit 3.0 and Joe 2.8):

            ---------
            This is the Hello point of
            insertion World and all that
            ---------

            pastes after EOL's should have spaces inserted.
            rectangular selections should have all newlines stripped.
            it should be treated like a rectangle block
            being dropped into a grid.

            > 3. is there a way to insert "literal" control chars?
            > ie, instead of ^B, i'd like a smilie face,
            > instead of ^F, i'd like to see a diamond.
            > normal PC charset.

            > Use:
            > set-char-mask "dp" "\CB\CF"

            ok, i'll try it thanks.

            > 4. is there a limit on keybindings? i have over a 100
            > and although i haven't tracked the problem down
            > specifically, certain bindings seems to disappear
            > when i add more, and they come back when i reduce the
            > amount. there is no consistency in regards to the order
            > so it will take me a while to figure out what is going on.

            > Yes there is a limit, 384, there are a 181 burnt in default ones,
            that goes
            > up to 209 when me.emf is run and when I use ME a further 34 are
            added (due
            > to the mouse and MSShift support etc - I only add 4 of my own
            bindings)
            > getting the total to 243, leaving ~140 left.

            > So the question has to be why are you using so many? With only 50
            odd keys
            > on a keyboard this is like adding 2 new prefixes and binding every
            key on
            > the keyboard to it. It suggest to me that you are completely
            reconfiguring
            > the key-bindings in which case you should unbind the ones you don't
            want
            > first (use '-1 global-unbind-key "y"' to unbind the lot or use '0
            > global-unbind-key "esc"' etc to get rid of the main prefix keys and
            all
            > their bindings).

            i have that many bindings because like like to complement my CTRL
            bindings with ESC in case i am on a tty that "eats" some CTRL chars.
            i do unbind all initial bindings as described. the problem was
            with binding "esc g" to "abort" - that causes problems and i
            have a me.emf file that will prove it.

            > 5. is there a way to keep the *scratch* buffer from appearing?
            > if i want a scratch buffer, i can make one and it's kind of
            > annoying to always have "*scratch*" in my buffers when i
            > never wanted it or asked for one. it's just always
            > nagging to be deleted. i thought of using hooks, and
            > deleting "*scratch*" when a hook executes, but that seems
            > kinda dirty, since it will end up trying to delete "*scratch*"
            > even though it will be gone after the first delete.

            > Or define a start-up macro to delete the initial *scratch* buffer
            (see docs
            > on start-up) - ME must have at least one buffer so when you delete
            the last
            > buffer the *scratch* buffer will be created again, I don't see a way
            around
            > this.

            if no files are given as arguments, *scratch* pops up as the default
            buffer.
            otherwise it does not pop up ... that would seem like a nice way,
            IMHO.

            > 6. is there a way to detect if a mark is set? i want to mark
            > an entire buffer if it is unset, and leave it set if it is.
            > ... for use in user-defined macros.

            > Try:

            > define-macro Test-mark
            > !force exchange-point-and-mark
            > !if $status
            > exchange-point-and-mark
            > ml-write "Mark is set"
            > !else
            > ml-write "Mark is not set"
            > !endif
            > !emacro

            > I can't stop the 'not set' case from ringing the bell - not such a
            problem
            > if you use quiet mode. I will fix this.

            thanks :) i will try it :)

            > 7. i think this is a known bug - the rectangle highlighting
            > still highlights in line mode, not block mode. it is functional
            > in rectangle modes however, just not the marking. how about
            > a mark highlights rectangularly if the 1st key is left/right
            > and not if the 1st key after a set-mark is up/down?
            > or a rectangle "mode" as in wrap/overwrite/etc...

            > I don't think that rectangle regions are used enough to warrant
            this, I
            > certainly don't want to have to move the cursor down to get the
            normal
            > region hilight.

            left-to-right selections are the same in rectangle and line modes ...

            > If the cursor moving region hilight does not do the
            > rectangle region then the only time it would be used is on the
            > yank-rectangle command and thats a lot of code for one minor
            feature. ME is
            > a careful balance between power and size, we have added the ability
            to do
            > rectangle regions but I don't think the hilighting of the region can
            be
            > justified, sorry.

            ok :)

            > 8. "quote" should allow decimal/hex numbers, not just
            > literal keystrokes ... ? i'd like to be able to generate
            > any ascii char, not just typable ones.

            > A simple macro could be written to do this.

            ok :)

            > 9. looking forward to a system() macro that throws ME into the
            > background allowing an interactive program to be used
            > (such as Ispell for example) on ME buffer data.

            > The filter-buffer command should be able to do this as it uses
            system so
            > there is nothing to stop the command being run from opening a window
            etc.

            well - filter-buffer jsut dumps stdout to a buffer, i am askingF
            how to spawn an interactive program from "me". one requiring
            user input, one that doesn't dump stdout to a buffer, but
            merely spawns a process. and when the process exits,
            "me" returns to the foreground.

            > great editor!

            > Glad you like it,

            i don't just like it - it's really all there is.
            what else is there? vim? kinda big, kinda crazy.
            emacs? way too big. there simply is *NO* otherF
            editor with termcap based syntax highlighting
            of reasonable size (small enough to fit on a floppy).
          Your message has been successfully submitted and would be delivered to recipients shortly.