Giter VIP home page Giter VIP logo

xmlnotepad's Introduction

XML Notepad is a Windows program that provides a simple intuitive User Interface for browsing and editing XML documents. There are four ways to install it:

  1. ClickOnce® installer - this is the most convenient, install it directly from the web browser.
  2. Standalone downloadable installer if you need something that works offline. Just download the zip file, copy it to the machine you want to install it on, unzip the file on that machine and run XmlNotepadSetup.msi.
  3. Windows MSIX installer if you need a trusted Windows installer.
  4. You can also use WinGet as follows: winget install XmlNotepad

image

XML Notepad provides the following useful features:

  • XML Schema aware Intellisense
  • Find dialog that supports XPath
  • Support for XInclude
  • Supports XSLT transforms with inline viewer of XSLT output
  • Automatic conversion of .csv, .json and .html files
  • Handy stats about your XML documents
  • XML diff to compare 2 similar XML documents
  • Vibrant community with many updates and bug fixes.

See XML Notepad Design for information about how this application is built.

This project has adopted the Microsoft Open Source Code of Conduct.

For more information see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.

Change History

See Change History for a list of new features and bug fixes.

Help

See Help Pages.

xmlnotepad's People

Contributors

abhimanyusirohi avatar aleks-ivanov avatar anderschen123 avatar austinwise avatar blakedrumm avatar byronbytes avatar chrismitter avatar clovett avatar damirainullin avatar dependabot[bot] avatar jaiganeshkumaran avatar jvr2022 avatar lixkote avatar lovettchris avatar microsoft-github-policy-service[bot] avatar mmojgani77 avatar msftgits avatar olmisa avatar pdeligia avatar slestak avatar unforgiven512 avatar vincent-lepape avatar vincentlepape avatar wilczynskit avatar wujastyk avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

xmlnotepad's Issues

Problem opening files from network

I'm having a problem opening xml from a network location if the url has spaces in it. I remember there being a registry hack to fix that but I can't remember what registry key to edit. Basically, i need to put " around it.. Do you what the registry key is?

Thanks

Expandable IDREFs

The ID and IDREF/IDREFS XML data types are often used to "point" to data that exists elsewhere. It is often advantageous to define something once and reference it as need. However, this introduces a level of indirection that makes it difficult to quickly inspect XML and determine its logical meaning.

I am proposing an enhancement to XmlNotepad to address this. When a IDREF/IDREFS is encountered that points to one or more defined IDs, instead of appearing as an attribute/element, it would appear as a folder (like element-only tags currently do). This folder would contain the the tags referenced by IDREF/IDREFs.

Access to the nodes could be handled by constructing a Dictionary<IDREF, XmlNode> during schema validation.

Transformed files always have a Byte Order Mark.

Saved files respect the option whether to write a BOM on save. Files that are created through the XSLT transformation always have a BOM.
It would be nice if the transformed files would respect the BOM option, or to have a different option for them.

Colors for white areas

Thanks for this program!
I was wondering if the background of the main viewing area could also have color changes like the other elements. As you can see from the image the areas to the right of elements aren't colored like the rest of the backgrounds. And also the bottom panel "Description" (basically all the white areas).
Thanks.
XMLNotepad

Batch Mode

Hi,

Is there a batch mode? Like can I run the comparison tool from a batch script without the UI and still getting the diff file?

error in stylesheet location

I just updated from 2.7.1.16 to 2.7.1.20: I encontuered the following bug: the stylesheet URL defined in the XML seems to be searched in the C:/ drive instead of the real web location.

immagine

In the 2.7.1.16 I'm able to view the same XML with its stylesheet without any problem.
Thank you

Keyboard Shortcuts

Could You add possibility to change keyboard shortcut for features on Your app

[xmlnotepadsetup] Failing with WIX error: No certificates were found that met all the given criteria.

What is the solution/workaround for this?

This is a simple rebuild of the freshly clone repository.

