Web Images Videos Maps News Shopping Gmail more »
Recently Visited Groups | Help | Sign in
Google Groups Home
Delimited BandAid
There are currently too many topics in this group that display first. To make this topic appear first, remove this option from another topic.
There was an error processing your request. Please try again.
flag
  1 message - Collapse all  -  Translate all to Translated (View all originals)
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Followup To:
Add Cc | Add Followup-to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers you hear
 
Hayes Smith  
View profile  
 More options Jun 6, 6:39 pm
From: "Hayes Smith" <hayes_sm...@hotmail.com>
Date: Sat, 6 Jun 2009 17:39:36 -0500
Local: Sat, Jun 6 2009 6:39 pm
Subject: Delimited BandAid

The Delimited BandAid macro provides a method for using
color on delimited columns of text.

Here are some of its characteristics:
- any character can be used as a delimiter
- column colors are generated by the macro
- colors 'stick' to their locations, even when scrolling up,
  down, left, or right
- more than one file can have their delimited columns
  colored, but the colors are file-specific in that the
  colors and column widths for one file are not the same as
  those of any other file
- the colors of one file can be deleted without affecting
  the colors of another file
- any individual column color can be change to any other TSE
  color
- the Help Screen and the text below provide an exact
  procedure for activating the delimited column colors for a
  file

Delimited BandAid, Dba.mac, is an extraction from the full
Be BandAid macro. The full macro also supports tabbed
columns, indented columns, and margins, as well as drawing
individual color bands of any size anywhere in a text file
by using marked blocks. It allows saving and loading color
band definitions, copying the color bands of one file to
another, internal often-used color bands. The full macro
also has a rich set of toggle/reset/delete menu that allows
temporary on/off states for individual color bands or sets.

This macro, Dba.mac, does have two weaknesses, which are the
reasons I asked the question about bookmarks.

First, if you apply color bands to marked line block areas
of a text file, the color bands are defined for those AREAS,
not the text they cover. Thus, if you add or delete lines
above the color band areas, the text changes location, but
the color bands do not.

Second, with large numbers of color bands defined in a file,
there is a noticeable slowdown when executing single-column
movement, such as multiple cursorleft or cursorright or
scrollleft or scrollright movements. The hooked procedure
that produces the color for the screen has to do a lot with
EACH occurrence of an action that changes the statusline.
More than 100 color bands defined in one file will slow
things down. (Note: the speed problem is not noticed in
other files that have far fewer than 100 color bands. If one
file has 100 color bands, and another only has 20, the latter
will not be speed-affected by the one with 100. Each file is
handled independently from all other files by the macro.)

Neither of these affects what the macro actually does, but
both are problems I hope to solve using things I learn about
bookmarks.

The first problem is avoided if the whole file is used for
color banding rather than marked blocks, and the second
problem is avoided by having something less than 100 color
bands defined for a file.

Anyway, aside from these, Delimited BandAid works well and
is a happy conclusion for problem-solving on my part.

Enjoy. :)

Here is the Help Screen for Dba:
=======================================================================

Macro Name: Delimited BandAid
Macro Version: DbaRev1012

