author | Oleksandr Gavenko <gavenkoa@gmail.com> |
Sun, 27 Nov 2022 23:40:10 +0200 | |
changeset 1763 | bcd7574bc9c3 |
parent 1747 | b7d3a5fd4059 |
permissions | -rw-r--r-- |
1735
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
1 |
;;;###autoload |
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
2 |
(defun gds-sabre-decode-region (&optional beg end prefix) |
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
3 |
"Decode garbage coming from UTF8 terminals when Sabre operates in iso-8859-1." |
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
4 |
(interactive "r\nP") |
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
5 |
(unless beg (setq beg (region-beginning))) |
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
6 |
(unless end (setq end (region-end))) |
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
7 |
(let (text) |
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
8 |
(setq text |
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
9 |
(decode-coding-string |
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
10 |
(encode-coding-string |
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
11 |
(decode-coding-string |
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
12 |
(encode-coding-string (buffer-substring beg end) 'iso-8859-1) |
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
13 |
'utf-8) |
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
14 |
'iso-8859-1) |
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
15 |
'cp1252)) |
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
16 |
(when prefix |
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
17 |
(delete-region beg end) |
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
18 |
(insert text)) |
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
19 |
text)) |
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
20 |
|
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
21 |
;;;###autoload |
1741
363696dc8d3c
Highlighting for Sabre SSRs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1740
diff
changeset
|
22 |
(defun gds-sabre-highlight-getres () |
1735
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
23 |
(interactive) |
1736
b4c49ef014e2
Updated Sabre XML entries to highlight.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1735
diff
changeset
|
24 |
(highlight-regexp " \\(?:[[:alpha:]_]*PseudoCityCode\\|CreationAgent\\|BookingSource\\|AgentSine\\)=\"\\([^\"]+\\)\"" 'hi-pink 1) |
b4c49ef014e2
Updated Sabre XML entries to highlight.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1735
diff
changeset
|
25 |
(highlight-regexp "<\\([[:alnum:]]*:?\\)\\(RecordLocator\\|DepartureAirport\\|ArrivalAirport\\|MarketingAirlineCode\\|MarketingFlightNumber\\)>\\([^<]+\\)</\\1\\2>" 'hi-pink 3) |
1735
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
26 |
(highlight-phrase ":Arunk\\|:FlightSegment\\>\\|:FareBasis\\>" 'hi-pink) |
1747
b7d3a5fd4059
Added more Sabre attributes for highlighting.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1746
diff
changeset
|
27 |
(highlight-regexp "<\\([[:alnum:]]+:\\)?\\(ActionCode\\|ClassOfService\\|MarketingClassOfService\\|InputEntry\\|PricingParameters\\|FullText\\)>\\([^<]+\\)</\\1?\\2>" 'hi-yellow 3) |
1745
30584ca279db
Fixed highlighting of some Sabre XML tags when they are without XML namespace.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1741
diff
changeset
|
28 |
(highlight-phrase "\\(?:isPast\\|isExpired\\|itineraryChange\\|latestPQFlag\\)=\"[^\"]+\"" 'hi-green) |
1747
b7d3a5fd4059
Added more Sabre attributes for highlighting.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1746
diff
changeset
|
29 |
(highlight-regexp "\\(?:ResBookDesigCode\\|Status\\|FlightNumber\\|ArrivalDateTime\\|DepartureDateTime\\|FareBasisCode\\|passengerType\\|sequence\\)=\"\\([^\"]+\\)\"" 'hi-green 1) |
1735
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
30 |
(highlight-phrase "InputMessage=" 'hi-blue)) |
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
31 |
|
1741
363696dc8d3c
Highlighting for Sabre SSRs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1740
diff
changeset
|
32 |
(defvar gds-sabre-highlight-ssrs |
1746
45cfecc51e50
More parrterns for SSR.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1745
diff
changeset
|
33 |
(regexp-opt |
45cfecc51e50
More parrterns for SSR.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1745
diff
changeset
|
34 |
'("ADV OTO TKT" "ADV MORE TKT" "TO AVOID AUTO CXL" |
45cfecc51e50
More parrterns for SSR.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1745
diff
changeset
|
35 |
"CNLD AS NOT TKTD" "CANCELLED DUE TO SYSTEM OR PASSENGER" |
45cfecc51e50
More parrterns for SSR.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1745
diff
changeset
|
36 |
"REMINDER UA SEGS SUBJ TO CXL ON" "UA SEGS XLD" |
45cfecc51e50
More parrterns for SSR.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1745
diff
changeset
|
37 |
"OTHERWISE WILL BE CANCEL" "PLS ADV TKT NBR BY" |
45cfecc51e50
More parrterns for SSR.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1745
diff
changeset
|
38 |
"OTHERWISE WILL BE XLD" |
45cfecc51e50
More parrterns for SSR.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1745
diff
changeset
|
39 |
"PLS ADV TKTNUMBR FOR" |
45cfecc51e50
More parrterns for SSR.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1745
diff
changeset
|
40 |
"CANCELLATION DUE TO NO TICKET" |
45cfecc51e50
More parrterns for SSR.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1745
diff
changeset
|
41 |
"BKG CXLD DUE TO TKT TIME EXPIRED" |
45cfecc51e50
More parrterns for SSR.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1745
diff
changeset
|
42 |
"RITK/ADTKT BY" |
45cfecc51e50
More parrterns for SSR.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1745
diff
changeset
|
43 |
"OR CXL" |
45cfecc51e50
More parrterns for SSR.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1745
diff
changeset
|
44 |
"ADTK" "ADMD" |
45cfecc51e50
More parrterns for SSR.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1745
diff
changeset
|
45 |
"OTHERWISE WILL BE" |
45cfecc51e50
More parrterns for SSR.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1745
diff
changeset
|
46 |
"OR SPACE WILL BE" |
45cfecc51e50
More parrterns for SSR.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1745
diff
changeset
|
47 |
"CXLD AUTOMATICALLY" |
45cfecc51e50
More parrterns for SSR.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1745
diff
changeset
|
48 |
"TIME ZONE" |
45cfecc51e50
More parrterns for SSR.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1745
diff
changeset
|
49 |
"LT ELSE BKG WILL"))) |
1741
363696dc8d3c
Highlighting for Sabre SSRs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1740
diff
changeset
|
50 |
|
363696dc8d3c
Highlighting for Sabre SSRs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1740
diff
changeset
|
51 |
;;;###autoload |
363696dc8d3c
Highlighting for Sabre SSRs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1740
diff
changeset
|
52 |
(defun gds-sabre-highlight-hist () |
363696dc8d3c
Highlighting for Sabre SSRs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1740
diff
changeset
|
53 |
(interactive) |
363696dc8d3c
Highlighting for Sabre SSRs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1740
diff
changeset
|
54 |
(highlight-regexp "^\\(?:SC\\|AS\\|XS\\) .*" 'hi-yellow) |
363696dc8d3c
Highlighting for Sabre SSRs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1740
diff
changeset
|
55 |
(highlight-regexp gds-sabre-highlight-ssrs 'hi-pink) |
363696dc8d3c
Highlighting for Sabre SSRs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1740
diff
changeset
|
56 |
(highlight-regexp "^[A-Z0-9]\\{4\\} [A-Z0-9]\\{4\\}\\*[A-Z0-9]\\{3\\} [0-9]\\{4\\}/[0-9]\\{2\\}[A-Z]\\{3\\}[0-9]\\{2\\}" 'hi-blue 0) |
363696dc8d3c
Highlighting for Sabre SSRs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1740
diff
changeset
|
57 |
(highlight-regexp "^PLT PLTRM[A-Z0-9]\\{2\\} .*" 'hi-green 0)) |
363696dc8d3c
Highlighting for Sabre SSRs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
1740
diff
changeset
|
58 |
|
1735
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
59 |
;;;###autoload |
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
60 |
(defun gds-tp-highlight () |
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
61 |
(interactive) |
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
62 |
(highlight-phrase "\\w+Ref=\\|Key=" 'hi-blue) |
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
63 |
(highlight-phrase "ProviderCode" 'hi-pink) |
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
64 |
(highlight-phrase "\\w*LocatorCode" 'hi-pink) |
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
65 |
(highlight-phrase "OwningPCC" 'hi-pink) |
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
66 |
(highlight-phrase "FareBasis" 'hi-green) |
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
67 |
(highlight-phrase "CabinClass" 'hi-green) |
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
68 |
(highlight-phrase "BookingCode" 'hi-green) |
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
69 |
(highlight-phrase "FareBasis" 'hi-green) |
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
70 |
(highlight-phrase "ClassOfService" 'hi-green) |
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
71 |
(highlight-phrase "Status=" 'hi-green) |
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
72 |
(highlight-phrase "\\w*TotalPrice" 'hi-green)) |
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
73 |
|
e8425ea2f39b
Helper functions for Sabre GDS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff
changeset
|
74 |
(provide 'gds-sabre) |