1>------ Build started: Project: XmlNotepadSetup, Configuration: Debug x86 ------
1>		set SIGNTOOL=C:\TDW\XmlNotepad\src\XmlNotepadSetup\..\..\tools\signtool.exe
1>"%SIGNTOOL%" sign /v /debug /i "COMODO RSA Code Signing CA"  /t http://timestamp.comodoca.com/authenticode /fd sha256 "C:\TDW\XmlNotepad\src\XmlNotepadSetup\bin\Debug\XmlNotepadSetup.msi"
1>		The following certificates were considered:
1>		After EKU filter, 0 certs were left.
1>		After expiry filter, 0 certs were left.
1>		After Issuer Name filter, 0 certs were left.
1>		After Private Key filter, 0 certs were left.
1>EXEC(0,0): error : No certificates were found that met all the given criteria.
1>C:\TDW\XmlNotepad\src\packages\WiX.3.11.2\tools\wix2010.targets(2832,5): error MSB3073: The command "set SIGNTOOL=C:\TDW\XmlNotepad\src\XmlNotepadSetup\..\..\tools\signtool.exe
1>"%SIGNTOOL%" sign /v /debug /i "COMODO RSA Code Signing CA"  /t http://timestamp.comodoca.com/authenticode /fd sha256 "C:\TDW\XmlNotepad\src\XmlNotepadSetup\bin\Debug\XmlNotepadSetup.msi"" exited with code 1.
1>Done building project "XmlNotepadSetup.wixproj" -- FAILED.

Invalid Rex file. the requested value 'Ins' could not be located

I just downloaded the repository as a zip, unzippped, open it on Visual Studio 2017 Community and there appears this error message(among others):

"No se puede encontrar el valor solicitado 'Ins'. línea 401, posición 5."

C:\Users\MyUser\Desktop\XmlNotepad-master\src\XmlNotepad\FormMain.resx

línea 401, posición 5(Line 401, pos 5)

Sorry, my locale is Spanish, see title of this issue for a translation

2019-02-26 17_48_18-xmlnotepad - microsoft visual studio

Xml file can be opened for viewing/editing, but not compared

Reduced test case. Open 'a.xml' with this content:

<?xml version="1.0" ?>
<First>
<Second>
<x>&#32;</x>
</Second>
<y>5</y>
</First>

Compare with this 'b.xml' wit this content:

<?xml version="1.0" ?>
<First>
<Second>
<x>&#32;</x>
</Second>
<y>6</y>
</First>

If there are any difference between the 2 files (the y element in this case) it will error with a "Length cannot be less than zero. Parameter name: length".

This is actually caused by the 'hex encoded' space character in the x element.

RSS

Any chance we could get it to support opening and reading RSS feeds? Currently, it breaks on the rss declaration at the top.

thanks!

Can't open files in WebDAV location

I have a WebDAV location configured into Windows 7 through the 'map network drive' method. I can open XML files stored in this location in other applications, but not XMLNotepad. It gives the errror:

error

Save diff report

Hi,

Can you add a save comparison report functionality?
Thanks

Error loading schema 'C:\Nashev\XML\XMLSchema.xsd' - XmlReader.Create(XmlReaderSettings.DtdProcessing=Parse)

When I try to add XMLSchema.xsd through View/Schemas... I get an error message:

Schema Error
Error loading schema 'C:\XML\XMLSchema.xsd'

По соображениям безопасности использование DTD в данном XML-документе запрещено. Чтобы включить обработку DTD, установите свойство DtdProcessing в разделе XmlReaderSettings в значение Parse и передайте методу XmlReader.Create.

Set as Default Program

In previous versions of XML Notepad, I was able to set it as the default program for opening XML files. I no longer seem to be able to do that. The right-click -> Open With -> Choose Default Program allows me to browse for the executable, but does not select it. Set Default Programs in control panel does not list it.

I'm using Win7 Home Premium 64-bit.

Thank you.

Difficulty connecting to schema file over SSL

