]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - misc/terminfo.src
ncurses 6.2 - patch 20210724
[ncurses.git] / misc / terminfo.src
index 7bcbed50cfc955845b06da9f9876265af9e2c84e..a4e875f04f4a36f977f974f5f043fd2d2d7649f6 100644 (file)
@@ -6,8 +6,8 @@
 # Report bugs and new terminal descriptions to
 #      bug-ncurses@gnu.org
 #
-#      $Revision: 1.872 $
-#      $Date: 2021/03/20 21:45:39 $
+#      $Revision: 1.889 $
+#      $Date: 2021/07/25 00:09:06 $
 #
 # The original header is preserved below for reference.  It is noted that there
 # is a "newer" version which differs in some cosmetic details (but actually
@@ -1646,37 +1646,43 @@ pccon+keys|OpenBSD PC keyboard keys,
 pccon+sgr+acs0|sgr and simple ASCII pseudographics for OpenBSD PC console,
        acsc=+>\,<-\^.v0#`+a:f\\h#i#j+k+l+m+n+o~p-q-r-s_t+u+v+w+x|y#
             z#{*|!}#~o,
+       bold=\E[1m, rev=\E[7m, rmso=\E[27m,
        sgr=\E[0%?%p1%p3%|%t;7%;%?%p6%t;1%;%?%p2%t;4%;m,
-       sgr0=\E[m,
+       sgr0=\E[m, smso=\E[7m,
 pccon+sgr+acs|sgr and default ASCII pseudographics for OpenBSD PC console,
-       acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxy
-            yzz{{||}}~~,
-       enacs=\E)0$<5>, rmacs=\E(B$<5>,
+       acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
+       bold=\E[1m, enacs=\E)0, rev=\E[7m, rmacs=\E(B, rmso=\E[27m,
        sgr=\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;m%?%p9%t\E(0%e
-           \E(B%;$<2>,
-       sgr0=\E[m\E(B$<5>, smacs=\E(0$<5>,
+           \E(B%;,
+       sgr0=\E[m\E(B, smacs=\E(0, smso=\E[7m,
 # underline renders as color
 pccon+colors|ANSI colors for OpenBSD PC console,
        bce,
        colors#8, ncv#2, pairs#64,
-       op=\E[47;30m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
+       op=\E[49;39m, setab=\E[4%p1%dm, setaf=\E[3%p1%dm,
+# OpenBSD uses wscons,
+# + which does not implement DECSCNM or anything comparable, so it does not
+#   support flash.
+# + it renders underline using color.
 pccon+base|base capabilities for OpenBSD PC console,
        am, km, mc5i, msgr, npc, nxon, xenl, xon,
        cols#80, it#8, lines#24,
-       bel=^G, bold=\E[1m, clear=\E[H\E[J, cr=\r, cub1=^H, cud1=\n,
-       cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu1=\E[A,
-       dch=\E[%p1%dP, dch1=\E[P, dl1=\E[M, ech=\E[%p1%dX, ed=\E[J,
-       el=\E[K, el1=\E[1K, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@,
-       il1=\E[L, ind=\ED, nel=\EE, rev=\E[7m, ri=\EM, rmam=\E[?7l,
-       rmso=\E[27m, rmul=\E[24m, rs2=\Ec$<50>, smam=\E[?7h,
-       smso=\E[7m, smul=\E[4m, tbc=\E[3g, u6=\E[%i%d;%dR,
-       u7=\E[6n,
+       bel=^G, clear=\E[H\E[J, cr=\r, csr=\E[%i%p1%d;%p2%dr,
+       cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=\n,
+       cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH,
+       cuu=\E[%p1%dA, cuu1=\E[A, dch=\E[%p1%dP, dch1=\E[P,
+       dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K,
+       el1=\E[1K, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@,
+       il=\E[%p1%dL, il1=\E[L, ind=\ED, nel=\EE, rc=\E8, ri=\EM,
+       rmam=\E[?7l, rmul=\E[24m, rs2=\Ec, sc=\E7, smam=\E[?7h,
+       smul=\E[4m, tbc=\E[3g, u6=\E[%i%d;%dR, u7=\E[6n,
 pccon0-m|OpenBSD PC console without colors & with simple ASCII pseudographics,
        use=pccon+sgr+acs0, use=pccon+base, use=pccon+keys,
 pccon0|OpenBSD PC console with simple ASCII pseudographics,
        use=pccon0-m, use=pccon+colors,
 pccon-m|OpenBSD PC console without colors,
        use=pccon+base, use=pccon+sgr+acs, use=pccon+keys,
+       use=ansi+enq, use=vt220+cvis,
 pccon|OpenBSD PC console,
        use=pccon-m, use=pccon+colors,
 
@@ -4421,9 +4427,57 @@ ms-vt-utf8|vt-utf8|UTF-8 flavor of vt100+,
        use=ms-vt100+,
 
 # Windows Terminal (Preview)
+# https://github.com/microsoft/terminal
+#
+# Windows 10 21H1
+# Version 1.9.1942.0
+#
+# This has longstanding issues with CR/LF mapping, e.g.,
+# - first reported by Juergen Pfeifer August 13, 2020, with workaround
+# - https://github.com/microsoft/terminal/issues/8303
+# - https://github.com/microsoft/terminal/issues/6733
+#
+# still seen in testing during May-July 2021.  As a workaround, this terminal
+# description sets cud1 to an escape sequence rather than just \r.
+#
+# Using TERM=xterm-256color shows a number of problems.
+# A few are seen only in the WSL2 environment.
+#
+# tack:
+# - flash does not work.
+# - video attribute blink does not work.
+# - video attribute invis does not work in WSL2.
+# - italics sitm/ritm do not work in WSL2.
+# - crossed-out smxx/rmxx do not work in WSL2.
+# - reloading colors via initp interchanges red/blue.
+# - does not implement OSC 104, which is used for resetting colors in xterm.
+# - does not support numeric keypad application mode.
+# - control-modifier (without alt/shift) does not work for special keys.
+# - meta-key sends escape character rather than acting as a meta key.
+#
+# vttest:
+# - identifies itself as a VT100.
+# - cursor movement (menu 1) does not work properly, e.g., for wrapping.
+# - does not support 8-bit controls.
+# - does not support VT420 rectangles.
+# - does not support VT420 left/right margins.
+# - ECMA-48 cursor-movement works.
+# - does not support X10 mouse, or mouse highlight tracking.
+# - SGR mouse mode 1006 works.
+# - any-event mouse mode shows no focus-in/focus-out events.
+# - alternate screen 47/48 modes do not work, nor do 1047/1048.
+# - alternate screen 1049 mode works.
+# - none of the window report/modify operations work.
+# - none of the DECRPM/DECRQM reporting operations work.
+#
+# xterm:
+# - 256colors2.pl -r, -i and -q options work.
+# - dynamic colors do not work.
+# - paste64.pl does not work, i.e., bracketed-paste.
+# - tcapquery.pl does not work.
+#
 # Windows 10 1903
 # Version 0.2.1831.0
-# https://github.com/microsoft/terminal
 #
 # The task manager shows this as "OpenConsole.exe", which differs
 # from the "Windows Command Processor" used for the command-prompt.
@@ -4462,9 +4516,10 @@ ms-vt-utf8|vt-utf8|UTF-8 flavor of vt100+,
 # - does not recognize either xterm+direct or xterm+indirect escapes.
 ms-terminal|Windows10 terminal,
        npc,
-       rmkx=\E[?1l, rmm@, smkx=\E[?1h, smm@, use=xterm+256setaf,
-       use=xterm+pcfkeys, use=ansi+rep, use=ecma+index,
-       use=ecma+italics, use=xterm-basic,
+       cud1=\E[B, rmkx=\E[?1l, rmm@, smkx=\E[?1h, smm@,
+       use=xterm+256setaf, use=xterm+pcfkeys, use=ansi+rep,
+       use=xterm+sm+1006, use=ecma+index, use=ecma+italics,
+       use=xterm-basic,
 
 #### Visual Studio
 # Visual Studio Code 1.45.0 uses xterm.js 12.8.1 (see https://xtermjs.org/).
@@ -6620,6 +6675,56 @@ hpterm-color|HP X11 terminal emulator with color,
        initp=\E&v%p2%da%p3%db%p4%dc%p5%dx%p6%dy%p7%dz%p1%dI,
        op=\E&v0S, scp=\E&v%p1%dS, use=hpterm,
 
+# http://bitsavers.trailing-edge.com/pdf/hp/9000_hpux/1986/97089-90081_198611_Facilities_for_Series_200_300_and_500.pdf
+# http://bitsavers.trailing-edge.com/pdf/hp/9000_hpux/1987/97089-90081_198709_Facilities_for_Series_200_300_and_500_HP-UX_Concepts_and_Tutorials.pdf
+#
+# This article does not cover the HP 46020A keyboard that is used by the Model
+# 217 and 237 computers.  For information on this keyboard read the article,
+# "The Series 300 ITE as System Console" found in the manual, HP-UX Concepts
+# and Tutorials, Vol.  7. 
+#
+# Possibly:
+# http://bitsavers.trailing-edge.com/pdf/hp/9000_hpux/1986/97089-90042_198608_HP-UX_Concepts_and_Tutorials.pdf
+#
+# HP300_Series_ITE.pdf
+#
+# This version, which came from Martin Trusler, was tested with lynx using
+# ncurses 5.4
+hpterm-color2|X-hpterm-color2|hp X11 terminal emulator with color,
+       OTbs, am, ccc, da, db, km, mir, xhp,
+       colors#8, cols#80, it#8, lh#2, lines#24, lm#0, lw#8, nlab#8,
+       pairs#8, xmc#0,
+       acsc=+>\,<-\^.v0\374``a\374f\372g\376h\374j+k+l+m+n+o-q-s-t+
+            u+v+w+x|y<z>{*|!}\273~\362,
+       bel=^G, bold=\E&dD, cbt=\Ei, clear=\EH\EJ, cr=\r, cub1=^H,
+       cud1=\EB, cuf1=\EC, cup=\E&a%p1%dy%p2%dC, cuu1=\EA,
+       dch1=\EP, dim=\E&dH, dl1=\EM, ed=\EJ$<1>, el=\EK,
+       home=\E&a0y0C, hpa=\E&a%p1%dC, ht=^I, hts=\E1, il1=\EL,
+       ind=\ES,
+       initp=\E&v0m%?%p2%{1000}%=%t1%e.%p2%d%;a%?%p3%{1000}%=%t1%e.
+             %p3%d%;b%?%p4%{1000}%=%t1%e.%p4%d%;c%?%p5%{1000}%=%t1
+             %e.%p5%d%;x%?%p6%{1000}%=%t1%e.%p6%d%;y%?%p7%{1000}%=
+             %t1%e.%p7%d%;z%p1%dI,
+       is1=\EH\EJ, kbs=^H, kctab=\E2, kcub1=\ED, kcud1=\EB,
+       kcuf1=\EC, kcuu1=\EA, kdch1=\EP, kdl1=\EM, ked=\EJ, kel=\EK,
+       kf1=\Ep, kf2=\Eq, kf3=\Er, kf4=\Es, kf5=\Et, kf6=\Eu, kf7=\Ev,
+       kf8=\Ew, khome=\Eh, khts=\E1, kich1=\EQ, kil1=\EL, kind=\ES,
+       kll=\EF, knp=\EU, kpp=\EV, kri=\ET, krmir=\ER, ktbc=\E3,
+       meml=\El, memu=\Em,
+       oc=\E&v0m1a1b1c0I\E&v1a1I\E&v1b2I\E&v1a1b3I\E&v1c4I\E&v1a1c5
+          I\E&v1b1c6I\E&v1x1y7I,
+       op=\E&v0S, pfkey=\E&f%p1%dk%p2%l%dL%p2%s,
+       pfloc=\E&f1a%p1%dk%p2%l%dL%p2%s,
+       pfx=\E&f2a%p1%dk%p2%l%dL%p2%s,
+       pln=\E&f%p1%dk%p2%l%dd0L%p2%s, rev=\E&dB, ri=\ET,
+       rmacs=^O, rmam=\E&s1C, rmcup=\E&s0A, rmir=\ER, rmkx=\E&s0A,
+       rmln=\E&j@, rmm=\E&k0I, rmso=\E&d@, rmul=\E&d@, rs1=\EE,
+       scp=\E&v%p1%dS,
+       sgr=\E&d%p1%p3%|%{2}%*%p2%p6%|%{4}%*%+%p5%{8}%*%+%{64}%+%c%?
+           %p9%t%'\016'%c%e%'\017'%c%;,
+       sgr0=\E&d@\017, smacs=^N, smam=\E&s0C, smcup=\E&s1A,
+       smir=\EQ, smkx=\E&s1A, smln=\E&jB, smm=\E&k1I, smso=\E&dB,
+       smul=\E&dD, tbc=\E3, vpa=\E&a%p1%dY,
 #### EMU
 # This is for the extensible terminal emulator on the X11R6 contrib tape.
 # It corresponds to emu's internal emulation:
@@ -9764,6 +9869,44 @@ hp98550|hp98550a|HP 9000 Series 300 color console,
        rmacs=^O, rmir=\ER, rmkx=\E&s0A, rmso=\E&d@, rmul=\E&d@,
        sgr0=\E&d@, smacs=^N, smir=\EQ, smkx=\E&s1A, smso=\E&dJ,
        smul=\E&dD, tbc=\E3, vpa=\E&a%p1%dY,
+
+# From: Martin Trusler
+hp98550-color|hp98550a-color|HP 9000 Series 300 color console,
+       OTbs, am, ccc, da, db, km, mir, xhp,
+       colors#8, cols#128, it#8, lh#2, lines#49, lm#0, lw#8, nlab#8,
+       pairs#8, xmc#0,
+       acsc=+>\,<-\^.v0\374``a\374f\372g\376h\374j+k+l+m+n+o-q-s-t+
+            u+v+w+x|y<z>{*|!}\273~\362,
+       bel=^G, bold=\E&dD, cbt=\Ei, clear=\EH\EJ, cr=\r, cub1=^H,
+       cud1=\EB, cuf1=\EC, cup=\E&a%p1%dy%p2%dC, cuu1=\EA,
+       dch1=\EP, dl1=\EM, ed=\EJ, el=\EK, home=\E&a0y0C,
+       hpa=\E&a%p1%dC, ht=^I, hts=\E1, il1=\EL, ind=\ES,
+       initp=\E&v0m%?%p2%{1000}%=%t1%e.%p2%d%;a%?%p3%{1000}%=%t1%e.
+             %p3%d%;b%?%p4%{1000}%=%t1%e.%p4%d%;c%?%p5%{1000}%=%t1
+             %e.%p5%d%;x%?%p6%{1000}%=%t1%e.%p6%d%;y%?%p7%{1000}%=
+             %t1%e.%p7%d%;z%p1%dI,
+       is1=\EH\EJ, kbs=^H, kctab=\E2, kcub1=\ED, kcud1=\EB,
+       kcuf1=\EC, kcuu1=\EA, kdch1=\EP, kdl1=\EM, ked=\EJ, kel=\EK,
+       kf1=\Ep, kf2=\Eq, kf3=\Er, kf4=\Es, kf5=\Et, kf6=\Eu, kf7=\Ev,
+       kf8=\Ew, khome=\Eh, khts=\E1, kich1=\EQ, kil1=\EL, kind=\ES,
+       kll=\EF, knp=\EU, kpp=\EV, kri=\ET, krmir=\ER, ktbc=\E3,
+       meml=\El, memu=\Em,
+       oc=\E&v0m1a1b1c0I\E&v1a1I\E&v1b2I\E&v1a1b3I\E&v1c4I\E&v1a1c5
+          I\E&v1b1c6I\E&v1x1y7I,
+       op=\E&v0S, pfkey=\E&f%p1%dk%p2%l%dL%p2%s,
+       pfloc=\E&f1a%p1%dk%p2%l%dL%p2%s,
+       pfx=\E&f2a%p1%dk%p2%l%dL%p2%s,
+       pln=\E&f%p1%dk%p2%l%dd0L%p2%s, rev=\E&dB, ri=\ET,
+       rmacs=^O, rmam=\E&s1C, rmcup=\E&s0A, rmir=\ER, rmkx=\E&s0A,
+       rmln=\E&j@, rmm=\E&k0I, rmso=\E&d@, rmul=\E&d@, rs1=\EE,
+       scp=\E&v%p1%dS,
+       sgr=\E&d%p1%p3%|%{2}%*%p2%p6%|%{4}%*%+%{64}%+%c%?%p9%t%'
+           \016'%c%e%'\017'%c%;,
+       sgr0=\E&d@\017, smacs=^N, smam=\E&s0C, smcup=\E&s1A,
+       smir=\EQ, smkx=\E&s1A, smln=\E&jB, smm=\E&k1I, smso=\E&dB,
+       smul=\E&dD, tbc=\E3, u6=\Ea%dc%dR\r, u7=\Ea,
+       u8=\E%[0123456789/], u9=\E*s1\^, vpa=\E&a%p1%dY,
+
 # From: Victor Duchovni <vic@fine.princeton.edu>
 # (hp700-wy: removed obsolete ":nl=^J:";
 # replaced /usr/share/tabset/hp700-wy with std because <it#8>,<hts=\E1> -- esr)
@@ -14755,10 +14898,10 @@ aaa+rv|ann arbor ambassador in reverse video,
 # Ambassador with the DEC option, for partial vt100 compatibility.
 aaa+dec|ann arbor ambassador in dec vt100 mode,
        acsc=aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}},
-       csr=\E[%i%p1%d;%p2%dr, enacs=\E(0, rmacs=^N,
+       csr=\E[%i%p1%d;%p2%dr, enacs=\E(B\E)0, rmacs=^O,
        sgr=\E[%?%p2%t4;%;%?%p4%t5;%;%?%p6%t1;%;%?%p1%p3%|%!%t7;%;%?
-           %p7%t8;%;m%?%p9%t\017%e\016%;,
-       smacs=^O,
+           %p7%t8;%;m%?%p9%t\016%e\017%;,
+       smacs=^N,
 aaa-18|ann arbor ambassador/18 lines,
        lines#18,
        is2=\E7\E[60;0;0;18p\E8,
@@ -21873,52 +22016,52 @@ bq300-8-pc-w-rv|Questar 303 with PC keyboard full 8 bits reverse 132 columns,
 #======================================================#
 
 # normal mode, 8 bits, 80 columns terminal.
-#      RES reset :                     ^[e
-#      RIS reset initial state:        ^[c
-#      BLE bell enable                 ^[h
-#      BLD bell disable                ^[g
-#      CAMS char. attr. mode set       ^[[D
-#      CAMR char. attr. mode reset     ^[[G
-#      CLR clear                       ^[`
-#      KBU keyboard unlock (set)       ^[[W
-#      KBL keyboard lock (reset)       ^[[X
-#      CM  character mode (async.)     ^[k
-#      NEP non echoplex mode (by host) ^[l
-#      EP  echoplex mode (by host)     ^[m
-#      IM  insert mode set             ^[[I
-#      IM  insert mode reset           ^[[J
-#      RMS roll mode set               ^[r
-#      RMR roll mode reset             ^[q
-#      SM78 set mode vip7800           ^[[1q
-#      SD  scroll up   (72 lines)      ^[[0s
-#      SD  scroll down (72 lines)      ^[[1s
-#      RBM block mode reset            ^[[E
-#      SLS status line set             ^[w
-#      SLR status line reset           ^[v
-#      SLL status line lock            ^[O
-#      LGS Line-graphic mode set       ^[G
-#      LGR Line-graphic mode reset     ^[F
-#      TBC tab clear (at cursor pos.)  ^[[g
-#      TBI tab initialize              ^[[N
-#      TBS tab set (at cursor pos.)    ^[p
-#      PDS  print data space           ^[[0p
-#      PHD  print host data            ^[[3p
-#      PDT  print data terminator      ^[[<p
-#      PRES print adapter reset        ^[[2p
-#      SSPR multi-part. reset          ^[[<>u
-#      SSP0 partition 0 set            ^[[00u
-#      SSP1 partition n format 1       ^[[PnPnSTRINGu
-#      SSP2 partition n format 2       ^[[PnPnSTRINGu
-#      SSP3 partition n format 3       ^[[PnPnu
+#      BLD  bell disable                       ^[g
+#      BLE  bell enable                        ^[h
+#      CAMR char. attr. mode reset             ^[[G
+#      CAMS char. attr. mode set               ^[[D
+#      CLR  clear                              ^[`
+#      CM   character mode (async.)            ^[k
+#      EP   echoplex mode (by host)            ^[m
+#      IM   insert mode set                    ^[[I
+#      IMR  insert mode reset                  ^[[J
+#      KBL  keyboard lock (reset)              ^[[X
+#      KBU  keyboard unlock (set)              ^[[W
+#      LGR  Line-graphic mode reset            ^[F
+#      LGS  Line-graphic mode set              ^[G
+#      NEP  non echoplex mode (by host)        ^[l
+#      PDS  print data space                   ^[[0p
+#      PDT  print data terminator              ^[[<p
+#      PHD  print host data                    ^[[3p
+#      PRES print adapter reset                ^[[2p
+#      RBM  block mode reset                   ^[[E
+#      RES  reset :                            ^[e
+#      RIS  reset initial state:               ^[c
+#      RMR  roll mode reset                    ^[q
+#      RMS  roll mode set                      ^[r
+#      SCD  scroll down (72 lines)             ^[[1s
+#      SCU  scroll up  (72 lines)              ^[[0s
+#      SLL  status line lock                   ^[O
+#      SLR  status line reset                  ^[v
+#      SLS  status line set                    ^[w
+#      SM78 set mode vip7800                   ^[[1q
+#      SSP0 partition 0 set                    ^[[00u
+#      SSP1 partition n format 1               ^[[PnPnSTRINGu
+#      SSP2 partition n format 2               ^[[PnPnSTRINGu
+#      SSP3 partition n format 3               ^[[PnPnu
+#      SSPR multi-part. reset                  ^[[<>u
+#      TBC  tab clear (at cursor pos.)         ^[[g
+#      TBI  tab initialize                     ^[[N
+#      TBS  tab set (at cursor pos.)           ^[p
+#
 #      ATR attribute (visual)
-#          blink :                     ^[sB
-#          dim :                       ^[sL
-#          hide (blank) :              ^[sH
-#          restore :                   ^[sR
-#          inverse video :             ^[sI
-#          prot. :                     ^[sP
-#          underline :                 ^[s_
-#          reset :                     ^{
+#          blink :                             ^[sB
+#          dim :                               ^[sL
+#          hide (blank) :                      ^[sH
+#          inverse video :                     ^[sI
+#          protected :                         ^[sP
+#          reset :                             ^[sR
+#          underline :                         ^[s_
 #
 # This covers the vip7800 and BQ3155-vip7800
 vip|Bull Questar 3155-7800,
@@ -26948,4 +27091,22 @@ v3220|LANPAR Vision II model 3220/3221/3222,
 # 2021-03-20
 #      + add hterm, hterm-256color (Mike Frysinger)
 #
+# 2021-06-26
+#      + use default colors in pccon "op" -TD
+#      + correct rmacs/smacs in aaa+dec, aaa+rv -TD
+#      + add hpterm-color2 and hp98550-color (Martin Trusler)
+#
+# 2021-07-17
+#      + correct typo in "vip" comments (report by Nick Black), reviewed this
+#        against Glink manual -TD
+#      + fill in some missing pieces for pccon, to make it comparable to the
+#        vt220 entry -TD
+#
+# 2021-07-24
+#      + trim "flash" from pccon+base -TD
+#      + revert change for aaa+rv -TD
+#      + add workaround for Windows Terminal's problems with CR/LF mapping to
+#        ms-terminal (patch by Juergen Pfeifer).
+#      + review/update current Windows Terminal vs ms-terminal -TD
+#
 ######## SHANTIH!  SHANTIH!  SHANTIH!