home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 18 REXX / 18-REXX.zip / rxvim.zip / VIMCAP.CMD < prev    next >
OS/2 REXX Batch file  |  1994-08-18  |  3KB  |  111 lines

  1. /** Rexx Program to Query VIM Capabilities **/
  2. ARG TYPE
  3.  
  4. /* Unload functions upon error */
  5. SIGNAL ON ERROR NAME done
  6.  
  7. if LENGTH(STRIP(type)) = 0 then do
  8.    Say
  9.    Say 'Incorrect Syntax!  Correct syntax is:'
  10.    Say
  11.    Say 'VIMCAP < Capability to query | ALL'
  12.    Say
  13.    Say 'VIMCAP ALL will query all VIM functions'
  14.    Say
  15.    return
  16. end  /* Do */
  17.  
  18. TYPE = TRANSLATE(STRIP(TYPE))
  19. if TYPE = 'ALL' then do
  20.   call LoadVIMCap
  21.   doall = TRUE
  22. end  /* Do */
  23. else
  24.   doall = FALSE
  25.  
  26. call RxFuncAdd 'RxVIMLoadFuncs', 'REXXVIM', 'RxVIMLoadFuncs'
  27. call RxVIMLoadFuncs
  28. rc = RxVIMInitialize()
  29. Say
  30. Say '|-Capability----------------------Value------------------------------------|'
  31.  
  32. if doall = TRUE then do
  33.    do count=1 to vimcap.0
  34.       TYPE = TRANSLATE(STRIP(vimcap.count))
  35.       rc = RxVIMQueryCapability(TYPE,'Query')
  36.       Say ' 'LEFT(TYPE||':',30)'  ' SUBSTR(Query,1,30)
  37.    end /* do */
  38. end  /* Do */
  39. else do
  40.    rc = RxVIMQueryCapability(TYPE,'Query')
  41.    Say ' 'LEFT(TYPE||':',30)'  ' SUBSTR(Query,1,30)
  42.    Say
  43. end  /* Do */
  44.  
  45. rc = RxVIMTerminate()
  46. /*** Drop all of the external functions ***/
  47. call RxVIMDropFuncs
  48. Say '|--------------------------------------------------------------------------|'
  49. Say 'Demo Complete.  All functions released'
  50. 'pause'
  51. exit
  52.  
  53. /***** VIMErr *******/
  54. VIMERR:
  55.  
  56. rc = RxVIMStatusText('',rc,'Status')
  57. Say
  58. Say '|-Error Information -----------------|'
  59. Say '  Error Text:' status.1
  60. Say
  61. if LENGTH(STRIP(status.2)) > 0 then
  62.    Say '  Ext Status:' status.2
  63. rc = RxVIMTerminate()
  64.  
  65. DONE:
  66. /*** Drop all of the external functions ***/
  67. call RxVIMDropFuncs
  68. Say '|------------------------------------|'
  69. Say 'Demo Complete.  All functions released'
  70. exit
  71.  
  72. /****** Load all VIM Capabilities into stem variable *****/
  73. LOADVIMCAP:
  74.  
  75. vimcap.0    =  32
  76. vimcap.1    =  "VIMSEL_VERSION"
  77. vimcap.2    =  "VIMSEL_IMPLEMENTATION"
  78. vimcap.3    =  "VIMSEL_IMPLEMENTATION_VERSION"
  79. vimcap.4    =  "VIMSEL_PRODUCT"
  80. vimcap.5    =  "VIMSEL_MAX_SUBJECT_LEN"
  81. vimcap.6    =  "VIMSEL_MAX_TYPE_LEN"
  82. vimcap.7    =  "VIMSEL_MAX_TEXT_LEN"
  83. vimcap.8    =  "VIMSEL_RTF"
  84. vimcap.9    =  "VIMSEL_FAX"
  85. vimcap.10   =  "VIMSEL_STYLED"
  86. vimcap.11   =  "VIMSEL_PICT"
  87. vimcap.12   =  "VIMSEL_MOVIE"
  88. vimcap.13   =  "VIMSEL_IMAG"
  89. vimcap.14   =  "VIMSEL_UNWRAPPED_TEXT"
  90. vimcap.15   =  "VIMSEL_ALL_NOTE_PARTS_SUPP"
  91. vimcap.16   =  "VIMSEL_ATTACH_TYPE_SUPP"
  92. vimcap.17   =  "VIMSEL_ATTACH_DIRS"
  93. vimcap.18   =  "VIMSEL_ENCRYPT"
  94. vimcap.19   =  "VIMSEL_ENCRYPT_WITH_KEY"
  95. vimcap.20   =  "VIMSEL_SIGN"
  96. vimcap.21   =  "VIMSEL_NSTD_DERIVED_REPLIES"
  97. vimcap.22   =  "VIMSEL_NSTD_DERIVED_FORWRDS"
  98. vimcap.23   =  "VIMSEL_CP850"
  99. vimcap.24   =  "VIMSEL_CP1252"
  100. vimcap.25   =  "VIMSEL_CP437"
  101. vimcap.26   =  "VIMSEL_LMBCS"
  102. vimcap.27   =  "VIMSEL_ISTRING"
  103. vimcap.28   =  "VIMSEL_UNICODE"
  104. vimcap.29   =  "VIMSEL_APPLESINGLE"
  105. vimcap.30   =  "VIMSEL_PATH_REQUIRED"
  106. vimcap.31   =  "VIMSEL_NAME_REQUIRED"
  107. vimcap.32   =  "VIMSEL_PASS_REQUIRED"
  108.                                                      
  109.                                              
  110. return
  111.