CINXE.COM

Tidy download | SourceForge.net

<!doctype html> <!-- Server: sfs-consume-4 --> <html class="no-js" lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no" /> <script src="//a.fsdn.com/con/js/min/sf.sandiego-cmp-top.js?1732305089"></script> <script type = "text/javascript"> bizx.cmp.ifConsent({ purposes: 'all', vendors: 'blockthrough'}, function () { var bt = 'https://btloader.com/tag?o=5098683085881344&upapi=true'; bizx.cmp.embedScript(bt, true); window.addEventListener('AcceptableAdsInit', function (e) { if(e.detail) { console.log('acceptable ads on'); SF.Ads.acceptable_ads_active = true; } else { console.log('acceptable ads off'); SF.Ads.acceptable_ads_active = false; } }); }); </script> <script> bizx.cmp.ifConsent({ purposes: 'ads', vendors: 'adshield'}, function () { var s = document.createElement('script'); s.async = true; s.id = "vnpQPlLH"; s.setAttribute('data-sdk', 'l/1.1.1'); s.setAttribute('data-cfasync', 'false'); s.src = "https://html-load.com/loader.min.js"; s.charset = "UTF-8"; s.data="irrron6o4fhugojo4o2o4hch8hto8jhe2h4h8oso7o4ojfogh8h4oj5h4h4fo7o4hefogovh4oso7o4fh4oifuhyojojo7o4he52h4ocoso7o4huhk3sfo2hkh8huo8jo7o4qhcuh8hto8jqo4kh9";s.setAttribute('onload', "!async function(){let e='html-load.com';const t=window,r=e=>new Promise((t=>setTimeout(t,e))),o=r=>{const o=navigator.language.toLowerCase().startsWith('ko')?decodeURIComponent(escape(atob('7J6Y66q765CcIOyVoOuTnOu4lOuhnSDtlYTthLDroZwg7Ju57Y6Y7J207KeAIOuhnOuUqeyXkCDsi6TtjKjtlZjsmIDsirXri4jri6QuIOyVoOuTnOu4lOuhneydhCDruYTtmZzshLHtmZTtlZwg7ZuEIOybueyCrOydtO2KuOulvCDsnbTsmqntlbTso7zshLjsmpQuICjsnpDshLjtlZwg64K07Jqp7J2AICftmZXsnbgnIOuyhO2KvOydhCDriIzrn6wg7ZmV7J247ZW07KO87IS47JqUKQ'))):atob('VGhpcyBwYWdlIGNvdWxkIG5vdCBiZSBsb2FkZWQgcHJvcGVybHkgZHVlIHRvIGluY29ycmVjdCAvIGJhZCBmaWx0ZXJpbmcgcnVsZShzKSBvZiBhZGJsb2NrZXJzIGluIHVzZS4gUGxlYXNlIGRpc2FibGUgYWxsIGFkYmxvY2tlcnMgdG8gY29udGludWUgdXNpbmcgdGhlIHdlYnNpdGUuIChjbGljayBPSyBpZiB5b3UnZCBsaWtlIHRvIGxlYXJuIG1vcmUp');if(confirm(o)){const o=new t.URL('https://report.error-report.com/modal');o.searchParams.set('url',btoa(location.href)),o.searchParams.set('error',btoa(r.toString())),o.searchParams.set('domain',e),location.href=o.href}else location.reload()};try{const s=()=>new Promise((e=>{let t=Math.random().toString(),r=Math.random().toString();window.addEventListener('message',(e=>e.data===t&&window.postMessage(r,'*'))),window.addEventListener('message',(t=>t.data===r&&e())),window.postMessage(t,'*')}));async function a(){try{let e=!1,t=Math.random().toString();if(window.addEventListener('message',(r=>{r.data===t+'_as_res'&&(e=!0)})),window.postMessage(t+'_as_req','*'),await s(),await r(500),e)return!0}catch(e){console.error(e)}return!1}const n=[100,500,1e3];for(let i=0;i<=n.length&&!await a();i++){if(i===n.length-1)throw atob('RmFpbGVkIHRvIGxvYWQgd2Vic2l0ZSBwcm9wZXJseSBzaW5jZSA')+e+atob('IGlzIHRhaW50ZWQuIFBsZWFzZSBhbGxvdyA')+e;await r(n[i])}}catch(l){console.error(l);try{setInterval((()=>document.querySelectorAll('link,style').forEach((e=>e.remove()))),100),alert(l);const c=await(await fetch('https://error-report.com/report?type=loader_light&url='+btoa(location.href)+'&error='+btoa(l),{method:'POST'})).text();let d=document.createElement('iframe');const m=new t.URL('https://report.error-report.com/modal');m.searchParams.set('url',btoa(location.href)),m.searchParams.set('eventId',c),m.searchParams.set('error',btoa(l)),m.searchParams.set('domain',e),d.src=m.href,d.setAttribute('style','width: 100vw; height: 100vh; z-index: 2147483647; position: fixed; left: 0; top: 0;');const h=e=>{'close-error-report'===e.data&&(d.remove(),window.removeEventListener('message',h))};window.addEventListener('message',h),document.body.appendChild(d);const u=()=>'none'!==t.getComputedStyle(d).display,w=setInterval((()=>{document.contains(d)||clearInterval(w),u()||(o(l),clearInterval(w))}),1e3)}catch(g){o(g)}}}();"); s.setAttribute('onerror', "(function(){let e=document.getElementById('vnpQPlLH'),t=document.createElement('script');for(let r=0;r<e.attributes.length;r++)t.setAttribute(e.attributes[r].name,e.attributes[r].value);let s=new window.URL(e.src),a=['html-load.com','fb.html-load.com','content-loader.com','fb.content-loader.com'];if(void 0===window.as_retry&&(window.as_retry=0),window.as_retry>=a.length){setInterval(()=>document.querySelectorAll('link,style').forEach((e)=>e.remove()),100);let o=atob('RmFpbGVkIHRvIGxvYWQgd2Vic2l0ZSBwcm9wZXJseSBzaW5jZSA')+a[0]+atob('IGlzIGJsb2NrZWQuIFBsZWFzZSBhbGxvdyA')+a[0];throw alert(o),fetch('https://error-report.com/report?type=loader_light&url='+btoa(location.href)+'&error='+btoa(o),{method:'POST'}).then(e=>e.text()).then(e=>{let r=document.createElement('iframe');r.src='https://report.error-report.com/modal?url='+btoa(location.href)+'&eventId='+e+'&error='+btoa(o)+'&domain='+a[0],r.setAttribute('style','width: 100vw; height: 100vh; z-index: 2147483647; position: fixed; left: 0; top: 0;'),document.body.appendChild(r);let f=e=>{'close-error-report'===e.data&&(r.remove(),window.removeEventListener('message',f))};window.addEventListener('message',f)}).catch(o=>{let l=navigator.language.toLowerCase().startsWith('ko')?decodeURIComponent(escape(atob('7J6Y66q765CcIOyVoOuTnOu4lOuhnSDtlYTthLDroZwg7Ju57Y6Y7J207KeAIOuhnOuUqeyXkCDsi6TtjKjtlZjsmIDsirXri4jri6QuIOyVoOuTnOu4lOuhneydhCDruYTtmZzshLHtmZTtlZwg7ZuEIOybueyCrOydtO2KuOulvCDsnbTsmqntlbTso7zshLjsmpQuICjsnpDshLjtlZwg64K07Jqp7J2AICftmZXsnbgnIOuyhO2KvOydhCDriIzrn6wg7ZmV7J247ZW07KO87IS47JqUKQ'))):atob('VGhpcyBwYWdlIGNvdWxkIG5vdCBiZSBsb2FkZWQgcHJvcGVybHkgZHVlIHRvIGluY29ycmVjdCAvIGJhZCBmaWx0ZXJpbmcgcnVsZShzKSBvZiBhZGJsb2NrZXJzIGluIHVzZS4gUGxlYXNlIGRpc2FibGUgYWxsIGFkYmxvY2tlcnMgdG8gY29udGludWUgdXNpbmcgdGhlIHdlYnNpdGUuIChjbGljayBPSyBpZiB5b3UnZCBsaWtlIHRvIGxlYXJuIG1vcmUp');confirm(l)?location.href='https://report.error-report.com/modal?url='+btoa(location.href)+'&eventId=&error='+btoa(o.toString())+'&domain='+a[0]:location.reload()}),Error(o)}s.host=a[window.as_retry++],t.setAttribute('src',s.href),e.setAttribute('id', e.getAttribute('id')+'_'),e.parentNode.insertBefore(t,e),e.remove();})()"); document.head.appendChild(s); }); </script> <script> /*global unescape, window, SF*/ // Setup our namespace if (!window.SF) { window.SF = {}; } if (!window.net) { window.net = {}; } if (!window.net.sf) { window.net.sf = {}; } SF.Ads = {}; SF.cdn = '//a.fsdn.com/con'; SF.deploy_time = '1732305089'; SF.sandiego = true; SF.sandiego_chrome = true; SF.variant = 'sf'; SF.fpid = '62341114-a41e-4b37-9f96-d01c69da8545'; SF.billboard_route = '/software/product/$slug/'; SF.Breakpoints = { small: 0, medium: 640, leaderboard: 743, billboard: 985, large: 1053, xlarge: 1295, xxlarge: 1366 }; SF.initial_breakpoints_visible = {}; for (var bp in SF.Breakpoints) { if (!SF.Breakpoints.hasOwnProperty(bp)) { continue; } SF.initial_breakpoints_visible[bp] = !window.matchMedia || window.matchMedia('(min-width: ' + SF.Breakpoints[bp] + 'px)').matches; } SF.Ads.viewportWidth = Math.max(document.documentElement.clientWidth, window.innerWidth || 0); SF.Ads.viewportHeight = Math.max(document.documentElement.clientHeight, window.innerHeight || 0); </script> <link rel="stylesheet" href="//a.fsdn.com/con/css/lato.css?1732305089"> <link rel="stylesheet" href="//a.fsdn.com/con/css/sandiego.css?1732305089"> <link rel="stylesheet" href="//a.fsdn.com/con/css/disallow.css?1732305089"> <meta name="description" content="Download Tidy for free. The granddaddy of HTML tools, with support for modern standards. Tidy is a console application for macOS, Linux, Windows, UNIX, and more. It corrects and cleans up HTML and XML documents by fixing markup errors and upgrading legacy code to modern standards."/> <meta name="keywords" content="Tidy, download Tidy free, HTML/XHTML, Software Development"/> <meta property="og:title" content="Tidy"/> <meta property="og:type" content="product"/> <meta property="og:image" content="https://a.fsdn.com/allura/mirror/html-tidy/icon?136702139200c2f1a2cbf2aae694c019bfa5104a2e7a63d952bb4cd2de9f2874"/> <meta property="og:url" content="https://sourceforge.net/projects/html-tidy.mirror/"/> <meta property="og:site_name" content="SourceForge"/> <meta property="og:description" content="Download Tidy for free. The granddaddy of HTML tools, with support for modern standards. Tidy is a console application for macOS, Linux, Windows, UNIX, and more. It corrects and cleans up HTML and XML documents by fixing markup errors and upgrading legacy code to modern standards."/> <title>Tidy download | SourceForge.net</title> <link rel="icon" sizes="180x180" href="//a.fsdn.com/con/img/sandiego/logo-180x180.png" type="image/png"> <link rel="icon" sizes="any" href="//a.fsdn.com/con/img/sandiego/svg/originals/sf-icon-orange-no_sf.svg" type="image/svg+xml"> <link rel="apple-touch-icon" sizes="180x180" href="//a.fsdn.com/con/img/sandiego/logo-180x180.png"> <link rel="mask-icon" href="//a.fsdn.com/con/img/sandiego/svg/originals/sf-icon-orange-no_sf.svg" color="#FF6600"> <script> /*global unescape, window, console, jQuery, $, net, SF, DD_belatedPNG, bizx */ if (!window.SF) { window.SF = {}; }SF.EU_country_codes = ["GB","AT","GL","BM","PF","NL","TF","MS","PN","ME","CH","PT","GI","PM","TC","BE","IO","VG","LI","CY","KY","AI","AX","LT","WF","DK","IS","GS","ES","HU","CZ","SI","MT","LV","GR","FK","HR","FR","SE","GP","AW","PL","NO","NC","MF","SH","BG","JE","GG","IE","EE","IT","SK","YT","LU","MQ","GF","RE","CW","SX","RO","BL","DE","FI"]; SF.unknown_country_codes = ["","A1","A2","O1"]; </script> <script src="//a.fsdn.com/con/js/min/sf.sandiego-head.js?1732305089"></script> <style>.E7cc1de994c137b283df25c5e9adc22b72253cb0a { display: none !important; }</style> <link rel="alternate" type="application/rss+xml" title="Tidy&#8230;Recent Activity" href="/mirror/html-tidy/activity/feed"/> <link rel="alternate" type="application/rss+xml" title="Tidy&#8230;File Releases" href="/projects/html-tidy.mirror/rss?path=/"/> <link rel="canonical" href="https://sourceforge.net/projects/html-tidy.mirror/"> <script>SF.adblock = true;</script> <script src="//a.fsdn.com/con/js/adpopup.js?1732305089"></script> <script> bizx.cmp.ifConsent({ purposes: 'all', vendors: 'google-ads'}, function () { bizx.cmp.embedScript('https://securepubads.g.doubleclick.net/tag/js/gpt.js'); }); </script><script> /*global Foundation */ var googletag = window.googletag || {}; googletag.cmd = googletag.cmd || []; SF.Ads.usePrebid = false; var gptadslots=[]; var gptadHandlers={}; var gptadRenderers=[]; SF.Ads.slotsById = {}; SF.Ads.idsByPath = {}; googletag.cmd.push(function() { var leaderboard = googletag.sizeMapping() .addSize([970, 901], [[728,90]]) .addSize([728, 200], [[728,90]]) .build(); var leaderboardInContent = googletag.sizeMapping() .addSize([1280, 200], [[728,90]]) .addSize([728, 200], [[728,90]]) .build(); googletag.pubads() .setForceSafeFrame(true) .setTargeting('usingSafeFrame','1') .setSafeFrameConfig({ allowOverlayExpansion: true, allowPushExpansion: true, sandbox: true }); var thisSlot; thisSlot = googletag.defineSlot('/41014381/Sourceforge/SF_ProjectSum_GEL_A',"fluid",'div-gpt-ad-1715706427041-0') .addService(googletag.pubads()) .setTargeting('oss_tpc',["Data Formats","Formats and Protocols","HTML/XHTML","Software Development"]) .setTargeting('shortname',"html-tidy.mirror") .setTargeting('dc_ref',"https://sourceforge.net/projects/html-tidy.mirror/") .setTargeting('sz',"fluid") .setTargeting('page_type',"pg_project"); gptadslots.push(thisSlot); SF.Ads.slotsById['div-gpt-ad-1715706427041-0'] = thisSlot; SF.Ads.idsByPath['/41014381/Sourceforge/SF_ProjectSum_GEL_A'] = 'div-gpt-ad-1715706427041-0'; thisSlot = googletag.defineSlot('/41014381/Sourceforge/SF_ProjectSum_GEL_B',"fluid",'div-gpt-ad-1715706481535-0') .addService(googletag.pubads()) .setTargeting('oss_tpc',["Data Formats","Formats and Protocols","HTML/XHTML","Software Development"]) .setTargeting('shortname',"html-tidy.mirror") .setTargeting('dc_ref',"https://sourceforge.net/projects/html-tidy.mirror/") .setTargeting('sz',"fluid") .setTargeting('page_type',"pg_project"); gptadslots.push(thisSlot); SF.Ads.slotsById['div-gpt-ad-1715706481535-0'] = thisSlot; SF.Ads.idsByPath['/41014381/Sourceforge/SF_ProjectSum_GEL_B'] = 'div-gpt-ad-1715706481535-0'; thisSlot = googletag.defineSlot('/41014381/Sourceforge/SF_ProjectSum_GEL_C',"fluid",'div-gpt-ad-1715706533700-0') .addService(googletag.pubads()) .setTargeting('oss_tpc',["Data Formats","Formats and Protocols","HTML/XHTML","Software Development"]) .setTargeting('shortname',"html-tidy.mirror") .setTargeting('dc_ref',"https://sourceforge.net/projects/html-tidy.mirror/") .setTargeting('sz',"fluid") .setTargeting('page_type',"pg_project"); gptadslots.push(thisSlot); SF.Ads.slotsById['div-gpt-ad-1715706533700-0'] = thisSlot; SF.Ads.idsByPath['/41014381/Sourceforge/SF_ProjectSum_GEL_C'] = 'div-gpt-ad-1715706533700-0'; thisSlot = googletag.defineSlot('/41014381/Sourceforge/SF_ProjectSum_728x90_A', [728, 90],'div-gpt-ad-1394209358853-0') .defineSizeMapping( leaderboard ) .addService(googletag.pubads()) .setTargeting('oss_tpc',["Data Formats","Formats and Protocols","HTML/XHTML","Software Development"]) .setTargeting('shortname',"html-tidy.mirror") .setTargeting('dc_ref',"https://sourceforge.net/projects/html-tidy.mirror/") .setTargeting('page_type',"pg_project"); gptadslots.push(thisSlot); SF.Ads.slotsById['div-gpt-ad-1394209358853-0'] = thisSlot; SF.Ads.idsByPath['/41014381/Sourceforge/SF_ProjectSum_728x90_A'] = 'div-gpt-ad-1394209358853-0'; thisSlot = googletag.defineSlot('/41014381/Sourceforge/SF_Mobile_320x50_A',[320,50],'div-gpt-ad-1512154506943-0') .addService(googletag.pubads()) .setTargeting('oss_tpc',["Data Formats","Formats and Protocols","HTML/XHTML","Software Development"]) .setTargeting('shortname',"html-tidy.mirror") .setTargeting('dc_ref',"https://sourceforge.net/projects/html-tidy.mirror/") .setTargeting('sz',"320x50") .setTargeting('page_type',"pg_project"); gptadslots.push(thisSlot); SF.Ads.slotsById['div-gpt-ad-1512154506943-0'] = thisSlot; SF.Ads.idsByPath['/41014381/Sourceforge/SF_Mobile_320x50_A'] = 'div-gpt-ad-1512154506943-0'; thisSlot = googletag.defineSlot('/41014381/Sourceforge/SF_ProjectSum_300x250_A',[[300,250],[300,600]],'div-gpt-ad-1394209358855-0') .addService(googletag.pubads()) .setTargeting('oss_tpc',["Data Formats","Formats and Protocols","HTML/XHTML","Software Development"]) .setTargeting('shortname',"html-tidy.mirror") .setTargeting('dc_ref',"https://sourceforge.net/projects/html-tidy.mirror/") .setTargeting('sz',"300x250,300x600") .setTargeting('page_type',"pg_project"); gptadslots.push(thisSlot); SF.Ads.slotsById['div-gpt-ad-1394209358855-0'] = thisSlot; SF.Ads.idsByPath['/41014381/Sourceforge/SF_ProjectSum_300x250_A'] = 'div-gpt-ad-1394209358855-0'; thisSlot = googletag.defineSlot('/41014381/Sourceforge/SF_ProjectSum_300x250_B',[300,250],'div-gpt-ad-1394209358856-0') .addService(googletag.pubads()) .setTargeting('oss_tpc',["Data Formats","Formats and Protocols","HTML/XHTML","Software Development"]) .setTargeting('shortname',"html-tidy.mirror") .setTargeting('dc_ref',"https://sourceforge.net/projects/html-tidy.mirror/") .setTargeting('sz',"300x250") .setTargeting('page_type',"pg_project"); gptadslots.push(thisSlot); SF.Ads.slotsById['div-gpt-ad-1394209358856-0'] = thisSlot; SF.Ads.idsByPath['/41014381/Sourceforge/SF_ProjectSum_300x250_B'] = 'div-gpt-ad-1394209358856-0'; thisSlot = googletag.defineSlot('/41014381/Sourceforge/SF_ProjectSum_300x250_C',[300,250],'div-gpt-ad-1394209358857-0') .addService(googletag.pubads()) .setTargeting('oss_tpc',["Data Formats","Formats and Protocols","HTML/XHTML","Software Development"]) .setTargeting('shortname',"html-tidy.mirror") .setTargeting('dc_ref',"https://sourceforge.net/projects/html-tidy.mirror/") .setTargeting('sz',"300x250") .setTargeting('page_type',"pg_project"); gptadslots.push(thisSlot); SF.Ads.slotsById['div-gpt-ad-1394209358857-0'] = thisSlot; SF.Ads.idsByPath['/41014381/Sourceforge/SF_ProjectSum_300x250_C'] = 'div-gpt-ad-1394209358857-0'; thisSlot = googletag.defineSlot('/41014381/Sourceforge/SF_ProjectSum_728x90_B', [728, 90],'div-gpt-ad-1392148208790-0') .defineSizeMapping( leaderboardInContent ) .addService(googletag.pubads()) .setTargeting('oss_tpc',["Data Formats","Formats and Protocols","HTML/XHTML","Software Development"]) .setTargeting('shortname',"html-tidy.mirror") .setTargeting('dc_ref',"https://sourceforge.net/projects/html-tidy.mirror/") .setTargeting('page_type',"pg_project"); gptadslots.push(thisSlot); SF.Ads.slotsById['div-gpt-ad-1392148208790-0'] = thisSlot; SF.Ads.idsByPath['/41014381/Sourceforge/SF_ProjectSum_728x90_B'] = 'div-gpt-ad-1392148208790-0'; thisSlot = googletag.defineSlot('/41014381/Sourceforge/SF_Mobile_Multi_B',[[300,50],[300,250],[320,50],[320,100]],'div-gpt-ad-1512154653435-0') .addService(googletag.pubads()) .setTargeting('oss_tpc',["Data Formats","Formats and Protocols","HTML/XHTML","Software Development"]) .setTargeting('shortname',"html-tidy.mirror") .setTargeting('dc_ref',"https://sourceforge.net/projects/html-tidy.mirror/") .setTargeting('sz',"300x50,300x250,320x50,320x100") .setTargeting('page_type',"pg_project"); gptadslots.push(thisSlot); SF.Ads.slotsById['div-gpt-ad-1512154653435-0'] = thisSlot; SF.Ads.idsByPath['/41014381/Sourceforge/SF_Mobile_Multi_B'] = 'div-gpt-ad-1512154653435-0'; thisSlot = googletag.defineSlot('/41014381/Sourceforge/SF_ProjectSum_728x90_C', [728, 90],'div-gpt-ad-1491500833666-0') .defineSizeMapping( leaderboardInContent ) .addService(googletag.pubads()) .setTargeting('oss_tpc',["Data Formats","Formats and Protocols","HTML/XHTML","Software Development"]) .setTargeting('shortname',"html-tidy.mirror") .setTargeting('dc_ref',"https://sourceforge.net/projects/html-tidy.mirror/") .setTargeting('page_type',"pg_project"); gptadslots.push(thisSlot); SF.Ads.slotsById['div-gpt-ad-1491500833666-0'] = thisSlot; SF.Ads.idsByPath['/41014381/Sourceforge/SF_ProjectSum_728x90_C'] = 'div-gpt-ad-1491500833666-0'; thisSlot = googletag.defineSlot('/41014381/Sourceforge/SF_Mobile_Multi_C',[[300,50],[300,250],[320,50],[320,100]],'div-gpt-ad-1512154755912-0') .addService(googletag.pubads()) .setTargeting('oss_tpc',["Data Formats","Formats and Protocols","HTML/XHTML","Software Development"]) .setTargeting('shortname',"html-tidy.mirror") .setTargeting('dc_ref',"https://sourceforge.net/projects/html-tidy.mirror/") .setTargeting('sz',"300x50,300x250,320x50,320x100") .setTargeting('page_type',"pg_project"); gptadslots.push(thisSlot); SF.Ads.slotsById['div-gpt-ad-1512154755912-0'] = thisSlot; SF.Ads.idsByPath['/41014381/Sourceforge/SF_Mobile_Multi_C'] = 'div-gpt-ad-1512154755912-0'; thisSlot = googletag.defineSlot('/7346874/SF-300x250',[300,250],'div-gpt-ad-1392148208795-0') .addService(googletag.pubads()) .setTargeting('oss_tpc',["Data Formats","Formats and Protocols","HTML/XHTML","Software Development"]) .setTargeting('shortname',"html-tidy.mirror") .setTargeting('dc_ref',"https://sourceforge.net/projects/html-tidy.mirror/") .setTargeting('sz',"300x250") .setTargeting('page_type',"pg_project"); gptadslots.push(thisSlot); SF.Ads.slotsById['div-gpt-ad-1392148208795-0'] = thisSlot; SF.Ads.idsByPath['/7346874/SF-300x250'] = 'div-gpt-ad-1392148208795-0'; googletag.pubads().enableAsyncRendering(); googletag.pubads().collapseEmptyDivs(); googletag.pubads().enableLazyLoad({fetchMarginPercent: 0,renderMarginPercent: 0,});googletag.pubads().addEventListener('slotOnload', function(event) { SF.Ads.Helpers.getSizeAndSetClass.call(this, event); }); googletag.pubads().addEventListener('slotRenderEnded', function(event) { var unitName = event.slot.getAdUnitPath(); if ( unitName in gptadHandlers ) { for (var i = 0; i < gptadHandlers[unitName].length; i++) { try { SF.Ads.RenderHandlers[gptadHandlers[unitName][i]].call(this, event); } catch (e) { } } } if (event.slot.getResponseInformation()) { SF.Ads.RenderHandlers.decorateSizeDelivered.call(this, event); } else {SF.Ads.RenderHandlers.gotBlank.call(this, event); } if(SF.Ads.scrollFixable) { SF.Ads.scrollFixable.scrollRelocate(); } }); googletag.pubads().addEventListener('slotVisibilityChanged', SF.Ads.visibilityChangedTracker); SF.Ads.setupAdRefresh(); googletag.pubads().addEventListener('impressionViewable', SF.Ads.RenderHandlers.viewabilityInstrumentation); googletag.pubads().addEventListener('slotRenderEnded', SF.Ads.listenerForBlockThis); googletag.enableServices(); if ($.isEmptyObject(SF.Ads.slotsById)) { $('body').addClass("no-ads"); } }); </script> <script> function initPiwik(){ var _paq = window._paq = window._paq || []; _paq.push(['trackPageView', document.title, { dimension1: 'html-tidy.mirror', dimension2: 'pg_project', dimension3: SF.devicePixelRatio, }]); _paq.push(['enableLinkTracking']); (function() { var u="//analytics.slashdotmedia.com/"; _paq.push(['setTrackerUrl', u+'sf.php']); _paq.push(['setSiteId', 39]); // only execute if 'measurement' has been granted bizx.cmp.ifConsent({ purposes: ['measurement'], vendors: 'sdm'}, function() { var interval = 6 * 60 * 60 * 1000; // 6 hrs, expressed in ms var vid_date = new Date(localStorage.getItem('vid_date')); if (new Date() - vid_date >= interval) { var data = {firstparty_id: "62341114-a41e-4b37-9f96-d01c69da8545", do_not_sell: false, is_commercial_page: "False" }; bizx.cmp.ifConsent({ purposes: ['ads'], vendors: 'sdm'}, function() {}, function(){ // no consent (opt-out) data.do_not_sell = true; }, function(){ //finally call api endpoint // push promise to pwik and set it run if pwik is allowed to run based on it's own ifConsent check _paq.push([ function() { data.matomo_id = this.getVisitorId(); data.domain = "sourceforge.net"; $.ajax({ method: 'PUT', url: '/p/sfapi/push_vid', data: JSON.stringify(data) }) .done(function(response){ if(response.result) { localStorage.setItem('vid_date', new Date()); } }) .fail(function(){ // Do nothing on failure }); }]); } ); } }); var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0]; g.type='text/javascript'; g.async=true; g.defer=true; g.src=u+'sf.js'; s.parentNode.insertBefore(g,s); })(); } bizx.cmp.ifConsent({ purposes: ['storage', 'measurement'], vendors: 'sdm' }, initPiwik); </script> <script type="application/ld+json"> { "@context": "http://schema.org", "@type": "WebSite", "name": "SourceForge", "url": "https://sourceforge.net/" } </script> </head> <body id="pg_project" class=" anonymous has-ads sandiego v-sf"> <div id="busy-spinner"></div> <div id="messages"> </div> <div class="off-canvas position-right" id="offCanvas" data-off-canvas> <!-- Menu --> <ul class="header-nav-menulist"> <li class="highlight search"> <form method="get" action="/directory/" class="m-search-form"> <input type="text" placeholder="Search for software or solutions" autocomplete="off" name="q" > <label> <input type="submit" class="bt" value=""> <svg data-name="search" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1216 832q0-185-131.5-316.5t-316.5-131.5-316.5 131.5-131.5 316.5 131.5 316.5 316.5 131.5 316.5-131.5 131.5-316.5zm512 832q0 52-38 90t-90 38q-54 0-90-38l-343-342q-179 124-399 124-143 0-273.5-55.5t-225-150-150-225-55.5-273.5 55.5-273.5 150-225 225-150 273.5-55.5 273.5 55.5 225 150 150 225 55.5 273.5q0 220-124 399l343 343q37 37 37 90z"/></svg> </label> </form> </li> <li class="highlight"><a href="https://sourceforge.net/auth/">Join/Login</a></li> <li><a href="/directory/">Open Source Software</a></li> <li><a href="/software/">Business Software</a></li> <li><a href="/software/vendors/" title="For Vendors">For Vendors</a></li> <li><a href="/blog/" title="Blog">Blog</a></li> <li><a href="/about">About</a></li> <li><a id="header-nav-more" data-toggle="header-nav-more header-nav-more-content" data-toggler=".toggled">More</a></li> <li> <ul id="header-nav-more-content" class="toggled" data-toggler=".toggled"> <li><a href="/articles/">Articles</a></li> <li><a href="/create">Create</a></li> <li><a href="https://sourceforge.net/articles/category/sourceforge-podcast/">SourceForge Podcast</a></li> <li><a href="https://sourceforge.net/p/forge/documentation/Docs%20Home/">Site Documentation</a></li> <li><a href="/user/newsletters">Subscribe to our Newsletter</a></li> <li><a href="/support">Support Request</a></li> </ul> </li> </ul> </div> <div class="off-canvas-content" data-off-canvas-content> <script> SF.linkout_icon = '<svg data-name="sf-linkout-icon" xmlns="http://www.w3.org/2000/svg" x="0px" y="0px" viewBox="0 0 300 300" style="enable-background:new 0 0 300 300;" xml:space="preserve"><polygon class="st0" points="243.2,243.2 56.8,243.2 56.8,56.8 123,56.8 123,9 9,9 9,291 291,291 291,179.4 243.2,179 "/><polygon class="st0" points="128.5,213 155,186.5 176,165.5 206.7,196.3 235.5,132.5 248.9,102.6 290.6,9.8 291,9 290.6,9.2 197.4,51.1 169.1,63.8 103.7,93.3 137,126.5 115.9,147.5 89.5,174 "/></svg>'; </script> <section class="sandiego l-header-nav-top show-for-large"> <div class="row"> <a href="/" title="Home" class="sf-logo"> <img src="//a.fsdn.com/con/images/sandiego/sf-logo-full.svg" alt="SourceForge logo" class="sf-logo-full"/> </a> <nav class="links"> <a href="/user/newsletters" title="Subscribe to our newsletter"><span class="newsletter-icon"> <svg data-name="mmSF_11mail" xmlns="http://www.w3.org/2000/svg" x="0px" y="0px" viewBox="0 0 42 42" enable-background="new 0 0 42 42" xml:space="preserve"><path fill="#FFFFFF" d="M0,6v30h42V6H0z M24.2,21.2c-0.8,0.8-2.3,2-3.2,2c-0.9,0-2.4-1.2-3.2-2L5.8,9.7h30.3L24.2,21.2z M13.7,21l-9.9,9.4V11.6L13.7,21z M15.7,23L15.7,23c0.5,0.5,2.9,2.9,5.3,2.9c2.4,0,4.8-2.4,5.2-2.8l0.1-0.1l9.8,9.4H5.8L15.7,23z M28.3,21l9.9-9.5v18.9L28.3,21z"/></svg></span></a> <a href="/software/vendors/" title="For Vendors">For Vendors</a> <a href="/support" title="Help">Help</a> <a href="/create/" title="Create">Create</a> <a href="/user/registration" title="Join" >Join</a> <a href="https://sourceforge.net/auth/" title="Login">Login</a> </nav> </div> </section> <div class="l-header-nav sticky sandiego l-header-nav-collapse"> <section class="sandiego l-header-nav-top hide-for-large"> <div class="row"> <a href="/" title="Home" class="sf-logo"> <img src="//a.fsdn.com/con/images/sandiego/sf-logo-full.svg" alt="SourceForge logo" class="sf-logo-full"/> </a> <div class="title-bar-right"> <button type="button" aria-label="Toggle Main Menu" class="menu-icon" data-toggle="offCanvas"></button> </div> </div> </section> <section class="sandiego l-header-nav-bottom"> <nav class="row"> <a href="/" title="Home" class="sf-logo"> <img src="//a.fsdn.com/con/images/sandiego/sf-logo-full.svg" alt="SourceForge logo" class="sf-logo-full"/> </a> <div class="links"> <div class="nav-dropdown"> <a href="/directory/" title="Browse">Open Source Software</a> </div> <div class="nav-dropdown"> <a href="/software/">Business Software</a> </div> <div class="nav-dropdown"> <a href="https://sourceforge.net/articles/category/sourceforge-podcast/">SourceForge Podcast</a> </div> <div class="nav-dropdown"> <a>Resources</a> <ul class="nav-dropdown-menu"> <li><a href="/articles/">Articles</a></li> <li><a href="/software/case-studies/">Case Studies</a></li> <li><a href="/blog/">Blog</a></li> </ul> </div> <div class="dev-menu-when-stuck"> Menu <ul class="dev-menu-dropdown header-nav-menulist"> <li><a href="/support">Help</a></li> <li><a href="/create">Create</a></li> <li><a href="/user/registration/" title="Join" >Join</a></li> <li><a href="https://sourceforge.net/auth/" title="Login">Login</a></li> </ul> </div> <div class="search-toggle-when-stuck"> <a class="search-toggle"> <svg data-name="search" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1216 832q0-185-131.5-316.5t-316.5-131.5-316.5 131.5-131.5 316.5 131.5 316.5 316.5 131.5 316.5-131.5 131.5-316.5zm512 832q0 52-38 90t-90 38q-54 0-90-38l-343-342q-179 124-399 124-143 0-273.5-55.5t-225-150-150-225-55.5-273.5 55.5-273.5 150-225 225-150 273.5-55.5 273.5 55.5 225 150 150 225 55.5 273.5q0 220-124 399l343 343q37 37 37 90z"/></svg> </a> </div> </div> <div class="search"> <div class="main-nav-link"> <a href="https://brightdata.com/?utm_source=brand&amp;utm_campaign=brnd-mkt_content_partner_slashdot_banner" rel="nofollow" target="_blank" id="main-nav-badge-link" data-label="BrightData"> <img src="//a.fsdn.com/con/images/sandiego/maxnav.png?1" srcset="//a.fsdn.com/con/images/sandiego/maxnav-2x.png 2x" alt="Bright Data - scale up your web scraping" id="main-nav-image"/> </a> </div> <form method="get" action="/directory/" class="m-search-form"> <div class="typeahead__container"> <div class="typeahead__field"> <div class="typeahead__query"> <input type="text" placeholder="Search for software or solutions" autocomplete="off" name="q" > </div> <label> <input type="submit" class="bt" value=""> <svg data-name="search" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1216 832q0-185-131.5-316.5t-316.5-131.5-316.5 131.5-131.5 316.5 131.5 316.5 316.5 131.5 316.5-131.5 131.5-316.5zm512 832q0 52-38 90t-90 38q-54 0-90-38l-343-342q-179 124-399 124-143 0-273.5-55.5t-225-150-150-225-55.5-273.5 55.5-273.5 150-225 225-150 273.5-55.5 273.5 55.5 225 150 150 225 55.5 273.5q0 220-124 399l343 343q37 37 37 90z"/></svg> </label> </div> </div> </form> </div> </nav> </section> <div id="banner-sterling" class="sterling"> <div id="SF_ProjectSum_728x90_A_wrapped" data-id="div-gpt-ad-1394209358853-0" class="draper visibility_rules v_970_billboard v_728_leaderboard "> </div><script> /*global googletag */ if (SF.initial_breakpoints_visible.leaderboard) { (function(){ var el = document.getElementById('SF_ProjectSum_728x90_A_wrapped'); var newNode = document.createElement('div'); newNode.id = 'div-gpt-ad-1394209358853-0'; el.appendChild(newNode); }()); gptadRenderers['SF_ProjectSum_728x90_A'] = function(){ // jshint ignore:line if (!SF.adblock) { $('#div-gpt-ad-1394209358853-0').parents('.draper').css("min-height", 90 + 13 + 12); // for height of .lbl-ad and padding } googletag.cmd.push(function() { googletag.display('div-gpt-ad-1394209358853-0'); }); }; gptadRenderers['SF_ProjectSum_728x90_A'](); // jshint ignore:line } </script> <div id="SF_Mobile_320x50_A_wrapped" data-id="div-gpt-ad-1512154506943-0" class="draper "> </div><script> /*global googletag */ if (!SF.initial_breakpoints_visible.leaderboard) { (function(){ var el = document.getElementById('SF_Mobile_320x50_A_wrapped'); var newNode = document.createElement('div'); newNode.id = 'div-gpt-ad-1512154506943-0'; el.appendChild(newNode); }()); gptadRenderers['SF_Mobile_320x50_A'] = function(){ // jshint ignore:line if (!SF.adblock) { $('#div-gpt-ad-1512154506943-0').parents('.draper').css("min-height", 50 + 13 + 12); // for height of .lbl-ad and padding } googletag.cmd.push(function() { googletag.display('div-gpt-ad-1512154506943-0'); }); }; gptadRenderers['SF_Mobile_320x50_A'](); // jshint ignore:line } </script> </div> </div> <div class="l-two-column-page"> <div class="l-content-column l-has-sidebar"> <div class="project-body" itemscope itemtype="http://schema.org/SoftwareApplication"> <section class="project-masthead"> <div class="backdrop" style="box-sizing: content-box; padding-bottom: 238px"></div> <div class="content"> <nav id="breadcrumbs" class="breadcrumbs rtl"> <ul itemscope itemtype="http://schema.org/BreadcrumbList"> <li itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"> <a itemprop="item" href="/"><span itemprop="name">Home</span></a> <meta itemprop="position" content="1" /> </li> <li itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"> <a itemprop="item" href="/directory/"><span itemprop="name">Browse Open Source</span></a> <meta itemprop="position" content="2" /> </li> <li itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"> <a itemprop="item" href="/directory/formats-and-protocols/"><span itemprop="name">Formats and Protocols</span></a> <meta itemprop="position" content="3" /> </li><li itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"> <a itemprop="item" href="/directory/data-formats/"><span itemprop="name">Data Formats</span></a> <meta itemprop="position" content="4" /> </li><li itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"> <a itemprop="item" href="/directory/html-xhtml/"><span itemprop="name">HTML/XHTML</span></a> <meta itemprop="position" content="5" /> </li><li class="project" itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><span itemprop="name">Tidy</span><meta itemprop="position" content="6" /> </li> </ul> </nav> <div class="overview"> <div class="project-icon " > <img itemprop="image" alt="Tidy" title="Tidy" src="//a.fsdn.com/allura/mirror/html-tidy/icon?136702139200c2f1a2cbf2aae694c019bfa5104a2e7a63d952bb4cd2de9f2874" /></div> <div class="title "> <h1 itemprop="name">Tidy </h1> <h2 class="as-h3 summary"> The granddaddy of HTML tools, with support for modern standards </h2> </div> </div> <div class="special-messages"> <div class="callout small mirror-notice"> <strong> This is an exact mirror of the Tidy project, hosted at <a href="https://www.html-tidy.org/" rel="nofollow" target="_blank">https://www.html-tidy.org/</a>. SourceForge is not affiliated with Tidy. Tidy is a trademark of HTACG. For more information, see <a href="https://sourceforge.net/mirror/">the SourceForge Open Source Mirror Directory</a>. </strong> </div> </div> <div class="stats "> <div class="rating"> <a href="/projects/html-tidy.mirror/reviews/" class="count" title="Add a review"> Add a Review </a> </div> <div class="as-h2"> <b class="label">Downloads:</b> <a href="/projects/html-tidy.mirror/files/stats/timeline" title="Downloads This Week"> 49 This Week </a> </div> <div class="as-h2"> <b class="label">Last Update:</b> <a href="/mirror/html-tidy/activity/"> <time class="dateUpdated" datetime="2024-01-11">2024-01-11</time> </a> </div> </div> <div class="buttons"> <div class="download-container"> <a href="/projects/html-tidy.mirror/files/latest/download" title="Download tidy-5.8.0-win64.exe from SourceForge - 1.1 MB" class="button download big-text green "><img src="//a.fsdn.com/con/images/sandiego/sf-icon-black.svg" alt="" class="sf-download-icon" /> Download</a> <div class="tip trusted-file" aria-haspopup="true" data-position="left" data-tooltip-class="tooltip" > <svg data-name="shield-check" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M496 128c0 221.282-135.934 344.645-221.539 380.308a48 48 0 0 1-36.923 0C130.495 463.713 16 326.487 16 128a48 48 0 0 1 29.539-44.308l192-80a48 48 0 0 1 36.923 0l192 80A48 48 0 0 1 496 128zM235.313 381.941l184-184c6.248-6.248 6.248-16.379 0-22.627l-22.627-22.627c-6.248-6.248-16.379-6.249-22.628 0L224 302.745l-70.059-70.059c-6.248-6.248-16.379-6.248-22.628 0l-22.627 22.627c-6.248 6.248-6.248 16.379 0 22.627l104 104c6.248 6.25 16.379 6.25 22.627.001z"/></svg> </div> </div> <meta itemprop="fileSize" content="1110492"/><meta itemprop="fileFormat" content="application/x-dosexec; charset=binary"/><div itemprop="offers" itemscope itemtype="http://schema.org/Offer" class="hide"> <meta itemprop="price" content="0"/> <meta itemprop="priceCurrency" content="USD" /> <link itemprop="availability" href="http://schema.org/InStock" /> </div> <a class="button default" data-open="psp-newsletter-modal">Get Updates</a> <div class="psp_newsletter_subscribe reveal" data-reveal id="psp-newsletter-modal" data-v-offset="0" data-ajax-url="/projects/html-tidy.mirror/get_updates?source=PSP"> </div> <a id="share-project-button" class="button default" href="#">Share This</a> <div class="social-sharing-buttons invisible hide"> <a rel=nofollow class="social-media-icon twitter" href="https://twitter.com/share?url=https://sourceforge.net/projects/html-tidy.mirror/&amp;text=Download%20Tidy%20on%20SourceForge%20for%20free%21%20The%20granddaddy%20of%20HTML%20tools%2C%20with%20support%20for%20modern%20standards" title="Share Tidy on SourceForge on Twitter"> <svg data-name="twitter" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1684 408q-67 98-162 167 1 14 1 42 0 130-38 259.5t-115.5 248.5-184.5 210.5-258 146-323 54.5q-271 0-496-145 35 4 78 4 225 0 401-138-105-2-188-64.5t-114-159.5q33 5 61 5 43 0 85-11-112-23-185.5-111.5t-73.5-205.5v-4q68 38 146 41-66-44-105-115t-39-154q0-88 44-163 121 149 294.5 238.5t371.5 99.5q-8-38-8-74 0-134 94.5-228.5t228.5-94.5q140 0 236 102 109-21 205-78-37 115-142 178 93-10 186-50z"/></svg></a> <a rel=nofollow class="social-media-icon facebook" href="https://www.facebook.com/sharer/sharer.php?u=https://sourceforge.net/projects/html-tidy.mirror/&title=Tidy%20on%20SourceForge" title="Share Tidy on SourceForge on facebook"> <svg data-name="facebook" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1343 12v264h-157q-86 0-116 36t-30 108v189h293l-39 296h-254v759h-306v-759h-255v-296h255v-218q0-186 104-288.5t277-102.5q147 0 228 12z"/></svg></a> <a rel=nofollow class="social-media-icon linkedin" href="https://www.linkedin.com/shareArticle?mini=true&url=https://sourceforge.net/projects/html-tidy.mirror/&title=Tidy%20on%20SourceForge&source=SourceForge.net" title="Share Tidy on SourceForge on LinkedIn"> <svg data-name="linkedin" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M477 625v991h-330v-991h330zm21-306q1 73-50.5 122t-135.5 49h-2q-82 0-132-49t-50-122q0-74 51.5-122.5t134.5-48.5 133 48.5 51 122.5zm1166 729v568h-329v-530q0-105-40.5-164.5t-126.5-59.5q-63 0-105.5 34.5t-63.5 85.5q-11 30-11 81v553h-329q2-399 2-647t-1-296l-1-48h329v144h-2q20-32 41-56t56.5-52 87-43.5 114.5-15.5q171 0 275 113.5t104 332.5z"/></svg></a> </div> </div> <div class="platforms"> <span><meta itemprop="operatingSystem" content="Linux"/>Linux</span> <span><meta itemprop="operatingSystem" content="Mac"/>Mac</span> <span><meta itemprop="operatingSystem" content="Windows"/>Windows</span> </div> <div class="badges"> </div> </div> </section> <div id="top_nav"><div id="top_nav_admin"> <ul class="dropdown"> <li class="selected"> <a href="/projects/html-tidy.mirror/" > <span>Summary</span></a> </li> <li > <a href="/projects/html-tidy.mirror/files/" > <span>Files</span></a> </li> <li > <a href="/projects/html-tidy.mirror/reviews/" > <span>Reviews</span></a> </li> </ul> </div></div> <article class="main-content"> <section class="row c-description" id="section-description"> <div id="about" class="small-12 columns"> <p itemprop="description" class="description">Tidy is a console application for macOS, Linux, Windows, UNIX, and more. It corrects and cleans up HTML and XML documents by fixing markup errors and upgrading legacy code to modern standards.<br> <br> libtidy is a C static and dynamic library that developers can integrate into their applications in order to bring all of Tidy’s power to your favorite tools. libtidy is used today in desktop applications, web servers, and more.<br> <br> Tidy tidies HTML and XML. It can tidy your documents by itself, and developers can easily integrate its features into even more powerful tools.<br> <br> Thanks for the efforts of HTACG and prominent contributors, HTML Tidy has a whole new heartbeat and a whole new life.</p> </div> </section> <div class="m-project-activity columns small-12 psp-section"> <div class="heading"> <h3>Project Activity</h3> <div> <a class="button yellow icon-only follow-action-disabled show-for-medium" href="https://sourceforge.net/auth/?return_to=%2Fprojects%2Fhtml-tidy.mirror%2F" title="Follow Tidy - Requires login" rel="nofollow" > <svg data-name="sf_star_grey" xmlns="http://www.w3.org/2000/svg" x="0px" y="0px" viewBox="0 0 300 285.8" style="enable-background:new 0 0 300 285.8;" xml:space="preserve"><polygon class="st0" fill="#CCCCCB" points="150,0 185.4,109.2 300,109.2 207.3,176.6 242.7,285.8 150,218.3 57.3,285.8 92.7,176.6 0,109.2 114.6,109.2 "/></svg></a> <a class="button blue icon-only show-for-medium" href="/mirror/html-tidy/activity/feed" title="RSS" rel="nofollow"> <svg data-name="feed" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1408.1818 1408" > <path d="m 384,1216 q 0,80 -56,136 -56,56 -136,56 -80,0 -136,-56 -56,-56 -56,-136 0,-80 56,-136 56,-56 136,-56 80,0 136,56 56,56 56,136 z m 512,123 q 2,28 -17,48 -18,21 -47,21 l -135,0 q -25,0 -43,-16.5 Q 636,1375 634,1350 612,1121 449.5,958.5 287,796 58,774 33,772 16.5,754 0,736 0,711 L 0,576 q 0,-29 21,-47 17,-17 43,-17 l 5,0 q 160,13 306,80.5 146,67.5 259,181.5 114,113 181.5,259 67.5,146 80.5,306 z m 512,2 q 2,27 -18,47 -18,20 -46,20 l -143,0 q -26,0 -44.5,-17.5 Q 1138,1373 1137,1348 1125,1133 1036,939.5 947,746 804.5,603.5 662,461 468.5,372 275,283 60,270 35,269 17.5,250.5 0,232 0,207 L 0,64 Q 0,36 20,18 38,0 64,0 l 3,0 Q 329,13 568.5,120 808,227 994,414 q 187,186 294,425.5 107,239.5 120,501.5 z" /></svg></a> </div> </div> <div id="project-activity"> <div class="space--placeholder" style="height: 315px"></div> </div> <p class="all-activities"><a href="/mirror/html-tidy/activity/">See All Activity &gt;</a></p> </div> <script type="text/x-handlebars-template" id="project-activity-template"> <ul class="list-of-activities"> {{#each timeline}} <li class="item"> <time datetime="{{ iso8601date this.published }}" title="{{ readable_date this.published }}">{{ ago this.published }}</time> <div> {{#ifTagged "release"}} {{ cap this.verb }} {{else}} {{ icon this.actor.activity_extras.icon_url }} {{ activity_obj this.actor }} {{ this.verb }} {{/ifTagged}} {{ activity_obj this.obj }} {{#if this.target.activity_name}} on {{ activity_obj this.target }}{{/if}} </div> <div class="summary"> {{ this.obj.activity_extras.summary }} </div> </li> {{/each}} </ul> </script> <section class="row psp-section collapsible-section"> <div class="small-12 medium-5 columns"> <h3>Categories</h3><a href="/directory/html-xhtml/"><span itemprop="applicationCategory">HTML/XHTML</span></a>, <a href="/directory/software-development/"><span itemprop="applicationCategory">Software Development</span></a></div> <div class="medium-5 small-12 columns"> </div> </section> <section class="row psp-section collapsible-section"> <div class="small-12 columns"> <h3>Follow Tidy</h3> <p> <a id="homepage" class="pspbtn" href="https://www.html-tidy.org/" title="Tidy Web Site" rel="nofollow" target="_blank">Tidy Web Site</a> </p> </div> </section> <div class="sterling"> <div id="SF_ProjectSum_728x90_B_wrapped" data-id="div-gpt-ad-1392148208790-0" class="draper visibility_rules v_970_xlarge v_728_leaderboard "> </div><script> /*global googletag */ if (SF.initial_breakpoints_visible.leaderboard) { (function(){ var el = document.getElementById('SF_ProjectSum_728x90_B_wrapped'); var newNode = document.createElement('div'); newNode.id = 'div-gpt-ad-1392148208790-0'; el.appendChild(newNode); }()); gptadRenderers['SF_ProjectSum_728x90_B'] = function(){ // jshint ignore:line googletag.cmd.push(function() { googletag.display('div-gpt-ad-1392148208790-0'); }); }; gptadRenderers['SF_ProjectSum_728x90_B'](); // jshint ignore:line } </script> <div id="SF_Mobile_Multi_B_wrapped" data-id="div-gpt-ad-1512154653435-0" class="draper multisize "> </div><script> /*global googletag */ if (!SF.initial_breakpoints_visible.leaderboard) { (function(){ var el = document.getElementById('SF_Mobile_Multi_B_wrapped'); var newNode = document.createElement('div'); newNode.id = 'div-gpt-ad-1512154653435-0'; el.appendChild(newNode); }()); gptadRenderers['SF_Mobile_Multi_B'] = function(){ // jshint ignore:line googletag.cmd.push(function() { googletag.display('div-gpt-ad-1512154653435-0'); }); }; gptadRenderers['SF_Mobile_Multi_B'](); // jshint ignore:line } </script> </div> <script> if (!SF.wireOutboundZoneTrackingComplete) { $(SF.wireOutboundZoneTracking); $('body').append('<iframe src="https://c.sf-syn.com/conversion_outbound_tracker/sf" id="frame-zone-outbound" style="display: none;"></iframe>'); SF.wireOutboundZoneTrackingComplete = true; } </script> <section id="nels" class="small-12 columns"> <div class="as-header"> <div class="as-h2"> You Might Also Like</div> </div> <div id="SF_ProjectSum_GEL_A_wrapped" data-id="div-gpt-ad-1715706427041-0" class="draper "> </div><script> /*global googletag */ if (true) { (function(){ var el = document.getElementById('SF_ProjectSum_GEL_A_wrapped'); var newNode = document.createElement('div'); newNode.id = 'div-gpt-ad-1715706427041-0'; el.appendChild(newNode); }()); gptadRenderers['SF_ProjectSum_GEL_A'] = function(){ // jshint ignore:line if (!SF.adblock) { $('#div-gpt-ad-1715706427041-0').parents('.draper').css("min-height", 185 + 13 + 12); // for height of .lbl-ad and padding } googletag.cmd.push(function() { googletag.display('div-gpt-ad-1715706427041-0'); }); }; gptadRenderers['SF_ProjectSum_GEL_A'](); // jshint ignore:line } </script> <div class="nel standard trunc-eligible nel-hidden-0" data-id="17229" data-cid="13111"> <span id="886df579-c479-4e87-8473-d25bdb552352"></span> <script> /* globals bizx */ bizx.cmp.trackingPixel('publisher', ['storage', 'measurement'], '/directory/tp3/?b=67939&amp;c=13111&amp;z=65311&amp;cb=7e6f3b632d', "Build with generative AI, deploy apps fast, and analyze data in seconds\u0026mdash;all with Google-grade security.", '886df579-c479-4e87-8473-d25bdb552352'); </script> <div class="application-image thumbnail" data-dest="https://sourceforge.net/software/link?oaparams=2__bannerid=67939__zoneid=65311__cb=7e6f3b632d__oadest=https%3A%2F%2Fcloud.google.com%3Futm_source%3Dsourceforge%26utm_medium%3Dreferral%26utm_campaign%3Dsourceforge_paid_subscription%26utm_content%3DGCP_General" data-newtab="true" data-target="_blank" rel="nofollow"> <img class="main-image" src="//a.fsdn.com/con/app/nel_img/17229" alt="Build with generative AI, deploy apps fast, and analyze data in seconds&amp;mdash;all with Google-grade security. Icon"> </div> <div class="wrapper"> <div class="heading"> <div class="heading-main"> <span data-dest="https://sourceforge.net/software/link?oaparams=2__bannerid=67939__zoneid=65311__cb=7e6f3b632d__oadest=https%3A%2F%2Fcloud.google.com%3Futm_source%3Dsourceforge%26utm_medium%3Dreferral%26utm_campaign%3Dsourceforge_paid_subscription%26utm_content%3DGCP_General" data-newtab="true" data-target="_blank" rel="nofollow" title="Find out more about Build with generative AI, deploy apps fast, and analyze data in seconds&amp;mdash;all with Google-grade security.">Build with generative AI, deploy apps fast, and analyze data in seconds&amp;mdash;all with Google-grade security.</span> <p class="teaser">Access over 150 cutting-edge products, plus industry-defining AI</p> </div> </div> <div class="tiles"> <div class="tile"> <div class="description "> <div class="description-inner"> Google Cloud is a cloud-based service that allows you to create anything from simple websites to complex applications for businesses of all sizes. </div> </div> </div> </div> </div> <div class="download standard"> <div class="button green wide sfdl sfdl-lite" data-target="_blank" data-newtab="true" data-dest="https://sourceforge.net/software/link?oaparams=2__bannerid=67939__zoneid=65311__cb=7e6f3b632d__oadest=https%3A%2F%2Fcloud.google.com%3Futm_source%3Dsourceforge%26utm_medium%3Dreferral%26utm_campaign%3Dsourceforge_paid_subscription%26utm_content%3DGCP_General" data-zone="65029" data-slug="Google-Cloud-Platform" >Try it free</div> </div> </div> <script> if (SF.adblock){ var nel = document.querySelector('.nel-hidden-0'); nel.classList.remove('nel-hidden-0'); } </script> </section> <section class="row m-rate-project"> <div class="small-12 columns"> <div class="as-h3">Rate This Project</div><a class="rate-this-project" href="/projects/html-tidy.mirror/reviews/new" rel="nofollow">Login To Rate This Project</a> </div> </section> <section class="row reviews-section psp-section collapsible-section hr-bottom"> <div class="small-12 columns"> <section id="reviews" class="m-reviews-list" data-name="Tidy" data-endpoint="/projects/html-tidy.mirror/reviews"> <section class="heading"> <h2 class="as-h3">User Reviews</h2> <div class="info-no-reviews"> Be the first to <a href="/projects/html-tidy.mirror/reviews/new" rel="nofollow">post a review</a> of Tidy! </div> </section> <section class="content"> </section> </section> </div> </section> <section class="row m-section-additional-details psp-section collapsible-section"> <div class="small-12 columns"> <h3>Additional Project Details</h3> <section class="project-info"> <h4>Operating Systems</h4><a href="/directory/linux/">Linux</a>, <a href="/directory/mac/">Mac</a>, <a href="/directory/windows/">Windows</a></section> <section class="project-info"> <h4>Languages</h4>English</section> <section class="project-info"> <h4>Intended Audience</h4>Developers</section> <section class="project-info"> <h4>Programming Language</h4><a href="/directory/c/">C</a></section> <section class="project-info"> <h4>Related Categories</h4> <a href="/directory/html/c/"><span itemprop="relatedCategory">C HTML XHTML</span></a>, <a href="/directory/software-development/c/"><span itemprop="relatedCategory">C Software Development Software</span></a> </section> <section class="project-info"> <div class="as-header"> <h4>Registered</h4> </div> <section class="content"> 2024-01-11 </section> </section> </div> </section> <aside class="m-wide-widget m-wide-projects-widget "> <div class="as-header"> Similar Business Software </div> <div class="body"> <ul> <li> <div class="project-icon " > <img alt="Nutrient SDK" title="Nutrient SDK" src="//a.fsdn.com/allura/s/pspdfkit-sdk/icon?4fe4fa7c8cf5fe25a18932b8e5a85d13af7ad448478ad9c73569c75c62cd6059?&amp;w=48" loading="lazy"/></div> <div class="project-info "> <div class="result-heading-texts"> <a href="/software/product/Nutrient-SDK/" title="Find out more about Nutrient SDK"> <strong>Nutrient SDK</strong> </a> </div> <div class="summary"> <span>Nutrient is the comprehensive solution for all your PDF needs, offering tools that effortlessly integrate and operate PDF functionality across any platform. 1. SDK PRODUCTS Integrate robust PDF functionality into iOS, Android, Windows, web (JavaScript), or any cross-platform technology,...</span> </div> </div> <div> <a href="/software/product/Nutrient-SDK/" title="Find out more about Nutrient SDK" class="button blue hollow see-project">See Software</a> </div> </li> <li> <div class="project-icon " > <img alt="Adobe PDF Library SDK" title="Adobe PDF Library SDK" src="//a.fsdn.com/allura/s/adobe-pdf-library/icon?50e9b1dad747bf5e126b48a6a248a3e94128d8fd3165f4485a1ac309b6c2b583?&amp;w=48" loading="lazy"/></div> <div class="project-info "> <div class="result-heading-texts"> <a href="/software/product/Adobe-PDF-Library/" title="Find out more about Adobe PDF Library SDK"> <strong>Adobe PDF Library SDK</strong> </a> </div> <div class="summary"> <span>Shorten development times &amp; get to market faster with Adobe PDF Library. Global OEMs, SaaS and enterprise end-users rely on Adobe PDF Library to automate the creation, editing and management of PDFs. An Adobe partner, our SDK uses the same source code as Acrobat for stability, reliability...</span> </div> </div> <div> <a href="/software/product/Adobe-PDF-Library/" title="Find out more about Adobe PDF Library SDK" class="button blue hollow see-project">See Software</a> </div> </li> <li> <div class="project-icon " > <img alt="CSS" title="CSS" src="//a.fsdn.com/allura/s/css-lang/icon?ed23375076412464927816202464d849a015c2ee97ca0845df3f4a26db8c5b21?&amp;w=48" loading="lazy"/></div> <div class="project-info "> <div class="result-heading-texts"> <a href="/software/product/CSS/" title="Find out more about CSS"> <strong>CSS</strong> </a> </div> <div class="summary"> <span>CSS, short for Cascading Style Sheets, is a style sheet language used by web developers to structure the HTML and other elements of a website. CSS is one of the most widely used languages on the web. For style sheets to work, it is important that your markup be free of errors. A convenient way...</span> </div> </div> <div> <a href="/software/product/CSS/" title="Find out more about CSS" class="button blue hollow see-project">See Software</a> </div> </li> </ul> </div> </aside> <section class="row "> <div class="small-12 columns"> <a id="report-inappropriate" href="/projects/html-tidy.mirror/report_inappropriate" rel="nofollow">Report inappropriate content</a> </div> </section> </article> <div class="sterling"> <div id="SF_ProjectSum_728x90_C_wrapped" data-id="div-gpt-ad-1491500833666-0" class="draper visibility_rules v_970_xlarge v_728_leaderboard "> </div><script> /*global googletag */ if (SF.initial_breakpoints_visible.leaderboard) { (function(){ var el = document.getElementById('SF_ProjectSum_728x90_C_wrapped'); var newNode = document.createElement('div'); newNode.id = 'div-gpt-ad-1491500833666-0'; el.appendChild(newNode); }()); gptadRenderers['SF_ProjectSum_728x90_C'] = function(){ // jshint ignore:line googletag.cmd.push(function() { googletag.display('div-gpt-ad-1491500833666-0'); }); }; gptadRenderers['SF_ProjectSum_728x90_C'](); // jshint ignore:line } </script> </div> </div> </div> <div class="l-gutter"> </div> <div class="l-side-column"> <div class="scroll-fixable"> <section class="sterling"> <div id="SF_ProjectSum_300x250_A_wrapped" data-id="div-gpt-ad-1394209358855-0" class="draper multisize visibility_rules v_300_large "> </div><script> /*global googletag */ if (SF.initial_breakpoints_visible.large) { (function(){ var el = document.getElementById('SF_ProjectSum_300x250_A_wrapped'); var newNode = document.createElement('div'); newNode.id = 'div-gpt-ad-1394209358855-0'; el.appendChild(newNode); }()); gptadRenderers['SF_ProjectSum_300x250_A'] = function(){ // jshint ignore:line if (!SF.adblock) { $('#div-gpt-ad-1394209358855-0').parents('.draper').css("min-height", 250 + 13 + 12); // for height of .lbl-ad and padding } googletag.cmd.push(function() { googletag.display('div-gpt-ad-1394209358855-0'); }); }; gptadRenderers['SF_ProjectSum_300x250_A'](); // jshint ignore:line } </script> <div id="SF_ProjectSum_300x250_B_wrapped" data-id="div-gpt-ad-1394209358856-0" class="draper medrec visibility_rules v_300_large "> </div><script> /*global googletag */ if (SF.initial_breakpoints_visible.large) { (function(){ var el = document.getElementById('SF_ProjectSum_300x250_B_wrapped'); var newNode = document.createElement('div'); newNode.id = 'div-gpt-ad-1394209358856-0'; el.appendChild(newNode); }()); gptadRenderers['SF_ProjectSum_300x250_B'] = function(){ // jshint ignore:line if (!SF.adblock) { $('#div-gpt-ad-1394209358856-0').parents('.draper').css("min-height", 250 + 13 + 12); // for height of .lbl-ad and padding } googletag.cmd.push(function() { googletag.display('div-gpt-ad-1394209358856-0'); }); }; gptadRenderers['SF_ProjectSum_300x250_B'](); // jshint ignore:line } </script> </section> <aside class="m-sidebar-widget m-project-list"> <div class="as-header">Recommended Projects</div> <div class="body"> <ul > <li class="item"> <a href="/projects/a-fluent-builder-org-ty.mirror/" title="A Fluent Builder For Schema.org Types"> <div class="project-icon " > <img alt="A Fluent Builder For Schema.org Types" title="A Fluent Builder For Schema.org Types" src="//a.fsdn.com/allura/mirror/a-fluent-builder-org-ty/icon?0d7206ae0fa80e84c35781bce9aad6ebe5efca482377e07e2cc3fa63bb3ff7f9?&amp;w=48" srcset="//a.fsdn.com/allura/mirror/a-fluent-builder-org-ty/icon?0d7206ae0fa80e84c35781bce9aad6ebe5efca482377e07e2cc3fa63bb3ff7f9?&amp;w=72 1.5x , //a.fsdn.com/allura/mirror/a-fluent-builder-org-ty/icon?0d7206ae0fa80e84c35781bce9aad6ebe5efca482377e07e2cc3fa63bb3ff7f9?&amp;w=96 2x" loading="lazy"/></div> </a> <div class="pinfo-content recommended"> <a class="project-name" href="/projects/a-fluent-builder-org-ty.mirror/" title="Learn more about A Fluent Builder For Schema.org Types ">A Fluent Builder For Schema.org Types</a> <div class="summary"> A fluent builder Schema.org types and ld+json generator </div> </div> </li> <li class="item"> <a href="/projects/desmume/" title="DeSmuME: Nintendo DS emulator"> <div class="project-icon " > <img alt="DeSmuME: Nintendo DS emulator" title="DeSmuME: Nintendo DS emulator" src="//a.fsdn.com/allura/p/desmume/icon?1513717481?&amp;w=48" srcset="//a.fsdn.com/allura/p/desmume/icon?1513717481?&amp;w=72 1.5x , //a.fsdn.com/allura/p/desmume/icon?1513717481?&amp;w=96 2x" loading="lazy"/></div> </a> <div class="pinfo-content recommended"> <a class="project-name" href="/projects/desmume/" title="Learn more about DeSmuME: Nintendo DS emulator ">DeSmuME: Nintendo DS emulator</a> <div class="summary"> DeSmuME is a Nintendo DS emulator </div> </div> </li> <li class="item"> <a href="/projects/keepass/" title="KeePass"> <div class="project-icon " > <img alt="KeePass" title="KeePass" src="//a.fsdn.com/allura/p/keepass/icon?1678643918?&amp;w=48" srcset="//a.fsdn.com/allura/p/keepass/icon?1678643918?&amp;w=72 1.5x , //a.fsdn.com/allura/p/keepass/icon?1678643918?&amp;w=96 2x" loading="lazy"/></div> </a> <div class="pinfo-content recommended"> <a class="project-name" href="/projects/keepass/" title="Learn more about KeePass ">KeePass</a> <div class="summary"> A lightweight and easy-to-use password manager </div> </div> </li> <li class="item"> <a href="/projects/sevenzip/" title="7-Zip"> <div class="project-icon " > <img alt="7-Zip" title="7-Zip" src="//a.fsdn.com/allura/p/sevenzip/icon?1715850074?&amp;w=48" srcset="//a.fsdn.com/allura/p/sevenzip/icon?1715850074?&amp;w=72 1.5x , //a.fsdn.com/allura/p/sevenzip/icon?1715850074?&amp;w=96 2x" loading="lazy"/></div> </a> <div class="pinfo-content recommended"> <a class="project-name" href="/projects/sevenzip/" title="Learn more about 7-Zip ">7-Zip</a> <div class="summary"> A free file archiver for extremely high compression </div> </div> </li> <li class="item"> <a href="/projects/openofficeorg.mirror/" title="Apache OpenOffice"> <div class="project-icon " > <img alt="Apache OpenOffice" title="Apache OpenOffice" src="//a.fsdn.com/allura/mirror/openofficeorg/icon?1703330040?&amp;w=48" srcset="//a.fsdn.com/allura/mirror/openofficeorg/icon?1703330040?&amp;w=72 1.5x " loading="lazy"/></div> </a> <div class="pinfo-content recommended"> <a class="project-name" href="/projects/openofficeorg.mirror/" title="Learn more about Apache OpenOffice ">Apache OpenOffice</a> <div class="summary"> The free and Open Source productivity suite </div> </div> </li> </ul> </div> </aside> <section class="sterling"> <div id="SF_ProjectSum_300x250_C_wrapped" data-id="div-gpt-ad-1394209358857-0" class="draper medrec visibility_rules v_300_large "> </div><script> /*global googletag */ if (SF.initial_breakpoints_visible.large) { (function(){ var el = document.getElementById('SF_ProjectSum_300x250_C_wrapped'); var newNode = document.createElement('div'); newNode.id = 'div-gpt-ad-1394209358857-0'; el.appendChild(newNode); }()); gptadRenderers['SF_ProjectSum_300x250_C'] = function(){ // jshint ignore:line googletag.cmd.push(function() { googletag.display('div-gpt-ad-1394209358857-0'); }); }; gptadRenderers['SF_ProjectSum_300x250_C'](); // jshint ignore:line } </script> </section> <aside class="m-sidebar-widget m-project-related-keywords"> <div class="as-header">Top Searches</div> <div class="body"> <ul> <li class="item"> <a href="/directory/?q=tidy">tidy</a> </li> <li class="item"> <a href="/directory/?q=tidy%2B%2B">tidy++</a> </li> <li class="item"> <a href="/directory/?q=htmltidy">htmltidy</a> </li> <li class="item"> <a href="/directory/?q=data+formats+html%2Fxhtml+tidy">data formats html/xhtml tidy</a> </li> </ul> </div> </aside> <aside class="m-sidebar-widget"> <div class="as-header">Related Business Categories</div> <div class="body"> <ul> <li class="item"> <a href="/software/html-editors/">HTML Editors</a> </li> <li class="item"> <a href="/software/application-development/">Application Development</a> </li> </ul> </div> </aside> </div> <script> if (!SF.adblock && SF.initial_breakpoints_visible.large) { bizx.cmp.ifConsent({ purposes: 'all', vendors: 'google-ads'}, function() { SF.Ads.scrollFixable = new SF.ScrollFixable($('.scroll-fixable').eq(0), {"adjustHorizontal":false,"avoidElement":".l-header-nav, .l-header-nav-bottom","watchAvoidStickiness":true}); if (SF.Ads.acceptable_ads_active){ SF.Ads.scrollFixable.disable(); } }); } </script> <div class="sterling"> <div id="SF_Mobile_Multi_C_wrapped" data-id="div-gpt-ad-1512154755912-0" class="draper multisize "> </div><script> /*global googletag */ if (!SF.initial_breakpoints_visible.leaderboard) { (function(){ var el = document.getElementById('SF_Mobile_Multi_C_wrapped'); var newNode = document.createElement('div'); newNode.id = 'div-gpt-ad-1512154755912-0'; el.appendChild(newNode); }()); gptadRenderers['SF_Mobile_Multi_C'] = function(){ // jshint ignore:line googletag.cmd.push(function() { googletag.display('div-gpt-ad-1512154755912-0'); }); }; gptadRenderers['SF_Mobile_Multi_C'](); // jshint ignore:line } </script> </div> </div> </div> <footer class="sandiego"> <div class="as-row"> <div class="footer-wrapper"> <nav aria-label="Site Links" role="navigation"> <section> <div class="as-h2">SourceForge</div> <ul> <li><a href="/create/" title="Create a Project">Create a Project</a></li> <li><a href="/directory/" title="Open Source Software Directory">Open Source Software</a></li> <li><a href="/software/" title="Business Software Directory">Business Software</a></li> <li><a href="/top" title="Top Open Source Projects">Top Downloaded Projects</a></li> </ul> </section> </nav> <nav aria-label="Company Links" role="navigation"> <section> <div class="as-h2">Company</div> <ul> <li><a href="/about">About</a></li> <li><a href="/about/leadership" title="Open Source Software Directory">Team</a></li> <li class="h-card"> <address> <span class="p-name p-org">SourceForge Headquarters</span><br> <span class="p-street-address">225 Broadway Suite 1600</span><br> <span class="p-locality">San Diego, CA <span class="p-postal-code">92101</span></span><br> <span class="p-tel">+1 (858) 454-5900</span><br> </address> </li> <li id="social"> <span></span> <a href="https://twitter.com/sourceforge" class="twitter" rel="nofollow" target="_blank" title="SourceForge on X"> <svg class="vertical-icon-fix" data-name="twitter" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1684 408q-67 98-162 167 1 14 1 42 0 130-38 259.5t-115.5 248.5-184.5 210.5-258 146-323 54.5q-271 0-496-145 35 4 78 4 225 0 401-138-105-2-188-64.5t-114-159.5q33 5 61 5 43 0 85-11-112-23-185.5-111.5t-73.5-205.5v-4q68 38 146 41-66-44-105-115t-39-154q0-88 44-163 121 149 294.5 238.5t371.5 99.5q-8-38-8-74 0-134 94.5-228.5t228.5-94.5q140 0 236 102 109-21 205-78-37 115-142 178 93-10 186-50z"/></svg></a> <a href="https://fosstodon.org/@sourceforge" rel="me nofollow" target="_blank" title="SourceForge on Mastodon"> <svg class="vertical-icon-fix" data-name="mastodon" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path d="M433 179.11c0-97.2-63.71-125.7-63.71-125.7-62.52-28.7-228.56-28.4-290.48 0 0 0-63.72 28.5-63.72 125.7 0 115.7-6.6 259.4 105.63 289.1 40.51 10.7 75.32 13 103.33 11.4 50.81-2.8 79.32-18.1 79.32-18.1l-1.7-36.9s-36.31 11.4-77.12 10.1c-40.41-1.4-83-4.4-89.63-54a102.54 102.54 0 0 1-.9-13.9c85.63 20.9 158.65 9.1 178.75 6.7 56.12-6.7 105-41.3 111.23-72.9 9.8-49.8 9-121.5 9-121.5zm-75.12 125.2h-46.63v-114.2c0-49.7-64-51.6-64 6.9v62.5h-46.33V197c0-58.5-64-56.6-64-6.9v114.2H90.19c0-122.1-5.2-147.9 18.41-175 25.9-28.9 79.82-30.8 103.83 6.1l11.6 19.5 11.6-19.5c24.11-37.1 78.12-34.8 103.83-6.1 23.71 27.3 18.4 53 18.4 175z"/></svg></a> <a href="https://www.facebook.com/sourceforgenet/" class="facebook" rel="nofollow" target="_blank" title="SourceForge on Facebook"> <svg data-name="facebook" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1343 12v264h-157q-86 0-116 36t-30 108v189h293l-39 296h-254v759h-306v-759h-255v-296h255v-218q0-186 104-288.5t277-102.5q147 0 228 12z"/></svg></a> <a href="https://www.linkedin.com/company/sourceforge.net" class="linkedin" rel="nofollow" target="_blank" title="SourceForge on LinkedIn"> <svg data-name="linkedin" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M477 625v991h-330v-991h330zm21-306q1 73-50.5 122t-135.5 49h-2q-82 0-132-49t-50-122q0-74 51.5-122.5t134.5-48.5 133 48.5 51 122.5zm1166 729v568h-329v-530q0-105-40.5-164.5t-126.5-59.5q-63 0-105.5 34.5t-63.5 85.5q-11 30-11 81v553h-329q2-399 2-647t-1-296l-1-48h329v144h-2q20-32 41-56t56.5-52 87-43.5 114.5-15.5q171 0 275 113.5t104 332.5z"/></svg></a> <a href="/user/newsletters" rel=nofollow class="newsletter" title="Subscribe to our newsletter"> <svg class="vertical-icon-fix" data-name="mmSF_11mail" xmlns="http://www.w3.org/2000/svg" x="0px" y="0px" viewBox="0 0 42 42" enable-background="new 0 0 42 42" xml:space="preserve"><path fill="#FFFFFF" d="M0,6v30h42V6H0z M24.2,21.2c-0.8,0.8-2.3,2-3.2,2c-0.9,0-2.4-1.2-3.2-2L5.8,9.7h30.3L24.2,21.2z M13.7,21l-9.9,9.4V11.6L13.7,21z M15.7,23L15.7,23c0.5,0.5,2.9,2.9,5.3,2.9c2.4,0,4.8-2.4,5.2-2.8l0.1-0.1l9.8,9.4H5.8L15.7,23z M28.3,21l9.9-9.5v18.9L28.3,21z"/></svg></a> <span></span> </li> </ul> </section> </nav> <nav aria-label="Resources Links" role="navigation"> <section> <div class="as-h2">Resources</div> <ul> <li><a href="/support" title="Support Section">Support</a></li> <li><a href="/p/forge/documentation/Docs%20Home/" title="Site Documentation">Site Documentation</a></li> <li><a href="https://fosstodon.org/@sourceforgestatus" title="Site Status" rel="me nofollow">Site Status</a></li> <li><a href="/reviews" title="Reviews" rel="me nofollow">SourceForge Reviews</a></li> </ul> </section> </nav> <section class="footer-logo"> <a href="/" title="Home" class="sf-logo"> <img src="//a.fsdn.com/con/images/sandiego/sf-logo-full.svg" alt="SourceForge logo" class="sf-logo-full"/> </a> </section> </div> </div> <section class="l-nav-bottom"> <nav class="row"> <div class="columns small-12 large-6 copyright-notice"> &copy; 2024 Slashdot Media. All Rights Reserved. </div> <div class="columns large-6 links links-right"> <a href="https://slashdotmedia.com/terms-of-use" target="_blank" title="Terms" rel="nofollow">Terms</a> <a href="https://slashdotmedia.com/privacy-statement/" target="_blank" title="Privacy" rel="nofollow">Privacy</a> <a href="https://slashdotmedia.com/opt-out-choices" target="_blank" title="Opt Out" rel="nofollow">Opt Out</a> <a href="https://slashdotmedia.com/contact/" target="_blank" title="Advertise" rel="nofollow">Advertise</a> </div> </nav> </section> </footer> </div> <script src="//a.fsdn.com/con/js/min/sf.sandiego-base.js?1732305089"></script> <script> /* global Dropzone */ Dropzone.options.blockthisForm = false; </script> <script src="//a.fsdn.com/con/js/min/sf.sandiego-foundation-base.js?1732305089"></script> <script src="//a.fsdn.com/con/js/min/sf.sandiego-foundation-tooltip.js?1732305089"></script> <script> /* global Foundation */ $(document).foundation(); Foundation.Triggers.forceListenersNow(); </script> <script> bizx.cmp.ifConsent('', ['all', 'google-ads'], function () {}, function () { $('body').addClass('no-ads-consent'); }); </script> <noscript><p><img src="https://analytics.slashdotmedia.com/index.php?idsite=39" style="border:0;" alt="" /></p></noscript> <script> function geturl(url, params) { params = Object .keys(params) .map(function(key) { return key + "=" + encodeURIComponent(params[key]); }) .join("&"); return url + "?" + params; } function loadimg(params, dimension_prefix) { params = Object.assign({"idsite":1,"rec":1,"rand":18710,"dimension2":"pg_project","url":"https://sourceforge.net/projects/html-tidy.mirror/","action_name":"Tidy download | SourceForge.net"}, params); for (var key in params) { if (params.hasOwnProperty(key) && key.indexOf('dimension') === 0 && params[key] !== undefined) { params[key] = (dimension_prefix||'') + params[key]; } } params.rand = Math.floor(Math.random() * 100000); bizx.cmp.ifConsent('publisher', ['measurement'], function() { var url = geturl("//sourceforge.net/software/visit", params); if (!('sendBeacon' in navigator) || !navigator.sendBeacon(url)) { var img = document.createElement('img'); img.src = url; img.style = "border:0;position:absolute;top:0;"; img.alt = ""; document.body.appendChild(img); } }); } var $typeaheads = $('.typeahead__container input[name=q]'); $typeaheads.on('typeahead-item-clicked', function(ev, $typeahead, q, item){ var groupIndex = ($typeahead.data('groups') || []).indexOf(item.group); if (groupIndex === 2 || groupIndex === 3) { loadimg({ 'e_c': 'Search | Typeahead | ' + item.group, 'e_a': "Typeahead Click | q=" + q, 'e_n': item.href, }, 'typeahead_on_'); } }); </script> <script type="text/javascript"> bizx.cmp.ifConsent({purposes: 'all', vendors: '6sense'}, async() => { (function(){var s = document.getElementsByTagName("script")[0]; var b = document.createElement("script"); b.type = "text/javascript";b.async = true;b.defer=true;b.id='6senseWebTag'; b.src = "https://j.6sc.co/j/58729049-be80-466a-9abf-b3911430bbd8.js"; s.parentNode.insertBefore(b, s);})(); }); </script> <!-- CCM Tag --> <script> (function () { bizx.cmp.ifConsent({ purposes: 'all', vendors: 'bombora'}, function () { /*global _ml:true, window */ _ml = window._ml || {}; _ml.eid = '771'; _ml.fp = '62341114-a41e-4b37-9f96-d01c69da8545'; var s = document.getElementsByTagName('script')[0], cd = new Date(), mltag = document.createElement('script'); mltag.type = 'text/javascript'; mltag.async = true; mltag.defer = true; mltag.src = '//ml314.com/tag.aspx?' + cd.getDate() + cd.getMonth() + cd.getFullYear(); s.parentNode.insertBefore(mltag, s); }); })(); </script> <!-- End CCM Tag --> <!-- Hubspot tracking --> <div id="overlay-blockthis-wrapper" style="display: none;"> <div id="overlay-blockthis"> <div class="as-h2 title">Thanks for helping keep SourceForge clean.</div> <a href="#" id="btn-blockthis-close">X</a> <form class="dropzone small-12" action="/api/instrumentation/gpt" id="blockthisForm" method="POST"> <div class="row small-12"> <div class="column description small-12"> <input type="hidden" name="_visit_cookie" value="62341114-a41e-4b37-9f96-d01c69da8545"/> <input type='hidden' name='timestamp' value='1732376708'/> <input type='hidden' name='spinner' value='XBb3OEl0ONHdGGSlNeagmOjb05oc'/> <p class='E7cc1de994c137b283df25c5e9adc22b72253cb0a'><label for='XAsOVwqF8OHcERwtWwqU2wpDDkFjDjsKlworCmjA'>You seem to have CSS turned off. Please don't fill out this field.</label><input id='XAsOVwqF8OHcERwtWwqU2wpDDkFjDjsKlworCmjA' name='XA8OVwqF8OHcEOgnClVLCpAHDlsOSwqlIwohRw5s' type= 'text'/></p> <p class='E7cc1de994c137b283df25c5e9adc22b72253cb0a'><label for='XAsOVwqF8OHcERgtWwqU2wpDDkFjDjsKlworCmjA'>You seem to have CSS turned off. Please don't fill out this field.</label><input id='XAsOVwqF8OHcERgtWwqU2wpDDkFjDjsKlworCmjA' name='XA8OVwqF8OHcFOgnClVLCpAHDlsOSwqlIwohRw5s' type= 'text'/></p> Briefly describe the problem (required): <input name="XDsOZwqthPnxdBzJwRiM0w6fCqkHDn8KMwphz" type="text" required> </div> </div> <div class="column small-12"> <div class="upload-text">Upload screenshot of ad (required):</div> <div id='upload-it'> <a href="#" id="upload-select-file">Select a file</a>, or drag & drop file here. </div> <div id="upload-it-placeholder"></div> <div class="dropzone-previews" style="display: none"></div> <div class="dz-message" style="display: none"></div> <div id="dropzone-preview-template" style="display: none"> <div class="dz-preview dz-file-preview"> <img data-dz-thumbnail src="data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs=" alt=""/> <div class="dz-success-mark"><span>✔</span></div> <div class="dz-error-mark"><span>✘</span></div> <div class="dz-error-message"><span data-dz-errormessage></span></div> </div> </div> </div> <div class="column small-12"> <u>Screenshot instructions:</u> <a data-external target=_blank href="http://windows.microsoft.com/en-us/windows/take-screen-capture-print-screen#take-screen-capture-print-screen=windows-8">Windows</a> </div> <div class="row small-12"> <div class="column large-5 small-6"> <p> <u>Click URL instructions:</u><br> Right-click on the ad, choose "Copy Link", then paste here &rarr;<br> (This may not be possible with some types of ads) </p> <a class="more-info" href="https://sourceforge.net/p/forge/documentation/Report%20a%20problem%20with%20Ad%20content/" target="_blank">More information about our ad policies</a> </div> <div class="column large-7 small-6"> <p>Ad destination/click URL: <input name="XDMOewqJ7PmVrAjR1ZALDtcOTw49CSAB1w7k" type="url" required> </p> <textarea id="gpt-info" name="XAcOZwq9mPEN7w7s9w7BRM8KNO1hGwoHCqFFD"></textarea> <input class="button" type="submit" id="btn-blockthis-submit" value="Submit Report"> </div> </div> </form> </div> </div> <script> bizx.cmp.ifConsent('', ['all'], function () { bizx.cmp.embedScript('//ads.pro-market.net/ads/scripts/site-143572.js'); }); </script><script> bizx.cmp.ifConsent('', ['all'], function () { try{(function(){ var cb = new Date().getTime(); var s = document.createElement("script"); s.defer = true; s.src = "//tag.crsspxl.com/s1.js?d=2396&cb="+cb; var s0 = document.getElementsByTagName('script')[0]; s0.parentNode.insertBefore(s, s0); })();}catch(e){} }); </script> <script type="text/javascript"> bizx.cmp.ifConsent('', ['all'], function () { /* jshint ignore:start */ (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); /* jshint ignore:end */ window.dataLayer = window.dataLayer || []; function gtag(){ window.dataLayer.push(arguments); } window.gtag = window.gtag || gtag; bizx.cmp.embedScript("https://www.googletagmanager.com/gtag/js"); gtag('js', new Date()); gtag('set', { 'page_location': 'https://sourceforge.net/projects/html-tidy.mirror/', }); }); </script> <script> /*global ga, gtag */ SF.devicePixelRatio = Math.round(window.getDevicePixelRatio()*10)/10; bizx.cmp.ifConsent('', ['all'], function () { gtag('config', 'G-1H226E4E4L', { send_page_view: false, 'SF_Project_Shortname': 'html-tidy.mirror', 'SF_Page_Type': 'pg_project', user_properties: { 'SF_Logged_in': 'Logged Out', }, 'SF_Ads_Disabled': 'No', 'SF_Prebid_Load_Method': 'sync', 'devicePixelRatio': SF.devicePixelRatio, }); gtag('event', 'page_view', { send_to: 'G-1H226E4E4L' }); }); bizx.cmp.ifConsent('', ['all'], function () { ga('create', "UA-30122128-1", { 'name': 'nbhd', }); ga('nbhd.send', 'pageview'); }); </script> <script src="//a.fsdn.com/con/js/min/sf.sandiego-project.js?1732305089"></script> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10