ANSI X12/EDIFACT document viewing



  • I’ve seen occasional and “generic” requests for some built-in support for documents using either or both of these formats for Electronic Data Interchange (EDI), as well as some proposed progress towards implementing such support (e.g., issue #6173 on GitHub).

    I realize that, for many, this is likely a low-priority issue, but for many of us who use NP++ and deal with EDI transactions on a regular basis, adding more full-featured support for these documents would be tremendously beneficial. I’ve also used and “tweaked” the XML style information provided in an answer on StackOverflow to the question about X12 syntax highlighting for Notepad++? for my own purposes, and it works well enough when trying to get a quick look at an X12 document. I’ve even created a registry file for Windows I can import which creates explicit associations for EDI files with NP++ (and assigns a recognizable “X12” icon to these files to help pick them out in a directory view). But, these simple “tricks” certainly have their limitations and would be enhanced by better support for the format within NP++.

    A few of the features that would be desired in an EDI implementation for ANSI X12 documents (I don’t currently work with EDIFACT documents, so I’ll just focus on the ANSI X12 structure) would include:

    • Folding of segments and segment groups such as Hierarchical Levels (HL’s)
    • Keyword identification of segment types - specifically in the first position
    • Identification of segment terminators as well as element/value separators
    • Keyword identification of element types - specifically within a segment and enclosed by the element separator

    Amongst others that I’m sure I’m not considering at the moment.

    I post this here to try to provide some more specific details about what I’m looking for. I know that I could use one of the other text editors out there, and even some of the “paid” utilities that are explicitly designed to handle ANSI X12/EDIFACT documents, but I would much prefer to simply improve on the functionality of a tool with which I’m already familiar. Please feel free to ask questions or include your own suggestions for things I’ve overlooked. Thank you.