Groups keyboard shortcuts have been updated
Dismiss
See shortcuts

Vertical Cursor Line

23 views
Skip to first unread message

Rick Hodgin

unread,
Feb 3, 2025, 8:53:36 PMFeb 3
to sem...@googlegroups.com
Does anyone have a vertical cursor line macro?

-- 
Rick C. Hodgin

knud van eeden

unread,
Feb 3, 2025, 9:17:19 PMFeb 3
to sem...@googlegroups.com
3 hits here.

If any improvements made let use know.

with friendly greetings
Knud van Eeden

https://www.semware.com/html/tseprofiles.php


crosshr.zip19952004-05-21(May 20, 2004) Macro for TSE Pro v4 or greater. Crosshair.s provides a movable crosshair on the screen which helps line up text vertically and horizontally within and across windows.
Author: mdurland



smthscrl.zip49012004-07-24(Jul 24, 2004) - SmthScrl.s - TSE Pro v2.6+. SMTHSCRL -- Put this in your AutoLoad list to make the vertical scrollbar in TSE editing windows scroll proportional to how many pixels you move the mouse, rather than how many characters you move the mouse.
  • For TSE 2.6 and higher, both console and GUI versions.
See the enclosed SMTHSCRL.TXT for details.
Author: Chris Antos

vertcurs.zip10791995-08-21A small macro to create temporarily a vertical cursor for (for example) the lining-up of do,for,etc.-loops.


--

---
You received this message because you are subscribed to the Google Groups "SemWare TSE Pro text editor" group.
To unsubscribe from this group and stop receiving emails from it, send an email to semware+u...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/semware/CAOtq5xrAH1q%3D4ygqPX5pfijno6E3rQfJmVK%3D6UQ3Kc81e7TTVg%40mail.gmail.com.

Rick Hodgin

unread,
Feb 3, 2025, 10:23:35 PMFeb 3
to sem...@googlegroups.com
Sammy,

We need to add a few functions to make this work more smoothly.  And in writing this email, I seem to recall some low-level functions I used back in the day which did this more efficiently.  I can't remember.  I might've been in the console version, and I directly painted attributes using the console functions.

1)  GetAttrXYH() which populates a string with the character attributes beginning at X,Y, for LEN horizontally.
2)  GetAttrXYV() which populates a string with the character attributes beginning at X,Y, for LEN vertically.
3)  PutAttrXYV()  which puts attributes on the screen vertically from X,Y for LEN.

Those three  would greatly speed up the rendering, as it would remove the need for a window refresh and the update could be left on with near instantaneous results.  Another idea would be to add a second attribute layer that could be specified.  It would allow the normal rendering functions to update the normal attributes, but for some new special functions to specify the new layer of attributes for a temporary overlay.  PutAttrXY() and PutAttrXYV() could accept negative colors to render into that layer, and some new values like 256 to render from the normal attribute layer, and -256 to render from the second attribute layer.  In any event...

-----
// Set some color
integer cross_color = Color(bright white on cyan)

// cross_x, cross_y are where the cursor is
integer i
integer cross_x     = CurrCol()
integer cross_y     = CurrLine()

// Paint horizontal
PutAttrXY(1, cross_y, cross_color, Query(ScreenCols))

// Paint vertical
// Needs:  PutAttrXYV(cross_x, 1, cross_color, Query(ScreenRows))
for i = 1 to Query(ScreenCols)
    PutAttrXY(cross_x, i, cross_color, 1)
endfor

Wait for a key, then:
UpdateDisplay(_ALL_WINDOWS_REFRESH_)

--
Rick C. Hodgin


zhong zhao

unread,
Feb 4, 2025, 8:16:31 PMFeb 4
to SemWare TSE Pro text editor
Possible references
HiliteCols.s

S.E. Mitchell

unread,
Feb 8, 2025, 8:08:00 AMFeb 8
to sem...@googlegroups.com
Cool macro!  Seems to work well.
Thanks for sharing!


Reply all
Reply to author
Forward
0 new messages