14 ms·
CodeEdit: Building a free, open-source code editor for macOS
- _samjarman 5y agoAt some point, the question has to be asked (and this is not directed at CodeEdit, but this prompted my question)... do we need another editor? We have a very crowded editor market place. There seems(?) to be enough competition to drive innovation, and most(?) support plugins/extensions for devs to tailor to their needs (as opposed to swapping editors for a killer feature). I also think there is a benefit to a team using the same editor for a project. This allows checking in of editor-specific files that increase productivity (We check in our .vscode folder with recommended extensions, on save actions, launch configs etc) What do you think? Am I missing something here? [Edit: To be clear, I'm personally not in the camp of "no more editors pleases", just was interested in seeing others thoughts here]
- jjice 5y ago> do we need another editor? No, but why not? Seems like someone wanted to write some code for something they wanted and are sharing it. Can't hurt.
- jspaetzel 5y agoYeah, you're right! We should have stopped with Emacs in 1976. After all, everything after that point has been pointless and derivative.
- ziftface 5y agoI agree with your point, even though emacs is still my favorite editor
- hyakosm 5y ago"Ed is the standard text editor." and maybe we didn't "need" anything else, but comfort and ease of use are good incentives to create better tools, and tools more adequate with our work environment.
- cellularmitosis 5y ago"I've seen [visual] editors like that, but I don't feel a need for them. I don't want to see the state of the file when I'm editing." - Ken Thompson on the superiority of ed to editors such as today's vi or emacs, as summarized by Peter Salus in A Quarter Century of UNIX (Addison-Wesley, 1994) https://en.wikiquote.org/wiki/Ken_Thompson https://en.wikiquote.org/wiki/Ken_Thompson
- edgyquant 5y agoIt’s very weird how I can’t imagine editing text without seeing the state
- david38 5y agoThis is how new ideas evolve. What “market place”? How many editors are regularly sold? Lucky for you, this project costs you nothing and takes up no space.
- Narretz 5y agoThe market can't be that crowded if a native open source editor that tries to be as close to MacOS as possible doesn't exist.
- sk0g 5y agoWould Chime count? Seems to be Go specific, for now at least. https://www.chimehq.com https://www.chimehq.com
- oatmeal_croc 5y agoNative MacOS aside, how does it compare to GoLand?
- sk0g 5y agoI very briefly trialled it out of curiosity, as I was just finishing the job where I was using Go daily. It wasn't as full-featured as GoLand, but the UI and performance was a fair bit nicer. The only major drawback though, for me, was the language server/ auto-completes and all that. JetBrains does a phenomenal job in Go especially, where even the official language server is pretty meh. There have been a few releases since then, and if I were using Go again I would try it out for sure. There's a free trial, so nothing to lose!
- Aeolun 5y agoSince I still want Jetbrains, but fast, and I don’t have it yet? Yes, we do need a new editor.
- chipotle_coyote 5y ago> I also think there is a benefit to a team using the same editor for a project. This allows checking in of editor-specific files that increase productivity This is an interesting thought. Off the top of my head, I don't think I agree -- I'd consider mandating that everyone use an editor that supports EditorConfig and check in an .editorconfig file to enforce basic style standards, but beyond that, I'd be inclined to think that you're going to get more productivity by letting people use editors that they're familiar -- and fast -- with. On topic to your first question: at this point I don't know if we "need" CodeEdit, and of course CodeEdit has to have more to it than a nice README document and a cool icon before we can really make even educated guesses about where it might go in a few years. But you never know. While I don't use Panic Nova (I tried for a bit, but BBEdit 14 has just been better for me as far as aggressively Mac native editors go), I find it really interesting, and v9 suggests they may go after JetBrains more than after VS Code. And I just don't buy the "we need to put all our resources behind Glorious Editor X and embrace a monoculture" argument I've seen in some quarters (particularly a few folks who insist that Nova needs to adopt Code's extension API). I think Code really is shaping up to be the next generation Emacs, but as many, many people might point out, the original generation Emacs is still doing pretty well.
- nmilo 5y agoWho's we? The great thing about text files is that they're editor agnostic. If there already exists 1000 editors that work, should that really be stopping me from making the 1001st that works for me better? Also I disagree with the idea that teams should use the same editor. I, for example, hate vscode, so if I join your team, I'm stuck either using a less productive editor, or re-creating the launch configs and save actions in my editor. To me it seems like a failure on the editor's part to separate concerns---a code editor should edit code. If it compiles or launches the code, it should do so using an external program, e.g. make, where all the launch configs can go in the Makefile, and not in some editor specific file.
- bastawhiz 5y ago> I also think there is a benefit to a team using the same editor for a project. This allows checking in of editor-specific files that increase productivity (We check in our .vscode folder with recommended extensions, on save actions, launch configs etc) There's a benefit to having a well-trodden path for the team. But that's about where it stops. If I put up quality PRs that meet the standards for the codebase and my productivity is high, who the hell cares which tool(s) I use? Should I be forced to use a certain text macro program? A particular terminal? What purpose does it serve other than to micromanage?
- visarga 5y ago> We check in our .vscode folder with recommended extensions, on save actions, launch configs etc That has the side effect of silently overwriting your local .vscode config when you check out a branch. If you have custom settings they get destroyed.
- hbbio 5y agoThe current best option for a native editor on macOS is still Sublime Text (now 4). It's not purely native as not using all the core Apple frameworks, but it still does the job and finally has support for LSP which is the major feature you would expect from a code editor today. Congrats for providing another option: If well done and providing a user experience which is close enough (including visually) to vscode, that could be a compelling option. Don't forget LSP and just provide a native implementation of something that looks like vscode (which was designed after Sublime), not a different UI altogether.
- eek2121 5y agoWhat? It is back from the dead?!? YESSS!!! :D
- hbbio 5y agoIndeed! - M1 support: check - GPU rendering: check - LSP support: check The main problem (for me) is the use of their external app Sublime Merge to manage git sync: This breaks the work flow, and is an inferior experience compared to vscode. Also, there are slight differences in the way tabs are managed which make it cumbersome to switch between Sublime and vscode (which has won muscle memory lately). Edit: for instance the current file is not highlighted by default in sidebar, I resort to a custom keybinding: { "keys": ["ctrl+alt+s"], "command": "reveal_in_side_bar" }
- nicoburns 5y agoThere’s a sidebar enhancements extension which allows you to right click a tab to reveal in sidebar.
- skoskie 5y agoWasn’t there an issue with that plugin getting bought out and then used for really intrusive analytics? I could definitely be wrong. It might have been a different plugin.
- sigzero 5y agoIf you have a programming itch...scratch it. Good job and keep going.
- seumars 5y agoReally excited for this. Looks like what I wanted/expected Nova to be. Still sticking to Sublime for now though.
- radiKal07 5y agoWhere does Nova fall short to you?
- itslennysfault 5y agoToday I learned some people actually like xCode. I despise it and typically do swift in VS Code and do everything I can to avoid launching xCode.
- cellularmitosis 5y agoIf you have a setup which replicates the autocomplete from Xcode, I'd love to hear the details :)
- boxed 5y agoThe auto compete in xcode has to be the worst I've ever used. Hitting tab autocompletes just one word. Even if it's the only option! It's infuriatingly bad. It's like no one at Apple uses it.
- robertwt7 5y agoForgive my ignorance, but what's the difference between this and VS code? Other than look, feel, and architecture. or is it merely a for fun project? I'm using vs code or vim and tmux as daily editor (except for java which i use IntelliJ) and have been very comfortable with it. I used to try different editors back in the days just to explore for fun, but now when you want to get the work done, it'll be very time consuming to switch editors, map keys, themes, setup, etc. either way, congrats for the new cool project!
- eezing 5y agoI think they’re saying vscode is slow. I agree, it’s molasses.
- 8n4vidtmkvmk 5y agoit's gotten bad enough that I've reinstalled sublime
- gaetgu 5y agoI think the biggest issues are slow computers and non-native apps (which intersect in a lot of places) Slower computers can have issues running electron apps such as VSCode, which native apps (mostly) fix. Native apps are also generally nicer to use (on mac) as they break up the flow of the way things look less.
- jpurnell 5y agoI just wish someone would do this for iPad. I know the market is small, but there's nothing even attempting this for iPad.
- oatmeal_croc 5y agoYou'd have to build and execute the code on a different machine remotely, I guess. Seems like a pain for most people.
- DHPersonal 5y agoWhat about Kodex? https://apps.apple.com/us/app/kodex/id1038574481 https://apps.apple.com/us/app/kodex/id1038574481
- Terretta 5y agoSome things to look at: - Kodex - GoCoEdit - Textastic (pair with Working Copy) - Code Editor (unsupported, formerly Coda) - Codea And if you’re online: - https://github.com/coder/code-server (see: https://coder.com/docs/coder/latest/comparison https://coder.com/docs/coder/latest/comparison )
- HWR_14 5y agoRelated question: What's people's preferred diff tool for code and directories of code on macOS? I haven't found one I liked since the Catalina update killed 32-bit apps.
- sgjohnson 5y agoFor me it’s the one that’s built into JetBrains IDEs. Although for directories I believe it only works when combined with Git. I’ve never tried to compare 2 directories of code in a situation that wasn’t a Git changeset.
- joerobot 5y agoI think Meld is a great tool. I haven't found another free tool that works as well. https://meldmerge.org/ https://meldmerge.org/
- deleted 5y ago[deleted]
- eludwig 5y agoI've used Beyond Compare for many years. Interface is not super polished, but it gets the job done for me. For both Mac & Windows (https://www.scootersoftware.com https://www.scootersoftware.com)
- readbeard 5y agoFor git repositories in particular, I find Fork's [0] built-in diff tool to be pretty useful. [0] https://git-fork.com https://git-fork.com
- sixstringtheory 5y agoKaleidoscope. File/directory diffing and three way merging, everything can be done with key combinations. Nice interface, can be invoked from command line.
- guessmyname 5y ago
- philistine 5y agoIs no one going to mention the grandfather in the corner, BBedit?
- oefrha 5y agoThese days not having Copilot is a pretty big productivity hit to me. The other day Copilot somehow stopped offering completions for maybe an hour, and I was pretty shocked to realize how much I've grown to rely on just hitting tab to complete the whole line. (I was writing Go at the time which is on the boilerplatey side among the mainstream languages, so Copilot is particularly effective there. Auto-completion from gopls — the language server — is no match.) I'm officially spoiled. I'm afraid small independent code editors are increasingly fighting uphill battles as the big ones roll out support for more and more productivity boosts like LSP and Copilot integration.
- emptysongglass 5y agoAre there any projects to bring Copilot to other unsupported editors such as my favorite, Emacs? I noticed there's a new trend of only releasing important extensions to blessed products and barring their implementation in others such as the new Python LSP, Pylance and now Copilot.
- wiz21c 5y agoFrom pylance web page : > Pylance leverages Microsoft's open-source static type checking tool, Pyright, to provide performant language support for Python. So that's why it's microsoft platform only...
- emptysongglass 5y agoBut Pyright is supported on Emacs so I'm not sure this holds.
- lvncelot 5y agoFor neovim, there's copilot.nvim[1], and for emacs there's flight-attendant[2], which is very much a work in progress, though. [1] https://github.com/github/copilot.vim https://github.com/github/copilot.vim [2] https://github.com/cryptobadger/flight-attendant.el https://github.com/cryptobadger/flight-attendant.el
- 5y ago
- strogonoff 5y agoIf anyone is looking for a simple macOS-native anti-IDE source editor, check out Coteditor (available in App Store). Been using it for a while.
- guessmyname 5y agoCotEditor (https://coteditor.com https://coteditor.com) is a well written, open-source (https://github.com/coteditor/CotEditor https://github.com/coteditor/CotEditor), lightweight, native (Swift), lightweight plain-text editor that many Chinese, Japanese, and Korean developers love to use. I highly recommend it.
- strogonoff 5y agoYeah, I believe it is made by Japanese devs.
- biehl 5y agoLooks very nice. Is it nicer to install it from the AppStore or from homebrew, I wonder?
- strogonoff 5y agoI use MacPorts anyway, and for software like this I use App Store since it’s not like I can avoid using my Apple ID these days anyway… (Which is slightly bothering, but off topic.)
- cormullion 5y agoCotEditor has excellent typography support. Invaluable for testing fonts.
- amitprayal 5y agouse jEdit its the best