vtm

Text-based desktop environment

MIT License

Stars
1.5K

Bot releases are visible (Hide)

vtm - v0.9.99.04 Latest Release

Published by o-sdn-o 2 months ago

Changes (Windows only)

  • Fix Alt+Numpad processing (regression, duplication of entered characters).
vtm - v0.9.99.03

Published by o-sdn-o 2 months ago

Changes (Windows only)

  • Avoid implicitly using Session 0 to host vtm desktop server on Windows.
  • Add -0/--session0 cli options to explicitly use Session 0 to host the vtm desktop server running in background.

Notes

System-wide installation (vtm -i) allows vtm Desktop Server to run in user context in Session 0 on Windows. Placing Desktop Server in Session 0 (vtm -0) allows console applications to run independently of the user's GUI login session. But this prevents GUI applications from running from the vtm desktop environment. See "Session 0 Isolation" on the Web for details.

You can test this behavior by running the following command from the vtm desktop environment to launch an Explorer GUI window:

  • command line:
    start .
    
vtm - v0.9.99.02

Published by o-sdn-o 2 months ago

Changes:

  • Make mouse event synthesis consistent with Windows Console Subsystem public API docs:
    MOUSE_EVENT_RECORD::dwEventFlags
    The type of mouse event. If this value is zero, it indicates a mouse button being pressed or released.
    
    Missing move flag in dwEventFlags caused spurious clicks when navigating with the mouse in the Far Manager user interface.
  • Fix vttest of screen features. Save DEC Special Graphics Mode state along with cursor position.
vtm - v0.9.99.01

Published by o-sdn-o 3 months ago

Changes:

  • GUI mode:
    • Enable CJK characters wrapping for IME composition preview.
    • Fix GUI window position after reconnecting via RDP or change the active display layout.
  • Add "Session 0 Isolation" notes: Don't use system-wide installation on Windows in case you plan to run GUI apps from the vtm desktop environment. See "Session 0 Isolation" on the Web for details.
  • Make window menu scrollbar color (white underline) consistent.
vtm - v0.9.99

Published by o-sdn-o 3 months ago

Changes:

  • Improve TSF integration.
  • Fix restoring minimized windows.
  • Fix mouse wheel scrolling.
  • Fix inverted text underlining.
  • Assign Ctrl+Wheel to zoom cells and CapsLock+0 to reset zoom in GUI mode. https://github.com/directvt/vtm/issues/571#issuecomment-2260418861
  • Fix Win key sticking (after Win+Space).
  • Fix emoji input on Windows 8.
  • Built-in terminal:
    • Fix color text copying to clipboard.
    • Fix Enter key in WSL (0x0A->0x0D).
  • Change settings structure in settings.xml:
    • Alternate scroll mode: <altscroll enabled="yes" step=1/> -> <altscroll="on"/>.
    • Drop config parameter <config/appearance/defaults/wheel_dt=3 /> <!-- Mouse scrolling wheel step. --> in favor of system-wise mouse settings (aka lines to scroll setting).

Note: The current version of vtm is not compatible with previous versions.

vtm - v0.9.98

Published by o-sdn-o 3 months ago

Changes:

vtm - v0.9.97

Published by o-sdn-o 3 months ago

Changes:

  • Change the default window grid size limits to 3000x2000 cells. It is configurable via settings.xml.
  • Fix issue with redrawing of blinking text (SGR 5/6).
  • Built-in terminal:
    • Enable to send input on startup.
      command line:
      vtm -c "<config><term sendinput='echo 123\n'/></config>" -r vtty
      
vtm - v0.9.96

Published by o-sdn-o 3 months ago

Changes:

  • Fix an issue that causes all windows to receive unintended focus in subsequent vtm desktop sessions.
  • Built-in terminal:
    • Revise scrollback resize logic.
      It is now possible to specify the scrollback buffer grow step without specifying a grow limit. In this case, the buffer will grow from zero to the specified initial size step by step.
      settings.xml:
      <config>
        <term>
          <scrollback>
            <size=1000000  />   <!-- Initial scrollback buffer size. -->
            <growstep=10000/>   <!-- Scrollback buffer grow step. The buffer behaves like a ring in case of zero. -->
            <growlimit=0   />   <!-- Scrollback buffer grow limit. The buffer will behave like a ring when the limit is reached. If set to zero, then the limit is equal to the initial buffer size. -->
          </scrollback>
        </term>
      </config>
      
      command line:
      vtm -g -c "<config><term><scrollback size=1000000 growstep=100000/></term></config>" -r term
      
vtm - v0.9.95

Published by o-sdn-o 3 months ago

Changes:

  • Allow the configuration to be specified as a parameter to the -c/--config cli option:
    vtm -c "<config><term><scrollback size=1000000/></term></config>" -r term
    
vtm - v0.9.94

Published by o-sdn-o 3 months ago