Assigned Keys:
<CtrlShift j><j> execmacro('Dba')     // execute macro
<CtrlShift j><x> mDbaBandAidExit()    // terminate macro
<CtrlShift j><h> quickhelp('DbaHelp;) // help screen
<CtrlShift j><a> mDbaMakeDelim()      // make the color bands
<CtrlShift j><c> mDbaChangeColor()    // change a color band's color
<CtrlShift j><d> mDbaBandsClear()     // delete color bands in current file
<CtrlShift j><k> mDbaKeyClick()       // toggle keyclick on/off

Procedure:
 1. Execute macro
 2. Go to delimited file
 3. Optionally mark delimited lines with line block
    (Preferred method: no block-see Notes below.)
 4. Place cursor line on a representative delimited line
    (This is where the macro determines the column widths.)
 5. Press <CtrlShift j><a> to start activation
 6. Answer prompt for single character delimiter
 7. Decide whether to use Normal or Random color set
 8. Color bands display

Notes:
 1. If no block is marked, the macro will process the entire
    file. ANY line that has the same number of delimited columns
    as the representative line will be color banded.
 2. If no block is marked or if the last line of a marked
    block is the last line in the file, the color banding
    will ALWAYS extend to the bottom of the file.
 3. If a block is marked that does not include the last line
    of the file, the color banding is tagged to its original
    location, not to the text there. This means that if lines
    are added or deleted above the color banding, the text
    under the color banding will change according to how
    many lines were added or deleted above the color
    banding. (This is a problem being worked on.)
 4. The colors used by the macro automatically are those
    listed in the fcolors DataDef in the source. 'Normal'
    coloring uses fcolors colors in order from 1 to however
    many. 'Random' uses a simple randomizing process to
    choose differing colors each time new color banding is
    activated.
 5. Individual color band colors can be changed using the
    assigned key above.
 6. The color bands in the current file may be deleted using
    the assigned key above without affecting color bands in
    other files.
 7. The Exit assigned key above will remove all color bands
    on all files and deactivate the macro.
 8. Color bands are file-specific. Color bands created for
    one file do not show on other files.
 9. Color bands are area-specific, not text-specific. Color
    bands 'stick' to the location where they are created even
    when scrolling up, down, left, or right. (See #3 above)
10. If you would like to change the colors used by the
    macro, go to the fcolors DataDef and enter the numeric
    decimal (base 10) values for the colors you prefer. The
    sequence for the DataDef table is left to right, top to
    bottom, and this is the sequence used by the 'Normal'
    color selection when creating new color bands. You can
    use any color from 0 to 255, and you can enter them more
    than once, such as having alternating two-color bands.
    Also, you can reduce or increase the number of colors in
    this DataDef. Recompile and use.
11. The cursor line color and marked block colors are
    protected and display properly over the color bands.
12. If the keyclick is bothersome, use the assigned key
    to toggle it off or on.
13. Color bands may overlap, but only the newest one will
    show at the location of the overlap.
14. If you created color bands for a delimited file and for
    whatever reason decide to do it over, be sure to delete
    the first set of color bands first, then create the new
    set of color bands for the delimited area.
15. The entire delimited column area does not have to be one
    solid color band. You can mark a section with a line
    block and activate its color bands, then mark another
    section with another block and activate it. Any number
    of color band sections can be in one file, or in any
    number of files.(Keep #3 and 9 limitations in mind.)
17. Color bands can be created over as many files as
    desired. Each File's color bands are entirely separate
    from any other file's color bands.
18. If you want to just 'design' delimited columns on a
    blank file, space a delimiter character across the
    screen, then activate the columns.
17. As long as the delimiter character remains in its
    proper column, it is not part of the color band. If the
    column width is changed in any line, the color bands
    will not adjust but will remain as they were originally
    activated.
18. Large numbers of color bands in a single file will
    cause a scrolling slowdown for that file, but not for
    other files with fewer color bands. The threshold seems
    to be something over 100 color bands. This slowdown only
    occurs when repetitive single-space movement of the
    cursor or screen. Page up, page down, and using multiple
    column scrolling commands (such as scrollleft(40),
    scrollright(40), rollleft(40), and rollright(40). These
    and others like them are not affected by large numbers
    of color bands.
19. Any character can be used as a delimiter, but be sure
    that it is a real delimiter. Odd color bands may result
    otherwise. :)
20. If you change a color band color, the new color will go
    all the way to the bottom of the color band, even if
    there are non-color band lines in the color band column.

Enjoy.

  Dba.s
19K Download

  Dba.mac
11K Download

    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
End of messages
« Back to Discussions « Newer topic     Older topic »

Google Groups - Google Home - Terms of Service - Privacy Policy
©2009 Google