309 lines
		
	
	
		
			10 KiB
		
	
	
	
		
			HTML
		
	
	
	
			
		
		
	
	
			309 lines
		
	
	
		
			10 KiB
		
	
	
	
		
			HTML
		
	
	
	
| <!-- Forked from https://microsoft.github.io/monaco-editor/ -->
 | |
| 
 | |
| <!DOCTYPE html>
 | |
| <html lang="en">
 | |
|   <head>
 | |
|     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
 | |
|     <meta name="viewport" content="width=device-width" />
 | |
| 
 | |
|     <title>ktfmt - the Kotlin code formatter</title>
 | |
| 
 | |
|     <link data-inline="yes-please" href="./lib/bootstrap-cosmo.css" rel="stylesheet"/>
 | |
|     <link data-inline="yes-please" href="./lib/bootstrap-responsive.min.css" rel="stylesheet"/>
 | |
|     <link data-inline="yes-please" href="./all.css" rel="stylesheet" />
 | |
|     <link data-inline="yes-please" href="./index/index.css" rel="stylesheet" />
 | |
| 
 | |
|     <link data-name="vs/editor/editor.main"
 | |
|       rel="stylesheet"
 | |
|       href="node_modules/monaco-editor/min/vs/editor/editor.main.css"
 | |
|     />
 | |
|   </head>
 | |
| 
 | |
|   <body>
 | |
|     <a id="gh-link" href="https://github.com/facebookincubator/ktfmt"
 | |
|       ><img
 | |
|         loading="lazy"
 | |
|         width="149"
 | |
|         height="149"
 | |
|         src="https://github.blog/wp-content/uploads/2008/12/forkme_right_white_ffffff.png?resize=149%2C149"
 | |
|         class="attachment-full size-full"
 | |
|         alt="Fork me on GitHub"
 | |
|         data-recalc-dims="1"
 | |
|     /></a>
 | |
|     <nav class="navbar navbar-inverse navbar-fixed-top">
 | |
|       <div class="navbar-inner">
 | |
|         <div class="container">
 | |
|           <div class="logo">
 | |
|             ktfmt
 | |
|           </div>
 | |
|           <div class="logo">
 | |
|             <a href="index.html">- the Kotlin code formatter</a>
 | |
|           </div>
 | |
|           <!-- collapse button for smaller screens -->
 | |
|           <button
 | |
|             type="button"
 | |
|             class="btn btn-navbar"
 | |
|             data-toggle="collapse"
 | |
|             data-target=".nav-collapse"
 | |
|           >
 | |
|             <span class="icon-bar"></span>
 | |
|             <span class="icon-bar"></span>
 | |
|             <span class="icon-bar"></span>
 | |
|           </button>
 | |
| 
 | |
|           <!-- navbar title -->
 | |
|           <div class="nav-collapse collapse">
 | |
|             <ul class="nav">
 | |
|               <li>
 | |
|                 <a
 | |
|                   class="nav-item"
 | |
|                   href="https://github.com/facebookincubator/ktfmt"
 | |
|                   >GitHub</a
 | |
|                 >
 | |
|               </li>
 | |
|               <li>
 | |
|                 <a
 | |
|                   class="nav-item"
 | |
|                   href="https://kotlinlang.slack.com/archives/C01GZCU0QNB"
 | |
|                   >Slack</a
 | |
|                 >
 | |
|               </li>
 | |
|               <li>
 | |
|                 <a
 | |
|                   class="nav-item"
 | |
|                   href="https://search.maven.org/artifact/com.facebook/ktfmt/{{version}}/jar"
 | |
|                   >Maven Central</a
 | |
|                 >
 | |
|               </li>
 | |
|             </ul>
 | |
|           </div>
 | |
|         </div>
 | |
|       </div>
 | |
|     </nav>
 | |
|     <section class="try">
 | |
|       <div class="container">
 | |
|         <h3>About</h3>
 | |
|         <div class="row">
 | |
|           <div class="span12">
 | |
|             <br />
 | |
|             <p>
 | |
|               <code>ktfmt</code> is a program that pretty-prints (formats)
 | |
|               Kotlin code.
 | |
|             </p>
 | |
|             <p>
 | |
|               It always produces the same result, regardless of how the code
 | |
|               looks initially, freeing developers to focus on essence.
 | |
|             </p>
 | |
|             <p>
 | |
|                 It is by design non-customizable in order to promote consistency.
 | |
|               </p>
 | |
|             </div>
 | |
