ExtpfeilConfiguration.js 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. "use strict";
  2. var __importDefault = (this && this.__importDefault) || function (mod) {
  3. return (mod && mod.__esModule) ? mod : { "default": mod };
  4. };
  5. Object.defineProperty(exports, "__esModule", { value: true });
  6. exports.ExtpfeilConfiguration = exports.ExtpfeilMethods = void 0;
  7. var Configuration_js_1 = require("../Configuration.js");
  8. var SymbolMap_js_1 = require("../SymbolMap.js");
  9. var AmsMethods_js_1 = require("../ams/AmsMethods.js");
  10. var NewcommandUtil_js_1 = __importDefault(require("../newcommand/NewcommandUtil.js"));
  11. var NewcommandConfiguration_js_1 = require("../newcommand/NewcommandConfiguration.js");
  12. var TexError_js_1 = __importDefault(require("../TexError.js"));
  13. exports.ExtpfeilMethods = {};
  14. exports.ExtpfeilMethods.xArrow = AmsMethods_js_1.AmsMethods.xArrow;
  15. exports.ExtpfeilMethods.NewExtArrow = function (parser, name) {
  16. var cs = parser.GetArgument(name);
  17. var space = parser.GetArgument(name);
  18. var chr = parser.GetArgument(name);
  19. if (!cs.match(/^\\([a-z]+|.)$/i)) {
  20. throw new TexError_js_1.default('NewextarrowArg1', 'First argument to %1 must be a control sequence name', name);
  21. }
  22. if (!space.match(/^(\d+),(\d+)$/)) {
  23. throw new TexError_js_1.default('NewextarrowArg2', 'Second argument to %1 must be two integers separated by a comma', name);
  24. }
  25. if (!chr.match(/^(\d+|0x[0-9A-F]+)$/i)) {
  26. throw new TexError_js_1.default('NewextarrowArg3', 'Third argument to %1 must be a unicode character number', name);
  27. }
  28. cs = cs.substr(1);
  29. var spaces = space.split(',');
  30. NewcommandUtil_js_1.default.addMacro(parser, cs, exports.ExtpfeilMethods.xArrow, [parseInt(chr), parseInt(spaces[0]), parseInt(spaces[1])]);
  31. };
  32. new SymbolMap_js_1.CommandMap('extpfeil', {
  33. xtwoheadrightarrow: ['xArrow', 0x21A0, 12, 16],
  34. xtwoheadleftarrow: ['xArrow', 0x219E, 17, 13],
  35. xmapsto: ['xArrow', 0x21A6, 6, 7],
  36. xlongequal: ['xArrow', 0x003D, 7, 7],
  37. xtofrom: ['xArrow', 0x21C4, 12, 12],
  38. Newextarrow: 'NewExtArrow'
  39. }, exports.ExtpfeilMethods);
  40. var init = function (config) {
  41. NewcommandConfiguration_js_1.NewcommandConfiguration.init(config);
  42. };
  43. exports.ExtpfeilConfiguration = Configuration_js_1.Configuration.create('extpfeil', {
  44. handler: { macro: ['extpfeil'] },
  45. init: init
  46. });
  47. //# sourceMappingURL=ExtpfeilConfiguration.js.map