VTM Versions Save

Text-based desktop environment

v0.9.81

4 weeks ago
GitHub all current

Changes

  • Implement one-shot toggle to copy text while mouse tracking is active. #588

New configurable menu button:

Action Description
TerminalSelectionOneShot One-shot toggle to copy text while mouse tracking is active. Keep selection if Ctrl key is pressed.
The data= attribute can have the following values none, text, ansi, rich, html, protected.

Closes #588

Configuration example (~/.config/vtm/settings.xml)

<config>
  <term>
    <item label=" HTML " data=none type=Option action=TerminalSelectionOneShot>
      <label="\e[48:2:0:128:128;38:2:0:255:255m HTML \e[m" data=html/>
      <notes>
        " One-shot toggle to copy as HTML \n"
        " while mouse tracking is active. "
      </notes>
    </item>
    <item label=" Text " data=none type=Option action=TerminalSelectionOneShot>
      <label="\e[48:2:0:128:0;38:2:0:255:0m Text \e[m" data=text/>
      <notes>
        " One-shot toggle to copy as Text \n"
        " while mouse tracking is active. "
      </notes>
    </item>
    <item label="One-Shot" data=none type=Option action=TerminalSelectionOneShot>
      <label="\e[48:2:0:128:0;38:2:0:255:0m  Text  \e[m" data=text/>
      <label="\e[48:2:0:128:128;38:2:0:255:255m  HTML  \e[m" data=html/>
      <notes>
        " One-shot toggle to copy as Text/HTML \n"
        " while mouse tracking is active.      "
      </notes>
    </item>
  </term>
</config>

https://github.com/directvt/vtm/assets/11535558/c8049348-72fe-40f9-b4f7-85621248b463

v0.9.80

4 weeks ago
GitHub all current

Changes

v0.9.79

4 weeks ago
GitHub all current

Changes:

  • Revise title/footer rendering in GUI mode (fix shadows and overbright). #571
  • Add a side border option config/term/layout/border (=0 by default). #584: settings.xml:
    <config>
        <term>
            <layout>
                <oversize=0 opacity=0xC0/>  <!-- Scrollback horizontal (left and right) oversize. (for convenient horizontal scrolling). -->
                <border=1/>                 <!-- Viewport's left and right border. -->
            </layout>
        </term>
    </config>
    
  • config/term/fields section renamed to config/term/layout
  • config/term/fields/size option renamed to the config/term/layout/oversize section
  • config/term/fields/lucent option renamed to config/term/layout/oversize/opacity

image

v0.9.78

1 month ago
GitHub all current

Changes

  • Switch to ARGB pixel format (0xaarrggbb) from ABGR. All color settings in your current configurations are affected - the red channel has been swapped with the blue channel. This had to be done for compatibility with GUI mode.
  • Terminal: Fix viewport reset when changing selection mode. #584
  • Introducing a graphical window that can run on various Windows platforms starting with Windows 8.1 (including Window Server 2019 Core). #571
    • vtm automatically switches to the graphical mode if it is launched by the graphical shell (explorer.exe), or by the start vtm.exe command (e.g. on Windows Core).
    • Text cell rendering is not implemented. It is just a proof of concept.
    • The vtm server starts in the background, despite the fact that its interface is not rendered yet.
    • It is not yet clear whether we need to involve the GPU here for rendering. It's not a big deal, but at the moment it seems that software rendering is quite enough (60fps, etc). Over time it will become clear.
    • Colored emojis are funny on Windows8: image
    • On Windows Server Core (which is desktopless), the system window manager doesn't support "overbright" pixels (it requires alpha-premultiplied pixel values), so translucent windows are a little buggy, but that's not a big deal: image
    • Windows PE is also supported: image

v0.9.77

1 month ago
GitHub all current

Changes

  • Fix PowerShell/PSReadLine input echo on Windows. #581 image

v0.9.76

1 month ago
GitHub all current

Changes

  • Add color cursor support (OSC 12/112): Set/reset cursor color:
    printf "\e]12;rgb:00/ff/00\e\\"  # Set cursor color to green.
    printf "\e]112;\e\\"             # Reset cursor color to default.
    
    Run terminal with red cursor:
    printf "vtm.run(id=Term cfg='<config><term><cursor><color bgc=reddk/></cursor></term></config>')" | vtm
    
    Set red cursor in settings.xml:
    <config>
      <term>
        <cursor>
          <style="block"/> <!-- Cursor style: underline | block -->
          <blink=400ms/>       <!-- Cursor blink period. Set to zero for a steady cursor. -->
          <show=true/>
          <color bgc=reddk fgc=default /> <!-- Cursor cell color. By default, the cursor color (bgc) is set to either black or white depending on the lightness of the underlying text background. -->
        </cursor>
      </term>
    </config>
    
  • Make the terminal window opaque by default.
  • Make window shadow configurable:
    <config>
      <appearance>
        <defaults>
          <shadow> <!-- Window shadow configuration. -->
            <enabled = true />
            <blur = 3 />         <!-- Blur radius (in cells). Default is 3. -->
            <bias = 0.37 />      <!-- Shadow contour bias [0.0 - 1.0]. Default is 0.37 -->
            <opacity = 105.5 />  <!-- Opacity level (alpha) [0.0 - 255.0]. Default is 105.5 -->
            <offset = 2,1 />     <!-- 2D offset relative to the window (in cells). Default is 2,1. -->
          </shadow>
        </defaults>
      </appearance>
    </config>
    

v0.9.75b

1 month ago

v0.9.75b

GitHub all current

Changes

  • Make terminal scrollback transparent by default to provide clear boundaries for the console applications output:
    <config>
      <term>
        <color>
          <bground = transparent />  <!-- Independent background color of the scrollback canvas. Set to 0x00ffffff(default) to sync with SGR49 (default background). -->
        </color>
      </term>
    </config>
    

v0.9.75a

1 month ago
GitHub all current

Changes

  • Add window shadows: image
  • Make the terminal scrollback background color independent and configurable:
    <config>
      <term>
        <color>
          <bground = transparent />  <!-- Independent background color of the scrollback canvas. Set to 0x00ffffff(default) to sync with SGR49 (default background). -->
        </color>
      </term>
    </config>
    
    image
  • Remove taskbar menu item's attributes: bgc=..., fgc=..., slimmenu=... (use cfg=... attribute instead).
    echo "vtm.set(id=Azure label='Azure Terminal' type=dtvt cmd='vtm -r term' cfg='<config><term><color><default fgc=0xFFffff00 bgc=bluedk/></color></term></config>')" | vtm
    
  • Add support for styled and colored underlining (SGR-4:*, SGR-58/59).
  • Fix bug with CSI subparameters parsing. repro:
    printf "\e[48:2::255:255:255mWhite\e[m\n"
    printf "\e[48:2:255:255:255mWhite\e[m\n"
    

v0.9.74

2 months ago
GitHub all current

Changes

  • Fix semantic block selection

v0.9.73

2 months ago
GitHub all current

Changes

  • Fix standalone terminal focus, #575
  • Render colored whitespaces instead of shaded block glyphs "▓▒░".
  • Add support for selecting semantically (OSC 133) homogeneous blocks with the mouse (4x left-click).
  • Add semantic markers for cmd.exe by default (OSC 133).
  • Built-in terminal/teletype: Change the multiple left click behavior:
    • Double left click: Select a word.
    • Triple left click: Select paragraph.
    • Quadruple left click: Select the entire scrollback buffer or semantic block (when using OSC 133).
    • Quintuple left click: Select the entire scrollback buffer.