Skip to content

Releases: mina86/urxvt-tabbedex

urxvt-tabbedex v22.32

13 Aug 23:23
ee810eb
Compare
Choose a tag to compare

The new release comes with a fix for geometry being incorrectly
applied when scroll bars are enabled. For example, previously
starting the terminal with ‘-geometry 80x24’ could result with
the tab being less than 80 columns wide. This should no longer
happen.

There may still exist corner cases around tab sizing. If you
encounter unexpected behaviour in how -geometry switch is
interpreted or in the size of the initial tab please report
them at #44

urxvt-tabbedex v21.47

26 Nov 18:39
Compare
Choose a tag to compare

The release introduces :nowrap variants to next_tab, prev_tab and move_tab_<direction> actions. With the modifier applied, they will not wrap between the first and last tabs. For example, if the first tab is selected, tabbedex:prev_tab:nowrap won’t do anything (without the modifier, it would switch to the last tab). The actions can be bind to keysym as usual; for example:

URxvt.keysym.Shift-Left:    tabbedex:prev_tab:nowrap
URxvt.keysym.Shift-Right:   tabbedex:next_tab:nowrap
URxvt.keysym.Control-Left:  tabbedex:move_tab_left:nowrap
URxvt.keysym.Control-Right: tabbedex:move_tab_right:nowrap

Apart from that addition, this release removes automatic pairing of parenthesis in tabber-timeout (use explicit two-character activity marks instead) and switches tabbedex-rs-prefix to % by default (so configuration using tabbed. prefixes may stop working). The later option is still respected but is deprecated and will be removed at some time in the future.

urxvt-tabbedex v20.09

26 Feb 10:10
Compare
Choose a tag to compare

Release v20.09 makes it possible to specify left and right activity marks in the ‘tabbar-timeouts’ option. For example:

URxvt.tabbedex.tabbar-timeouts: 0:|:3:():6:[]:9:{}:12:<>

Automatic handling of parenthesise pairs is now deprecated and will eventually be removed. (Thanks to white-dragon for the implementation).

This release also addresses a few issues:

  • ‘-e’ switch and ‘%E’ escape of the ‘tab-arguments’ option now work correctly. Previously using both of them together would make the terminal unusable and instead produce the following error:

    Not an ARRAY reference at /home/wd/.urxvt/ext/tabbedex line 806.
    

    (Thanks to white-dragon for a fix).

  • X resources are now correctly decoded allowing UTF-8 (or whatever is the local encoding) to be used. (Thanks to white-dragon for reporting).

  • Lastly, typo in ‘set_tab_name’ OSC command has been corrected. It used ‘tabbedx’ prefix instead of ‘tabbedex’ (note missing ‘e’). For backwards compatibility both spellings are accepted. (Thanks to step for spotting).

urxvt-tabbedex v19.21

23 May 16:56
Compare
Choose a tag to compare

urxvtd users should rejoice as urxvt-tabbedex v19.21 no longer hangs urxvtc the second time it’s run. (Thanks to lozdreamz for reporting the issue.)

It also comes with various other changes and improvements:

  • Deprecation of tabbedex-rs-prefix continues. Resources with new tabbedex prefix are always preferred and warning is issued if resource with legacy prefix is read. Things should now be clearer for new users who can use tabbedex as documented. Users who haven’t migrated away from tabbed prefix might see warnings but their setup should continue to work.
  • Two new actions, new_tab_before_this and new_tab_after_this, create a new tab and specify where to place it among existing tabs. The actions aren’t bound to any key combination by default.
  • It’s now possible to set font styles of the tab bar elements. By default current tab is now using bold font, bell is indicated by italic which is also used by the title. All of that can be configured via the tabbar-fg and related resources.
  • Timeouts specified in tabbar-timeouts and bell-timeout can now be fractional and are much more accurate than before. Under the hood this also removes superfluous CPU wake ups which should help with computer’s energy consumption.

urxvt-tabbedex v18.406

06 Oct 09:35
Compare
Choose a tag to compare

Release v18.183 introduced support for actions but also broke support
for user commands making configuration such as:

URxvt.keysym.Control-t: perl:tabbedex:new_tab

not work. Switching to an action fixes the issue:

URxvt.keysym.Control-t: tabbedex:new_tab

but to make old configuration work, this release addresses the
underlying cause of the breakage.

The bug is present in release v18.183 and v18.316. Default key
bindings are not affected.

urxvt-tabbedex v18.316

04 Aug 09:49
Compare
Choose a tag to compare

urxvt-tabbedex v18.316 comes with per-tab commands, current working directory inheritance and argument support in new_tab action.

Beware, this release removes the new-tab-command resource. This backwards-incompatible change was dictated by introduction of a more powerful tab-arguments resource.

Migration from new-tab-command to tab-arguments is rather straightforward.

  • new-tab-commands: clear becomes tab-arguments: (i.e. empty value),
  • new-tab-commands: inherit can simply be removed,
  • new-tab-commands: -e command … becomes tab-arguments: -e command … (i.e. value stays the same).

Value of the tab-arguments resource is properly split into words such that tab-arguments: -e /bin/sh -c "echo foo; exec /bin/bash" will work as expected.

It also supports some special sequence interpolation. For example, %E is replaced by command which would normally be started in the terminal, %n by number of tabs opened so far and %p produces process group ID running in foreground of current tab. With the help of pgid-cd.pl and command-runner.sample one can use

URxvt.tabbedex.tab-arguments: \
    -e /usr/lib/urxvt/tabbadex-pgid-cd %p \
    /bin/sh %~/.urxvt/command-runner %n %e

to run different commands in different tabs and start new tabs in a directory that command running in current tab is in.

Lastly, new_tab action takes an argument now such that keys can be bound to starting particular commands. For example:

  URxvt.keysym.F1: tabbedex:new_tab:-e info

will create a new tab with info program running upon pressing F1.