|         </div>
 | |
|         <hr />
 | |
|         <h3>Usage</h3>
 | |
|         <div class="row">
 | |
|           <div class="span12">
 | |
|             <br />
 | |
|             <ul class="nav nav-tabs" id="usage_tab">
 | |
|               <li class="active">
 | |
|                 <a href="#usage_intellij" data-toggle="tab"
 | |
|                   >IntelliJ / Android Studio</a
 | |
|                 >
 | |
|               </li>
 | |
|               <li>
 | |
|                 <a href="#usage_gradle" data-toggle="tab">Gradle</a>
 | |
|               </li>
 | |
|               <li><a href="#usage_maven" data-toggle="tab">Maven</a></li>
 | |
|               <li><a href="#usage_cli" data-toggle="tab">Command line</a></li>
 | |
|             </ul>
 | |
|             <div class="tab-content">
 | |
|               <div class="tab-pane active" id="usage_intellij">
 | |
|                 <p>
 | |
|                   A ktfmt plugin that augments the Reformat Code action (<code>⌥⌘L</code>) is available from JetBrains Marketplace.
 | |
|                 </p>
 | |
|                 <a class="btn btn-info" href="https://plugins.jetbrains.com/plugin/14912-ktfmt" target="_blank">Install</a>
 | |
|               </div>
 | |
|               <div class="tab-pane" id="usage_gradle">
 | |
|                 <p>
 | |
|                   <u><b>Spotless</b></u> (<a
 | |
|                     href="https://github.com/diffplug/spotless/tree/main/plugin-gradle#ktfmt"
 | |
|                     >details</a
 | |
|                   >):
 | |
|                 </p>
 | |
| 
 | |
|                 <pre>
 | |
| # build.gradle.kts
 | |
| plugins { id("com.diffplug.spotless") }
 | |
|     
 | |
| // version and style are optional
 | |
| spotless { kotlin { ktfmt('{{version}}').kotlinlangStyle() } }
 | |
| </pre
 | |
|                 >
 | |
| 
 | |
|                 <p>or,</p>
 | |
|                 <p>
 | |
|                   <u><b>ktfmt-gradle</b></u> (<a
 | |
|                     href="https://github.com/cortinico/ktfmt-gradle#how-to-use-"
 | |
|                     >details</a
 | |
|                   >):
 | |
|                 </p>
 | |
|                 <pre>
 | |
| # build.gradle.kts
 | |
| plugins { id("com.ncorti.ktfmt.gradle") }
 | |
| 
 | |
| ktfmt { kotlinLangStyle() }
 | |
| </pre
 | |
|                 >
 | |
|               </div>
 | |
|               <div class="tab-pane" id="usage_maven">
 | |
|                 <p>
 | |
|                   <u><b>Spotless</b></u> (<a
 | |
|                     href="https://github.com/diffplug/spotless/tree/main/plugin-maven#ktfmt"
 | |
|                     >details</a
 | |
|                   >):
 | |
|                 </p>
 | |
| 
 | |
|                 <pre>
 | |
| # pom.xml
 | |
| <configuration>
 | |
|   <kotlin>
 | |
|     <ktfmt>
 | |
|       <version>{{version}}</version>
 | |
|     </ktfmt>
 | |
|   </kotlin>
 | |
| </configuration>
 | |
| </pre
 | |
|                 >
 | |
|               </div>
 | |
|               <div class="tab-pane" id="usage_cli">
 | |
|                 <p>
 | |
|                   Download the jar from Maven Central and invoke it using
 | |
|                   <code>java</code>:
 | |
|                 </p>
 | |
|                 <pre>
 | |
| $ wget https://repo1.maven.org/maven2/com/facebook/ktfmt/{{version}}/ktfmt-{{version}}-jar-with-dependencies.jar
 | |
| $ java -jar ktfmt-{{version}}-jar-with-dependencies.jar [--kotlinlang-style] [files...]
 | |
| </pre
 | |
|                 >
 | |
|               </div>
 | |
|             </div>
 | |
|           </div>
 | |
|         </div>
 | |
|         <hr />
 | |
|         <h3>Try It Online</h3>
 | |
|         <small>Running v{{version}}</small>
 | |
|         <div class="editor row">
 | |
|           <div class="span12">
 | |
|             <div class="row">
 | |
|               <form id="editorForm" name="editorForm">
 | |
|                 <div class="span3">
 | |
|                   <label class="control-label">Style</label>
 | |