This isn't fatal, but I figured I'd send it along. I use XML Notepad for working with school state reporting files here in Michigan, and recently I'm finding that the schema files posted by the state aren't loading, which is unfortunate because your program does a great job catching invalid values, etc. The schema is posted at https://cepi.state.mi.us/msdsxml/FallGeneralCollection2019-20201.xsd . When I open one of the count files, which have headers like

<?xml version="1.0" encoding="utf-8"?>
<FallGeneralCollectionGroup SchemaVersionMajor="2019-2020" SchemaVersionMinor="1" CollectionId="211" CollectionName="FallGeneralCollection" SubmittingSystemVendor="MISD" SubmittingSystemName="MISDmsds" SubmittingSystemVersion="2.2.4.5" xsi:noNamespaceSchemaLocation="https://cepi.state.mi.us/msdsxml/FallGeneralCollection2019-20201.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

I get the following error:

Error loading schema 'https://cepi.state.mi.us/msdsxml/FallGeneralCollection2019-20201.xsd'
The request was aborted: Could not create SSL/TLS secure channel.

Since I'm not receiving any sort of certificate errors off of the state website, I'm kind of assuming the program and the site are failing to shake hands due to some sort of security adjustment in XML Notepad, as this didn't happen until the last few months.

WebBrowser window fails to process href files linked with relative paths

XSL processing can insert href links into the html output, for images, css etc. This works fine in xmlnotepad as long as the href links are fully qualified paths (eg. c:\solarsys\planet9.css) but fails when the links are relative (./../../solarsys/planet9.css)

From a new users perspective, this can be perplexing since relative paths look valid in all xml/xsl files. However, the html output is never 'stored' anywhere other than memory and relative paths have no meaning. Currently the XML is loaded to memory then passed to WebBrowser thus relative paths have no meaning. There seems to be no way to set a 'working directory' for the WebBrowser component.

xmlnotepad could support relative paths by reading href links and loading those files into the WebBrowser DOM. But that is probably a bit of work. Is there an easier way?

Workarounds:
(1) Use fully qualified paths.
(2) Drag and drop your xml file into the xmlnotepad WebBrowser window
(3) Use XSL to copy the content of relative files directly into the html output - described here:
http://stackoverflow.com/questions/1038101/how-to-copy-external-css-and-javascript-in-xslt
For images, they would need to be base64 encoded for embedding into html with Data URI.

Very large XML's hang for a long time on edit

If you have a very large XML, and edit something towards the end of the XML, it will hang up for a substantial amount of time. Even on not so large XML's the time delay after editing a node value is noticeable.

The source of the delay is the CheckChange call in XmlTreeView.OnModelChanged, which appears to be doing an exhaustive search of the XML document on every edit.

Naming of applicationSettings My.MySettings setting

This is a feature suggestion. So in .config files we have big applicationSettings section with a lot of setting items. Right now in "xml notepad" it looks like on the screenshot. What I am suggesting is getting a value of name attribute of the setting item and then in the Tree View either substitute string "setting" with the value of name either append value of name to string "setting". With that being implemented it will be much easier to look for specific setting without remembering exact position and without using View - Expand All menu button.
image

Broken link

The link in the description "See XML Notepad Design for information about how this application is built." is broken.

Opensource version?

Quick analysis give dependency from COM mshtml. Is it possible to build this application without it ?

 Microsoft.mshtml, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 Microsoft.VisualStudio.QualityTools.UnitTestFramework, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL
 PresentationCore
 PresentationFramework
 UIAutomationClient
 UIAutomationTypes
[~] Accessibility
[~] Microsoft.CSharp
[~] System
[~] System.Core
[~] System.Data
[~] System.Data.DataSetExtensions
[~] System.Deployment
[~] System.Drawing
[~] System.Windows.Forms
[~] System.Xaml
[~] System.Xml
[~] System.XML
[~] System.Xml.Linq
[~] WindowsBase

2.8.0.8 version?

