{"id":3269,"url":"https://github.com/bow-swift/nef-plugin","last_synced_at":"2025-10-30T01:50:53.365Z","repository":{"id":44666209,"uuid":"194644857","full_name":"bow-swift/nef-plugin","owner":"bow-swift","description":"🔌 an Xcode extension to use nef features easily","archived":false,"fork":false,"pushed_at":"2021-11-11T15:19:12.000Z","size":4488,"stargazers_count":201,"open_issues_count":1,"forks_count":11,"subscribers_count":4,"default_branch":"master","last_synced_at":"2024-08-17T00:35:39.091Z","etag":null,"topics":["bow","hacktoberfest","macos","nef","swift","swiftui","xcode","xcode-extension","xcode-plugin"],"latest_commit_sha":null,"homepage":"http://nef.bow-swift.io","language":"Swift","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bow-swift.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-07-01T09:43:48.000Z","updated_at":"2024-08-15T05:51:51.000Z","dependencies_parsed_at":"2022-07-30T01:07:47.768Z","dependency_job_id":null,"html_url":"https://github.com/bow-swift/nef-plugin","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bow-swift%2Fnef-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bow-swift%2Fnef-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bow-swift%2Fnef-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bow-swift%2Fnef-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bow-swift","download_url":"https://codeload.github.com/bow-swift/nef-plugin/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":228617103,"owners_count":17946390,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bow","hacktoberfest","macos","nef","swift","swiftui","xcode","xcode-extension","xcode-plugin"],"created_at":"2024-01-05T20:16:36.610Z","updated_at":"2025-10-30T01:50:48.333Z","avatar_url":"https://github.com/bow-swift.png","language":"Swift","funding_links":[],"categories":["Xcode","Applications","Extensions","🌎 by the community","The list"],"sub_categories":["Extensions","Extensions (Xcode 8+)","Text","🧩 Extensions (13)","Collaborations with internal/external services"],"readme":"\u003cp align=\"center\"\u003e\n    \u003cimg src=\"https://github.com/bow-swift/nef-plugin/blob/master/assets/nef-brand-xcode-shadow.png?raw=true\" alt=\"nef: an Xcode plugin\" width=\"30%\"/\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"https://github.com/bow-swift/nef\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/nef-%E2%9C%93-blueviolet\" alt=\"nef\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://developer.apple.com/xcode/swiftui\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/Swift%20UI-%E2%9C%93-orange\" alt=\"Swift UI\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://swift.org/download\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/Swift-5.3-orange\" alt=\"Swift 5.3\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://developer.apple.com/xcode\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/IDE-Xcode%2011+-blue\" alt=\"Xcode 11+\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://www.apple.com/macos/catalina/\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/macOS-10.15%2B-blue\" alt=\"macOS 10.15+\"\u003e\n    \u003c/a\u003e\n\u003c/p\u003e\n\n\u0026nbsp;\n\nThis project provides an extension for Xcode to integrate some nef features directly in the IDE. Using the core of `nef`, you can [export snippets](https://github.com/bow-swift/nef#-exporting-carbon-code-snippets) from your code selection directly in Xcode.\n\n### Features\n\n💡 Exports a [__code selection__](#-export-code-selection-to-image-or-clipboard) to image or clipboard.\n\n💡 Generates [__Markdown__](#-generates-markdown-file-from-playground) files from Xcode Playground.\n\n💡 Builds a [__Playground Book__](#-create-a-playground-book-from-your-swift-package) with external dependencies defined in a Swift Package.\n\n\u0026nbsp;\n\n## 💻 Installation\n\n#### ➊ Latest binary in [Releases section](https://github.com/bow-swift/nef-plugin/releases/latest/download/nef-installer.zip) (preferred)\n#### ➋ Using [Mac App Store](https://apps.apple.com/app/nef/id1479391704?mt=8)\n\n\u003e To complete the installation, you should enable `nef` extension from `System Preferences \u003e Extensions \u003e Xcode Source Editor`\n\n\u0026nbsp;\n\n## ✍️ Usage\n\nYou can find the nef plugin options in `Xcode \u003e Editor`\n\n![Editor \u003e nef](assets/nef-plugin-action-export.png)\n\n### 🔧 Preferences\n\nYou can customize the output image using the preferences action `Editor \u003e nef \u003e Preferences`\n\n\u003cp align=\"center\"\u003e\n    \u003cimg src=\"assets/nef-xcode-preferences.png\" alt=\"nef: preferences Xcode extension\" width=\"75%\"/\u003e\n\u003c/p\u003e\n\n### 🌁 Export code selection to image or clipboard\nYou can export your current code selection into a snippet, you only need to select the action `Editor \u003e nef \u003e Code selection...`\n- **Image file** it will create an image in the [output folder](#-preferences).\n- **Image clipboard** it lets you take advantage of the [universal clipboard](https://support.apple.com/en-us/HT209460).\n\n#### Output\n \u003ctable\u003e\n  \u003ctr\u003e\n    \u003cth align=\"center\" width=\"50%\"\u003e\n        \u003cimg src=\"assets/nef-plugin-action-imagefile.jpg\" alt=\"nef: action for exporting code selection to image file\"/\u003e\n    \u003c/th\u003e\n    \u003cth align=\"center\" width=\"50%\"\u003e\n        \u003cimg src=\"assets/nef-plugin-action-imageclipboard.png\" alt=\"nef: action for exporting code selection to clipboard\"  width=\"175%\"/\u003e\n    \u003c/th\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n### 📃 Generates markdown file from Playground\n\nXcode Playgrounds let you write comments in markdown format using the symbols:\n1. `//: ` for single line comments.\n2. `/*:  */` for multiline comments. \n\nMarkup for playgrounds includes page level formatting for headings and other elements, formatting spans of characters, showing inline images, and several other features. You can read more in the [Markup Formatting Reference](https://developer.apple.com/library/archive/documentation/Xcode/Reference/xcode_markup_formatting_ref/index.html).\n\nYou can create a markdown file from playground page with the nef action `Editor \u003e nef \u003e Export Playground page to markdown`\n\n### 📲 Create a Playground Book from your Swift package\n\nYou can create a Playground compatible with you iPad from a Swift package. You only need to open the swift package in Xcode,\nand select the action `Editor \u003e nef \u003e Playground Book from Swift Package`\n\nIt will ask you where to save the Playground Book, and it will start to build it.\n\n\u003cp align=\"center\"\u003e\n    \u003cimg src=\"assets/nef-plugin-playgroundbook.png\" alt=\"nef: action for making a Playground Book\" width=\"90%\"/\u003e\n\u003c/p\u003e\n\n\u003e This feature needs to use Swift Package Manager tool. Consequently, it will need to disable the sandbox thus it is not allowed in the App Store; but if you want to enjoy this feature, you only need to install the `.dmg` you'll find in the [releases](https://github.com/bow-swift/nef-plugin/releases) section.\n\n\u0026nbsp;\n\n## 🔨 Xcode navigation keyboard shortcuts\n\nTo make you a more productive developer, you can associate a keyboard shortcut to each `nef` action.\nOpen the shortcuts menu in `Xcode \u003e Preferences... \u003e Key Bindings` and set your command.\n\n\u003cp align=\"center\"\u003e\n    \u003cimg src=\"assets/nef-xcode-shortcuts.png\" alt=\"nef: set keyboard shortcut\"/\u003e\n\u003c/p\u003e\n\n## ⚖️ License\n\n    Copyright (C) 2019-2021 The nef Authors\n\n    Licensed under the Apache License, Version 2.0 (the \"License\");\n    you may not use this file except in compliance with the License.\n    You may obtain a copy of the License at\n\n       http://www.apache.org/licenses/LICENSE-2.0\n\n    Unless required by applicable law or agreed to in writing, software\n    distributed under the License is distributed on an \"AS IS\" BASIS,\n    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n    See the License for the specific language governing permissions and\n    limitations under the License.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbow-swift%2Fnef-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbow-swift%2Fnef-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbow-swift%2Fnef-plugin/lists"}