Changes:

  • Fix soft line breaks when pasting multi-line text in pwsh. #605
    • Add a Shift modifier for soft line breaks only if mouse reporting is off:
      • Far Manager will receive clean Enters when pasting multi-line text, as it uses mouse reporting.
      • pwsh will receive Shift+Enters for soft-line breaks because mouse reporting is disabled there.
vtm - v0.9.93

Published by o-sdn-o 3 months ago

Changes:

  • Allow panoramic scrolling by left drag in fullscreen mode.
  • Restore cell pixel size when switching to/from fullscreen mode if the size has been changed.
    • Changing the cell size in normal mode resets the fullscreen cell size.
  • Fix default GUI-window position and size (don't rely on parent console window).
    <config>
      <gui> <!-- GUI related settings. (win32 platform only for now) -->
        <gridsize=""/> <!-- Window initial grid size "width,height" in text cells. If gridsize="" or gridsize=0,0, then the size of the GUI window is left to the OS window manager. -->
        <wincoor=""/>  <!-- Window initial coordinates "x,y" (top-left corner on the desktop in physical pixels). If wincoor="", then the position of the GUI window is left to the OS window manager. -->
      </gui>
    <config>
    
vtm - v0.9.92

Published by o-sdn-o 3 months ago

Changes:

  • Fix event handling on Unix (regression since v0.9.84). #600
  • Fix right-to-left text rendering (Arabic text sample on info page. The built-in terminal is not yet able to display grapheme clusters this way).

image

vtm - v0.9.91

Published by o-sdn-o 3 months ago

Changes:

  • Implement bare minimum IME support on Windows.
  • Fix random color issues (multi-threaded settings access).
vtm - v0.9.90

Published by o-sdn-o 3 months ago

Changes:

  • Fix mouse dragging near object edge.
vtm - v0.9.89

Published by o-sdn-o 3 months ago

Changes:

  • Respect ZWSP as a word boundary in the Thai writing system.
  • Add Arabic and Hebrew text samples to the info-page (RTL).
    • image

vtm - v0.9.88

Published by o-sdn-o 3 months ago

Changes:

  • Fix accidental mouse drag on click.
  • Add a features page to the info (bottom right corner of desktop).
vtm - v0.9.87

Published by o-sdn-o 3 months ago

Changes:

  • Fix extended keys reporting (right Enter didn't work in wsl).
  • Fix stylized underline glitch in dual monitor setups.
  • Fix case of loading fonts if no fonts are found.
  • Change settings.xml structure:
    • Change </config/gui/fontlist/> to </config/gui/fonts/font*>:
      <config>
          <gui>
              <fonts> <!-- Font fallback ordered list. The rest of the fonts available in the system will be loaded dynamically. -->
                  <font*/> <!-- Clear previously defined fonts. Start a new list. -->
                  <font="Courier New"/> <!-- The first font in the list: Primary font. Its metrics define the cell geometry. -->
                  <font="Cascadia Mono"/>
                  <font="NSimSun"/>
                  <font="Noto Sans Devanagari"/>
              </fonts>
          </gui>
      </config>
      
vtm - v0.9.86

Published by o-sdn-o 4 months ago

Changes:

  • Fix grapheme jumbo-clusters synchronization.
  • Optimize rendering performance.
  • Allow cancel selection using Esc in the built-in terminal.
  • Fix doubling I-bar cursor over wide characters.
vtm - v0.9.85

Published by o-sdn-o 4 months ago

Changes (Windows platform only):

  • Allow to Copy/Paste by Ctrl/Shift+Insert in cmd.exe.
  • GUI window:
    • Allow to toggle antialiasing mode by Ctrl+CapsLock.
    • Allow to change cell size by CapsLock+Up/DownArrow.
    • Make any resize actions lazy - ignore resize requests if busy.

GUI Mode

¹ — In fullscreen mode, the GUI window reserves a 1px high area at the top for forwarding mouse events.

vtm - v0.9.84

Published by o-sdn-o 4 months ago

v0.9.84

Changes:

  • Allow vtm to run in GUI mode (Windows platform only).
  • Fix CSI subarguments parsing (color underlining).
  • Allow demos in release builds (to test GUI mode):
    • vtm -g -r test
    • vtm -g -r calc
    • vtm -g -r text
    • vtm -g -r gems
    • vtm -g -r truecolor
  • Fix empty titles in built-in terminal.
  • Revise SetConsoleScreenBufferSize viewport limits (currently max_size=1280x288).
  • Add -t/--tui and -g/--gui cli options, https://github.com/directvt/vtm/issues/571#issuecomment-2191759778.
  • Fix Far Manager colors on Windows 8.
  • Fix Alt+Numpad processing

GUI Mode

¹ — In fullscreen mode, the GUI window reserves a 1px high area at the top for forwarding mouse events.

Not implemented

  • Tooltips.
  • Clipboard preview.
  • TSF integration.
  • Sounds