The updater reports a new version (2.8.0.8 per the update site) but only 2.8.0.7 can be downloaded as far as I can tell.

Portable version?

Is it possible to make a portable version of XmlNotepad, rather than one that needs to be installed?

Line Command to automatize XMLNotepad

Is it possible in the near future to have some command line like Open, Close, Load, etc. Etc. to automate the use of the software in a batch file or other use ?
Tia
Arcangelo

Replace empty elements with new text

Dear All!

Thanks for this great XML editor, especially the validation (dropdowns!) for XSD restrictions is extremely helpful!

I have one question, whether this is possible right now (or in a future update):
If I search for element nodes with existing text in it, I can replace this text by using a /valid/xpath/to/soughtelement/text() xpath search. This replaces the text contained in soughtelement with the new text.

If the text in soughtelement is empty however, I can't make this work, as /valid/xpath/to/soughtelement[not(text())] replaces the whole soughtelement with the new text and /valid/xpath/to/soughtelement[not(text())]/text() doesn't find anything.

Any "hacking" the XML directly is forbidden as the search/replace dialog doesn't allow reserved XML characters.

I'd really appreciate any help on this one!

-regards,
Roland

Size of dropdown list with previously opened files

There is a dropdown list which contain previously opened files. But it is limited by 10 items. It will be
useful to have scrollbar or an option to specify a number of items in this dropdown list. If this is possible could you add this to config?

Spaces in XmlNotepad solution path breaks Unit tests.

Unit tests cannot be executed if the XmlNotepad Solution is located in a path with spaces in the path. For example c:\users\john smith\will\not\work\XmlNotepad.

In addition all unit tests that uses this pattern...
p = pivalue.Bounds.Center();
var hit = ntv.HitTest(p.X, p.Y);
string hitname = hit.Name;
..fails on my computer.

can not open in VS 2017

hello,
there always exits a error that
“"E:\Anik\Work Files\XMLeditor\srcc\PublishDrop.cmd" "E:\Anik\Work Files\XMLeditor\srcc\Application\bin\Debug" > "E:\Anik\Work Files\XMLeditor\srcc\Publish.log"
”已退出,代码为 4。 Application 生成

Fails to open files with spaces in the file name

Firstly: very useful app, thank you!

eg. filename = "My File.xml"
Right click on the file, select "open with..", select xmlnotepad
Fails with errors, cannot find "My" and cannot find "File.xml"
Presumably this would also happen if double clicking that xml file and xmlnotepad was the default app for xml extension.
Workaround: Use the file>open menu option in xmlnotepad

Line Numbers

Can you put the line numbers in the comparison report?
It would be very useful.

Tanks

Can we host the binaries on the Releases tab?

I would have more confidence in the authenticity and accuracy of the binaries if they were hosted on this project's releases tab.

I can't really tell that this software is related to this project (unless I followed the link in the wiki) and I'm not sure what version I'm getting. Although, it looks like this is a ClickOnce app, so maybe its self-explanatory?

XML files stored on Sharepoint won't open

Whenever I open an XML file stored on SharePoint Server 2013, I get a Load Error message:
Invalid URI: The hostname could not be parsed. Would you like to open it using Notepad? Yes/No.

Break out XmlDiffPatch/View as official NuGet packages

There's only an unofficial NuGet package based on the original NET 1.1 version of the code and although json is taking over the world, there's still a lot of XML in enterprise applications that needs supporting.

Extract out XmlDiffPatch and XmlDiffView as separate NuGet packages and also support NET Core,

BTW I don't mind taking a first attempt at this.

Executable location

Where is the app located? I'm trying to associate .xml files to this app and I can't find it anywhere in the store or on my hard drive. I have a shortcut in my Start Menu, but can't figure out where it's launching from.
Thanks.

Default app setting

With the latest update, setting the default app for xml files to XML Notepad doesn't work correctly in Windows 10. XML Notepad doesn't read the full pathname correctly when you double click an xml file in windows explorer and can't find the file.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.