|                   <select class="style-picker input-medium">
 | |
|                     <option>kotlinlang</option>
 | |
|                     <option>Java-like</option>
 | |
|                   </select>
 | |
|                 </div>
 | |
|                 <div class="span3">
 | |
|                   <label class="control-label">Column Limit</label>
 | |
|                   <input
 | |
|                     class="input-small column-limit-picker"
 | |
|                     type="number"
 | |
|                     min="50"
 | |
|                     max="140"
 | |
|                     class="form-control"
 | |
|                     id="column_limit"
 | |
|                     value="100"
 | |
|                     required
 | |
|                   />
 | |
|                 </div>
 | |
|                 <div class="span4 pull-right">
 | |
|                   <button class="btn btn-primary pull-right" type="submit">
 | |
|                     Format
 | |
|                   </button>
 | |
|                   <p
 | |
|                     id="error-message"
 | |
|                     class="text-error"
 | |
|                     style="display: none"
 | |
|                   >
 | |
|                     Donec ullamcorper nulla non metus auctor fringilla.
 | |
|                   </p>
 | |
|                 </div>
 | |
|               </form>
 | |
|             </div>
 | |
|             <div class="editor-frame">
 | |
|               <div class="loading editor" style="display: none">
 | |
|                 <div class="progress progress-striped active">
 | |
|                   <div class="bar"></div>
 | |
|                 </div>
 | |
|               </div>
 | |
|               <div id="editor"></div>
 | |
|             </div>
 | |
|           </div>
 | |
|         </div>
 | |
|       </div>
 | |
|     </section>
 | |
| 
 | |
|     <footer class="container">
 | |
|       <hr />
 | |
|       <p class="text-center">
 | |
|         [
 | |
|         <a
 | |
|           target="_blank"
 | |
|           rel="noopener noreferrer"
 | |
|           href="https://opensource.facebook.com/legal/privacy/"
 | |
|           >Privacy</a
 | |
|         >
 | |
|         ] [
 | |
|         <a
 | |
|           target="_blank"
 | |
|           rel="noopener noreferrer"
 | |
|           href="https://opensource.facebook.com/legal/terms/"
 | |
|           >Terms</a
 | |
|         >
 | |
|         ] [
 | |
|         <a
 | |
|           target="_blank"
 | |
|           rel="noopener noreferrer"
 | |
|           href="https://opensource.facebook.com/legal/data-policy/"
 | |
|           >Data Policy</a
 | |
|         >
 | |
|         ] [
 | |
|         <a
 | |
|           target="_blank"
 | |
|           rel="noopener noreferrer"
 | |
|           href="https://opensource.facebook.com/legal/cookie-policy/"
 | |
|           >Cookie Policy</a
 | |
|         >
 | |
|         ]
 | |
|       </p>
 | |
|       <p class="text-center">
 | |
|         <a href="https://opensource.facebook.com/" title="Facebook Open Source">
 | |
|           <img
 | |
|             src="img/oss_logo.png"
 | |
|             alt="Facebook Open Source"
 | |
|             style="max-height: 50px; margin-bottom: 12px"
 | |
|           />
 | |
|         </a>
 | |
|         <br />
 | |
|         <small>© {{year}} Facebook, Inc. Based on <a href="https://microsoft.github.io/monaco-editor">https://microsoft.github.io/monaco-editor</a></small>
 | |
|       </p>
 | |
|     </footer>
 | |
| 
 | |
|     <script
 | |
|       src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.9.1/jquery.min.js"
 | |
|       integrity="sha256-wS9gmOZBqsqWxgIVgA8Y9WcQOa7PgSIX+rPA0VL2rbQ="
 | |
|       crossorigin="anonymous"
 | |
|     ></script>
 | |
|     <script
 | |
|       src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/2.3.0/bootstrap.min.js"
 | |
|       integrity="sha256-u+l2mGjpmGK/mFgUncmMcFKdMijvV+J3odlDJZSNUu8="
 | |
|       crossorigin="anonymous"
 | |
|     ></script>
 | |
| 
 | |
|     <script src="node_modules/monaco-editor/min/vs/loader.js"></script>
 | |
|     <script src="node_modules/monaco-editor/min/vs/editor/editor.main.nls.js"></script>
 | |
|     <script src="node_modules/monaco-editor/min/vs/editor/editor.main.js"></script>
 | |
|     <script data-inline="yes-please" src="./index/index.js"></script>
 | |
|   </body>
 | |
| </html>
 |