diff --git a/README.md b/README.md index d4e7455..1fed9b9 100644 --- a/README.md +++ b/README.md @@ -6,9 +6,6 @@ Technical writing is an essential skill of conveying complex technical informati > [!TIP] > All resources in this curated list are free, unless otherwise noted. -> [!TIP] -> A few resources are unaccessible in some countries, such as China. If an alternative is available in a specific country, it is listed as a sublist item of the unaccessible one followed by a mark of `Country Name` in a pair of parentheses. - Want to suggest a resource? Check out the [Contribution Guidelines](https://github.com/wongyah/awesome-technical-writing-learning/blob/main/contributing.md)! šŸ‘ --- @@ -28,8 +25,8 @@ Want to suggest a resource? Check out the [Contribution Guidelines](https://gith - [reStructuredText](#restructuredtext) - [DITA](#dita) - [S1000D](#s1000d) -- [Text automatic processing](#text-automatic-processing) - - [Regular expression](#regular-expression) +- [Text processing](#text-processing) + - [Regular expressions](#regular-expressions) - [XSL](#xsl) - [PowerShell](#powershell) @@ -37,51 +34,53 @@ Want to suggest a resource? Check out the [Contribution Guidelines](https://gith ## Technical writing +> Writing is a skill, not a talent, and this difference is important because a skill can be improved by practice. + ### Courses for beginners -If you are completely new to technical writing, the following **šŸ”” courses** are the best start points for you: +If you are completely new to technical writing, the following **šŸ”” courses** are the best starting points for you: -- [Google Technical Writing Courses for Engineers](https://developers.google.com/tech-writing) - A practical technical writing course for beginners, featuring examples and metaphors that all programmers are familiar with. - - [Google Technical Writing Courses for Engineers](https://developers.google.cn/tech-writing) (China) -- [GitLab Technical Writing Fundamentals Course](https://handbook.gitlab.com/handbook/product/ux/technical-writing/fundamentals/) - A four-video course teaching how to write and edit GitLab documentation. -- [Coursera: Introduction to Technical Writing](https://www.coursera.org/learn/technical-writing-introduction) - A systematic introduction to technical writing, including the features, workflow, software and tools, history and futures, etc. +- [Google Technical Writing Courses for Engineers](https://developers.google.com/tech-writing) - Practical technical writing course for beginners, with examples and metaphors familiar to programmers. + - [Google Technical Writing Courses for Engineers](https://developers.google.cn/tech-writing) (accessible in China) +- [GitLab Technical Writing Fundamentals Course](https://handbook.gitlab.com/handbook/product/ux/technical-writing/fundamentals/) - four introductory videos about the topic types, grammer and style requirements for GitLab documentation. +- [Coursera: Introduction to Technical Writing](https://www.coursera.org/learn/technical-writing-introduction) - Systematic introduction to technical writing, including the features, workflow, software and tools, history and futures, etc. ### Textbooks and tutorials -Now, you have known a bit of technical writing šŸ‘! Not enough for you? Let's go further šŸ¤ ! +Now, you know a bit about technical writing šŸ‘! Not enough for you? Let's go further šŸ¤ ! -To learn a new skill or a new subject systematically, there is nothing better than **šŸ“š academic textbooks and tutorials** self-published by experienced professionals at work. Here you are, enjoy šŸ˜„! +The following **šŸ“š textbooks and tutorials** authored by experienced professionals are great resources for you to systematically learn a new skill. Here you are, enjoy šŸ˜„! -- [Software Technical Writing: A Guidebook](https://jamesg.blog/2024/01/03/software-technical-writing/) - A technical writer at a computer vision startup confessed his daily work in every detail. -- [Documentation APIs: A Guide for Technical Writers and Engineers](https://idratherbewriting.com/learnapidoc/) - Tom Johnson, a senior technical writer at Google and the founder of the popular blog I'd Rather Be Writing, teach you how to write documentation for API step by step. -- [Documentation Guide](https://www.writethedocs.org/guide/) - A living guide on best practices for creating software documentation, developed and maintained by the Write the Docs community. -- [Developing Quality Technical Information: A Handbook for Writers and Editors (IBM Press)](https://www.amazon.com/Developing-Quality-Technical-Information-Handbook/dp/0133118975) - A must-read book of technical writers for all time, even though it is not a free resource. -- [Open Technical Communication](https://alg.manifoldapp.org/projects/open-technical-communication) - An open textbook authored by five professionals at Kennesaw State University, which has been revised and updated to 4th edition. +- [Software Technical Writing: A Guidebook](https://jamesg.blog/2024/01/03/software-technical-writing/) - A technical writer at a computer vision startup talks about his daily work in every detail. +- [Documentation APIs: A Guide for Technical Writers and Engineers](https://idratherbewriting.com/learnapidoc/) - Tom Johnson, a senior technical writer at Google and the founder of [Iā€™d Rather Be Writing](https://idratherbewriting.com/) blog, teaches you how to write API documentation step by step. +- [Documentation Guide](https://www.writethedocs.org/guide/) - Living guide around best practices for creating software documentations, developed and maintained by the [Write the Docs](https://www.writethedocs.org/) community. +- [Developing Quality Technical Information: A Handbook for Writers and Editors](https://www.amazon.com/Developing-Quality-Technical-Information-Handbook/dp/0133118975) - One of the must-read books for technical writers. It desmonstrates technical writing guidelines with original and revision examples, published by IBM Press. +- [Open Technical Communication](https://alg.manifoldapp.org/projects/open-technical-communication) - Open textbook in its 4th rendition, authored by five professionals at Kennesaw State University. ### Editorial style guides for technical writing -Learning by doing, rather than learning by reading. It's time to write or imporve your own technical documentation using the writing skills you have studied! +Learning by doing, rather than learning by reading. -But wait a minute, you still need to adopt an **šŸ“™ editorial style guide for technical writing** at first. If you never know or forget what editorial sytle guides are or why you need one, go back to the [Google Technical Writing Courses for Engineers](https://developers.google.cn/tech-writing/resources) for a refresher. +But wait a minute, you still need to adopt an **šŸ“™ editorial style guide for technical writing** at first. If you forget what editorial sytle guides are or why you need one, go back to [Google Technical Writing Courses for Engineers](https://developers.google.cn/tech-writing/resources) for a refresher. -- [ASD-STE100 Simplied Technical English](https://www.asd-ste100.org/request.html) - An international specification containing a set of writing rules and a controlled dictionary, which is widely used in aerospace and defense industry and other manufacturing industries. -- [The IBM Style Guide](https://www.tedwangtw.cn/Document/books/IBM%20Style%20Guide.pdf) - A popular book first published by IBM Press in 2011, which emphasizeds a helpful, direct, and authoritative tone and topic-based writing (DITA). -- [Red Hat Technical Writing Style Guide](https://stylepedia.net/style/6.1/) - A style guide for all kinds of technical documentations, including training and examination content. It emphasizes a formal writing sytle, with IBM Style Guide as the preferred reference. -- [Red Hat Supplementary Style Guide for Product Documentation](https://redhat-documentation.github.io/supplementary-style-guide/) - A style guide supplementary to the IBM Style Guide, which provides format examples in AsciiDoc. -- [Microsoft Writing Style Guide](https://learn.microsoft.com/en-us/style-guide/welcome/) - A style guide for computer technology and software documentations, which emphasizes a warm and relax conversational voice. -- [Google Developer Documentation Style Guide](https://developers.google.cn/style) - A style guide for software documentations, which emphasizes a casual and natural conversational tone with specific format recommendations for HTML and Markdown. -- [GitLab Documentation Style Guide](https://docs.gitlab.com/ee/development/documentation/styleguide/index.html) - A style guide for open source software documentations written in Markdown, which emphasizes topic-based writing and format guidelines for Markdown. -- [SUSE Documentation Style Guide](https://documentation.suse.com/en-us/style/current/single-html/docu_styleguide/#) - A style guide for software documentations, which emphasizes a professional tone and comprehensive markup reference for DocBook. -- [Apple Style Guide](https://support.apple.com/zh-cn/guide/applestyleguide/welcome/web) - A style guide for Apple materials, nothing special. +- [ASD-STE100 Simplied Technical English](https://www.asd-ste100.org/request.html) - An international specification widely used in aerospace and defense industry and other manufacturing industries, containing a set of writing rules and a controlled dictionary. +- [The IBM Style Guide](https://www.tedwangtw.cn/Document/books/IBM%20Style%20Guide.pdf) - First published by IBM Press in 2011. It emphasizeds a helpful, direct, and authoritative tone and topic-based writing (DITA). +- [Red Hat Technical Writing Style Guide](https://stylepedia.net/style/6.1/) - For all kinds of technical documentations, including training and examination content. It emphasizes a formal writing sytle, with IBM Style Guide as the preferred reference. +- [Red Hat Supplementary Style Guide for Product Documentation](https://redhat-documentation.github.io/supplementary-style-guide/) - Supplementary to IBM Style Guide. It provides format examples in AsciiDoc. +- [Microsoft Writing Style Guide](https://learn.microsoft.com/en-us/style-guide/welcome/) - For computer technology and software documentations. It emphasizes a warm and relax conversational voice. +- [Google Developer Documentation Style Guide](https://developers.google.cn/style) - For software documentations. It emphasizes a casual and natural conversational tone with specific format recommendations for HTML and Markdown. +- [GitLab Documentation Style Guide](https://docs.gitlab.com/ee/development/documentation/styleguide/index.html) - For open source software documentations written in Markdown. It emphasizes topic-based writing and format guidelines for Markdown. +- [SUSE Documentation Style Guide](https://documentation.suse.com/en-us/style/current/single-html/docu_styleguide/#) - For software documentations. It emphasizes a professional tone and comprehensive markup reference for DocBook. +- [Apple Style Guide](https://support.apple.com/zh-cn/guide/applestyleguide/welcome/web) - For Apple materials, nothing special. ### General purpose editorial style guides In the real world, anything is possible. Take a suitable **šŸ“™ general purpose editorial style guide** at hand, in case you step into an unknown situation someday. -- [University of Oxford Style Guide Quick Reference](https://www.ox.ac.uk/sites/files/oxford/Style%20Guide%20quick%20reference%20A-Z.pdf) - A one-page quick reference guide with the most commonly requested information. -- [University of Oxford Style Guide](https://www.ox.ac.uk/sites/files/oxford/University%20of%20Oxford%20Style%20Guide%20%28updated%20Hilary%20term%202016%29.pdf) - A 30-page sytle guide to writing and formatting documents consistently. -- [Chicago Manual of Style](https://chicagomanualofstyle.org/home.html) - A widely used style guide over 1000 pages, which was published continuously since 1906 and now is in its 17th edition (subscription required). -- [AMA Manual of Style](https://academic.oup.com/amamanualofstyle) - A widely used style guide in medical and scientific publishing, which was published continuously since 1962 and now is in its 11th edition (subscription required). +- [University of Oxford Style Guide Quick Reference](https://www.ox.ac.uk/sites/files/oxford/Style%20Guide%20quick%20reference%20A-Z.pdf) - One-page quick reference guide with the most commonly requested information. +- [University of Oxford Style Guide](https://www.ox.ac.uk/sites/files/oxford/University%20of%20Oxford%20Style%20Guide%20%28updated%20Hilary%20term%202016%29.pdf) - Thirty-page style guide for writing and formatting documents consistently. +- [Chicago Manual of Style](https://chicagomanualofstyle.org/home.html) - Over 1000 pages. It was published continuously since 1906 and now is in its 17th edition (subscription required). +- [AMA Manual of Style](https://academic.oup.com/amamanualofstyle) - For medical and scientific publishing. It was published continuously since 1962 and now is in its 11th edition (subscription required). ### Dictionaries @@ -90,21 +89,23 @@ And you know, select a suitable **šŸ“˜ dictionary** too! - [American Heritage Dictionary](https://ahdictionary.com/) - [Merriam-Webster Dictionary](https://www.merriam-webster.com/) +Now, you can use the writing skills to improve your own technical documentations! + ## Technical illustrations A picture is worth a thousand words. High-tech industries usually rely heavily on technical illustrations in their technical documentations, such as manufacturing, automotive, aerosapce, and defense. But unfortunately, there are few resources available šŸ¤“. -- [Technical Illustration in the 21st Century: A Primer for Today's Professionals](https://docslib.org/doc/3602588/technical-illustration-in-the-21st-century-a-primer-for-todays) - A white paper produced by Bettina Giemsa at PTC. -- [The State of Technical Illustration and Documentation](https://www.coreldraw.com/en/learn/webinars/ebook-state-of-tech-design/) - A survey report on technical illustration and documentation market, conducted by Corel in 2022. +- [Technical Illustration in the 21st Century: A Primer for Today's Professionals](https://docslib.org/doc/3602588/technical-illustration-in-the-21st-century-a-primer-for-todays) - White paper produced by Bettina Giemsa at PTC. +- [The State of Technical Illustration and Documentation](https://www.coreldraw.com/en/learn/webinars/ebook-state-of-tech-design/) - Survey report on technical illustration and documentation market, conducted by Corel in 2022. Technical illustrators used to use software like Adobe Illustrator or CAD to create technical illustrations. But now, **šŸ’» softwares specially made for technical illustrations** are becoming more and more popular. -- [Arbortext IsoDraw Data Sheet](https://www.ptc.com/-/media/Files/PDFs/Products/Arbortext/2019-datasheet/IsoDraw.pdf) and [Arbortext IsoDraw Online Help](https://support.ptc.com/help/isodraw/r7.3/en/index.html) - A commercial software for technical illustrations developed by PTC. -- [SOLIDWORKS Composer](https://www.solidworks.com/product/solidworks-composer) and [SOLIDWORKS Composer Help](https://help.solidworks.com/2021/English/DSSWXComposerDoc/FrontmatterSWXComposer/DSSWXComposerDocHome.htm) - A commercial software for technical illustrations developed by SolidWroks. -- [XVL Studio 3D CAD Corel Edition](https://www.coreldraw.com/en/product/technical-suite/xvl-studio/) - A commercial software for technical illustrations developed by CorelDRAW. -- [XVL Technical Illustration Suite](https://www.lattice3d.com/products/xvl-technical-illustration-suite) - A suite of commercial softwares for technical illustrations developed by Lattice Technology. +- [Arbortext IsoDraw Data Sheet](https://www.ptc.com/-/media/Files/PDFs/Products/Arbortext/2019-datasheet/IsoDraw.pdf) and [Arbortext IsoDraw Online Help](https://support.ptc.com/help/isodraw/r7.3/en/index.html) - Commercial software for technical illustrations, developed by PTC. +- [SOLIDWORKS Composer](https://www.solidworks.com/product/solidworks-composer) and [SOLIDWORKS Composer Help](https://help.solidworks.com/2021/English/DSSWXComposerDoc/FrontmatterSWXComposer/DSSWXComposerDocHome.htm) - Commercial software for technical illustrations, developed by SolidWroks. +- [XVL Studio 3D CAD Corel Edition](https://www.coreldraw.com/en/product/technical-suite/xvl-studio/) - Commercial software for technical illustrations, developed by CorelDRAW. +- [XVL Technical Illustration Suite](https://www.lattice3d.com/products/xvl-technical-illustration-suite) - A suite of commercial softwares for technical illustrations, developed by Lattice Technology. ## Authoring formats @@ -114,18 +115,18 @@ Going with the trend of Docs as Code, more and more organizations and their tech Markdown is a lightweight markup language created by John Gruber in 2004. It has become a commonly used markup language to write technical documentations, especially those software documentations that host in GitHub or GitHub-like platforms. -If you are completely new to Markdown, the following **šŸ“” guide** is the best start point for you: +If you are completely new to Markdown, the following **šŸ“” guide** is the best starting point for you: -- [Markdown Guide](https://www.markdownguide.org/) - A concise, barebones guide for Markdown beginners. +- [Markdown Guide](https://www.markdownguide.org/) - Concise, barebones guide for Markdown beginners. - [John Gruber's Markdown Documentation](https://daringfireball.net/projects/markdown/) -Now, you have known a bit of Markdown šŸ‘. It is easy-to-read, easy-to-write, and easy-to-learn, isn't it šŸ˜Ž? +Now, you know a bit about Markdown šŸ‘. It is easy-to-read, easy-to-write, and easy-to-learn, isn't it šŸ˜Ž? Can't wait to try it out? Just adopt a **āœ’ļø Markdown editor**, then you are ready šŸ’Ŗ! -- [Dillinger](https://dillinger.io/) - A concise in-browser Markdown editor, which can create new files, export the files to Markdown, HTML, or PDF, synchronize with GitHub, Google Drive, or Dropbox repositories, etc. -- [StackEdit](https://stackedit.io/) - An in-browser Markdown editor with rich functions, which can create new files or new folders, export the files to Markdown or HTML, synchronize with GitHub, Google Drive, or Dropbox accounts, etc. -- [Visual Studio Code (VS Code)](https://code.visualstudio.com/) - A code editor developed by Microsoft, with built-in Markdown preview and many Markdown extentions. +- [Dillinger](https://dillinger.io/) - In-browser Markdown editor. It can create new files, export files to Markdown, HTML, or PDF, synchronize with GitHub, Google Drive, or Dropbox repositories, etc. +- [StackEdit](https://stackedit.io/) - In-browser Markdown editor with rich functions. It can create new files or new folders, export the files to Markdown or HTML, synchronize with GitHub, Google Drive, or Dropbox accounts, etc. +- [Visual Studio Code (VS Code)](https://code.visualstudio.com/) - Code editor developed by Microsoft, with built-in Markdown preview and many Markdown extentions. - [Markdown All in One](https://github.com/yzhang-gh/vscode-markdown/#readme) - An extension to enrich Markdown features in VS Code, such as automatic creation of table of contents, auto completions, printing Markdown files to HTML. - [Markdown Table Maker](https://github.com/kaisugi/vscode-markdown-tablemaker?tab=readme-ov-file#readme) - An extention to generate Markdown tables in an easy and intuitive way. - [Markdown PDF](https://github.com/yzane/vscode-markdown-pdf#readme) - An extenstion to convert Markdown files to PDF, PNG, JPEG, or HTML. @@ -150,24 +151,24 @@ If you like to explore more resources about Markdown, see [Awesome Markdown](htt reStructuredText is a lightweight markup language that is more well-defined compared to Markdown and widely used for Python documentation. -If you are completely new to reStructuredText, the following **šŸ“” introductions and tutorials** are the best start points for you: +If you are completely new to reStructuredText, the following **šŸ“” introductions and tutorials** are the best starting points for you: - [Introduction to reStructuredText](https://www.writethedocs.org/guide/writing/reStructuredText/) -- [A ReStructuredText Primer](https://docutils.sourceforge.io/docs/user/rst/quickstart.html) - An informal introduction to reStructuredText written by Richard Jones. -- [reStructuredText Primer](https://www.sphinx-doc.org/en/master/usage/restructuredtext/basics.html) - A brief introduction to reStructuredText in Sphinx documentation. +- [A ReStructuredText Primer](https://docutils.sourceforge.io/docs/user/rst/quickstart.html) - Informal introduction to reStructuredText, authored by Richard Jones. +- [reStructuredText Primer](https://www.sphinx-doc.org/en/master/usage/restructuredtext/basics.html) - Brief introduction to reStructuredText in Sphinx documentation. -Now, you have known a bit of reStructuredText šŸ‘. Just adopt a **āœ’ļø reStructuredText editor**, then you can try it out šŸ§! +Now, you know a bit about reStructuredText šŸ‘. Just adopt a **āœ’ļø reStructuredText editor**, then you can try it out šŸ§! - [Online reStructuredText editor](https://rsted.info.ucl.ac.be/) -- [Visual Studio Code (VS Code)](https://code.visualstudio.com/) - A code editor developed by Microsoft, with reStructuredText extentions. +- [Visual Studio Code (VS Code)](https://code.visualstudio.com/) - Code editor developed by Microsoft. - [reStructuredText](https://github.com/vscode-restructuredtext/vscode-restructuredtext#readme) - An extension to provide rich reStructuredText language support in VS Code. - [reStructuredText Syntax Highlighting](https://github.com/trond-snekvik/vscode-rst#readme) - An extension to provide rich syntax highlighting and non-intrusive section navigation for reStructuredText in VS Code. You may forget an unfrequently used syntax or not sure about a specific syntax during writing. Pick a **šŸ“” cheatsheet or reference documentation** at hand, which you will look for sooner or later. -- [Quick reStructuredText](https://docutils.sourceforge.io/docs/user/rst/quickref.html) - An online cheatsheet for reStructuredText syntax. -- [reStructuredText Cheatsheet](https://github.com/ralsina/rst-cheatsheet#readme) - A downloadable two-page cheatsheet for reStructuredText syntax. -- [reStructuredText Markup Specification](https://docutils.sourceforge.io/docs/ref/rst/restructuredtext.html) - A detailed technical specification for reStructuredText written by David Goodger. +- [Quick reStructuredText](https://docutils.sourceforge.io/docs/user/rst/quickref.html) - Online cheatsheet for reStructuredText syntax. +- [reStructuredText Cheatsheet](https://github.com/ralsina/rst-cheatsheet#readme) - Downloadable two-page cheatsheet for reStructuredText syntax. +- [reStructuredText Markup Specification](https://docutils.sourceforge.io/docs/ref/rst/restructuredtext.html) - Detailed technical specification for reStructuredText, authored by David Goodger. ### DITA @@ -175,24 +176,24 @@ DITA is an open source standard for creating topic-based strcutured technical do It was initially spread to high-tech companies like Adobe, Siemens, and Kone, and then become more and more popular in all industries. -If you are completely new to DITA, the following **šŸ”” courses and tutorials** are the best start points for you: +If you are completely new to DITA, the following **šŸ”” courses and tutorials** are the best starting points for you: - [LearningDITA](https://learningdita.com/) - Nine game-based courses for DITA beginners, developed and maintained by Scriptorium. -- [DITA for the Impatient](https://www.xmlmind.com/tutorials/DITA/) - A short DITA tutorial to teach the basics of DITA, developed by Hussein Shafie at XMLmind Software. +- [DITA for the Impatient](https://www.xmlmind.com/tutorials/DITA/) - Short DITA tutorial to teach the basics of DITA, developed by Hussein Shafie at XMLmind Software. -Now, you have known a bit of DITA šŸ‘. It's time to practice šŸ’ƒšŸ•ŗ! +Now, you know a bit about DITA šŸ‘. It's time to practice šŸ’ƒšŸ•ŗ! That said, DITA is a bit complicated. Adopt a [DITA-aware XML editor](https://www.ditawriter.com/list-of-dita-optimized-editors/) first, in case you are trapped in the tremendous DITA elements. Then, keep a **šŸ“™ book of DITA best practices** at hand for reference at any time. - [DITA Best Practices: A Roadmap for Writing, Editing, and Architecting in DITA](https://www.amazon.com/DITA-Best-Practices-Roadmap-Architecting/dp/0132480522) - A practical book about how to write effective technical information in DITA, published in 2011 by IBM Press (not a free resource). -- [The DITA Style Guide: Best Practices for Authors](https://www.oxygenxml.com/dita/styleguide/) - A style guide written in DITA 1.1 by Tony Self. +- [The DITA Style Guide: Best Practices for Authors](https://www.oxygenxml.com/dita/styleguide/) - Written in DITA 1.1 by Tony Self. You can use DITA to improve your own technical documentation. If you don't have such resources, pick one of **šŸ“” open source sample manuals written in DITA** to see how it was written and think how to improve it. -- [DITA Mini Manual](https://github.com/flicstar/DITA-Mini-Manual#readme) - A 1960s Mini owner's manual rewritten in DITA. +- [DITA Mini Manual](https://github.com/flicstar/DITA-Mini-Manual#readme) - Mini owner's manual that published in 1960s rewritten in DITA. - [Pilot Training Mitchell Bomber](https://github.com/DITAWriter/pilot_training_mitchell_bomber#readme) - A pilot training manual (aviation document) rewritten in DITA. - [LwDITA Code Samples](https://github.com/DITAWriter/LwDITA_Code_Samples#readme) - Various manuals of a 1970s computer rewritten in Lightweight DITA. -- [DITA Glossary Example](https://github.com/DITAWriter/dita_glossary_example#readme) - A book named *On Yacht Sailing* rewritten in DITA to demontrate how to implement glossories in DITA. +- [DITA Glossary Example](https://github.com/DITAWriter/dita_glossary_example#readme) - A book named *On Yacht Sailing* rewritten in DITA to demontrate how to implement glossories. DITA has much more elements than Markdown and reStructuredText. If you encounter soemthing unknown, resort to **šŸ“˜ official specifications**. @@ -218,30 +219,30 @@ Here are the **šŸ“ official specifications and implementations in specific indu - [S1000D DIG Business Rules](https://www.gerkemulder.nl/DIG_Business_Rules_issue_1.0_170619.pdf) - An implementation of S1000D specification in defense industries. - [The Shipdex Protocol: Issue 2.3](http://www.shipdex.org/shipdex-viewer-free.asp) - An implementation of S1000D specification in shipping industry. -## Text automatic processing +## Text processing Equipping yourself with some programming skills will enable you to complete some really cool jobs, such as automating workflow and batch modifying. -### Regular expression +### Regular expressions -A regular expression (regex) is a pattern that the regex engine can use to find or match substrings. Regex is extremely useful in finding and replacing texts or strings in text files. +A regular expression (regex) is a pattern that the regex engine can use to find or match substrings. Regexes is extremely useful in finding and replacing texts or strings in text files. -If you are completely new to regex, the following **šŸ“™ tutorial** is the best start point for you: +If you are completely new to regexes, the following **šŸ“™ tutorial** is the best starting point for you: -- [Regular Expressions: The Complete Tutorial](https://gotellilab.github.io/Bio381/Scripts/Feb07/RegularExpressionsTutorial.pdf) - An easy-to-understand and practical book for regex beginners written by Jan Goyvaerts. +- [Regular Expressions: The Complete Tutorial](https://gotellilab.github.io/Bio381/Scripts/Feb07/RegularExpressionsTutorial.pdf) - Easy-to-understand and practical book for regex beginners. -Use an **šŸ’» online tool** to experiment the regexes in the tutorial or your own regexes. It will make your studying easy and interesting. +Use an **šŸ’» online tool** to experiment the regexes in the tutorial. It will make your studying easy and interesting. -- [Regex 101](https://regex101.com/) - An online tool to build, test and debug regex. -- [RegExr](https://regexr.com/) - An online tool to learn, build and test regex. +- [Regex 101](https://regex101.com/) - Online tool to build, test and debug regexes. +- [RegExr](https://regexr.com/) - Online tool to learn, build and test regexes. > [!TIP] -> You can also use a text editor that supports searching files with regex to experiment your regexes, such as VS Code. +> You can also use a text editor with support for regexes, such as VS Code. Take a **šŸ“” cheatsheet or quick reference** at hand to check the regex syntax at any time: -- [Regular Expression Language: Quick Reference](https://learn.microsoft.com/en-us/dotnet/standard/base-types/regular-expression-language-quick-reference) - A quick reference for regex from Microsoft. -- [Regular Expression Syntax Cheat Sheet](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions/Cheatsheet) - A cheat sheet for regex in the JavaScript Guide from MDN Web Docs. +- [Regular Expression Language: Quick Reference](https://learn.microsoft.com/en-us/dotnet/standard/base-types/regular-expression-language-quick-reference) - Quick reference for regexes from Microsoft. +- [Regular Expression Syntax Cheat Sheet](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions/Cheatsheet) - Cheat sheet for regexes in the JavaScript Guide from MDN Web Docs. ### XSL @@ -249,27 +250,27 @@ XSL (Extensible Stylesheet Language) is a styling language for XML. It consists **XSLT** (XSL Transformations) is a language for tranforming XML documents. It is widely used in many purposes other than stylesheets, like transforming from one XML language to another, generating HTML pages from XML documents, etc. -- [XSLT Tutorial](https://www.w3schools.com/xml/xsl_intro.asp) - A tutorial for XSLT beginners, which is developed by W3Schools. -- [XSLT Version 2.0: Second Edition](https://www.w3.org/TR/xslt20/) - The latest official specification for XSLT, which was released on Mar 30, 2021. -- [XSLT Version 3.0](https://www.w3.org/TR/xslt-30/) - The official specification for XSLT 3.0, which was released on Jun 8, 2017. +- [XSLT Tutorial](https://www.w3schools.com/xml/xsl_intro.asp) - For XSLT beginners. It is developed by W3Schools. +- [XSLT Version 2.0: Second Edition](https://www.w3.org/TR/xslt20/) - The latest official specification for XSLT, released on Mar 30, 2021. +- [XSLT Version 3.0](https://www.w3.org/TR/xslt-30/) - The official specification for XSLT 3.0, released on Jun 8, 2017. **XPath** (XML Path Language) is an expression language for navigating through elements and attributes in an XML document. -- [XPath Tutorial](https://www.w3schools.com/xml/xpath_intro.asp) - A tutorial for XPath beginners, which was developed by W3Schools. -- [XPath 3.1](https://www.w3.org/TR/xpath-31/) - The latest official specification for XPath, which was released on Mar 21, 2017. +- [XPath Tutorial](https://www.w3schools.com/xml/xpath_intro.asp) - For XPath beginners. It is developed by W3Schools. +- [XPath 3.1](https://www.w3.org/TR/xpath-31/) - The latest official specification for XPath, released on Mar 21, 2017. **XSL-FO** (XSL Formatting Objects) is a language for formatting XML documents. XSL-FO is also called XSL. -- [XSL-FO Tutorial](https://w3schools.sinsixx.com/xslfo/default.asp.htm) - A tutorial for XSL-FO beginners, which was developed by W3Schools. -- [XSL-FO Tutorial](https://www.renderx.com/tutorial.html) - A learn-by-example tutorial for XSL-FO beginners, which provides a series of examples working in [XEP](https://www.renderx.com/tools/xep.html). -- [XSL Version 1.1](https://www.w3.org/TR/xsl/) - The lastest official specification for XSL-FO, which was released on Dec 05, 206. +- [XSL-FO Tutorial](https://w3schools.sinsixx.com/xslfo/default.asp.htm) - For XSL-FO beginners. It was developed by W3Schools. +- [XSL-FO Tutorial](https://www.renderx.com/tutorial.html) - Learn-by-example tutorial for XSL-FO beginners. It provides a series of examples working in [XEP](https://www.renderx.com/tools/xep.html). +- [XSL Version 1.1](https://www.w3.org/TR/xsl/) - The lastest official specification for XSL-FO, released on Dec 05, 2006. ### PowerShell -PowerShell is a task automation tool from Microsoft which is built into all versions of Windows. +PowerShell is a task automation tool from Microsoft, which is built into all versions of Windows. -- [PowerShell 101](https://learn.microsoft.com/en-us/powershell/scripting/learn/ps101/00-introduction?view=powershell-7.4) - A book for PowerShell beginners, the contents in which has been open to public by Microsoft on its website with permission. -- [Everything You Want to Know about …](https://learn.microsoft.com/en-us/powershell/scripting/learn/deep-dives/everything-about-arrays?view=powershell-7.4) - A series of articles about PowerShell, which were collected from [PowerShell Explained](https://powershellexplained.com/) by Microsoft. +- [PowerShell 101](https://learn.microsoft.com/en-us/powershell/scripting/learn/ps101/00-introduction?view=powershell-7.4) - Book for PowerShell beginners. Its content is open to public by Microsoft on its website. +- [Everything You Want to Know about …](https://learn.microsoft.com/en-us/powershell/scripting/learn/deep-dives/everything-about-arrays?view=powershell-7.4) - A series of articles about PowerShell, collected from [PowerShell Explained](https://powershellexplained.com/) by Microsoft. - [PowerShell Documentation](https://learn.microsoft.com/pdf?url=https%3A%2F%2Flearn.microsoft.com%2Fen-us%2Fpowershell%2Fscripting%2Ftoc.json%3Fview%3Dpowershell-7.4) - The official documentation for PowerShell 7.4. If you like to explore more resources about PowerShell, see [Awesome PowerShell](https://github.com/janikvonrotz/awesome-powershell).