What's your favorite editor?

Yeah Microsoft is finally doing something right… like ripping the Komondo IDE user interface and makes it open source. :stuck_out_tongue:

I’m using Brackets mainly because it has great advantages : Live refresh, multiple preview functions (color, image, …), quick editing, smart autocomplete, and lots of extensions

i once started with notepad ++ and still keep using it for very minor things as replacement to the regular notepad but once i discovered atom, this has been my allaround toolbox. having the option to extend it with plugins i am using it for:

  • ftp
  • kirby autocomplete with syntax
  • php, html, json etc.pp.
  • linter to get errors straight away
  • many more

downside, you have to get adjusted using it with several projects, setup can be confusing, can eat alot of memory.

No one on vim?

I watched a video series about learning vim, and it’s really great. I was using Atom, after using Sublime, but it’s so slow. Thanks to the series about vim, I’m back to Sublime, but with vintage mode enabled. I like how, in Sublime, I can do both vim’s crazy keythings (to be fast and feel super productive) and just use it the ‘modern’ way (if I don’t feel like it and just want to use a mouse).

The biggest take away from the vim series for me was not that vim is the way to go, but the lession that you can and SHOULD customise your editor to your needs. And Sublime is great for that.

Invest in learning keyboard shortcuts. And if you don’t like them, invest in finding out how to change them. See things you do over and over again, and make them go faster. :slight_smile: Then your editor of choice doesn’t really matter anymore.

on mac: sublime and recently more often atom.

Began using vim and now neovim, after years of Sublime Text and 8 months of Atom.

Neovim is really amazing, I run it mainly inside iTerm2. If I need to connect to a server in SFTP with Transmit I work on files with VimR, which is a nice experimental GUI for neovim.

At the moment I took a break form using tmux and just use iTerm2 with split-panes and tabs. Had often problems between nvim and tmux and probably it’s just my config files that don’t work well together.

Just giving Visual Studio Code a try. It needs quite some settings tweaking and extensions, but starting to really like it.

1 Like

I have always used Espresso (Mac editor) — http://espressoapp.com

2 Likes

It needs quite some settings tweaking and extensions

I did not tweak it that much and I’ve yet not installed any extensions.

Here are my settings so far:

  • Light theme
  • Path to PHP
  • Path to terminal
  • Title now shows the full path to the file, not just the filename

On a Mac the paths below will probably not work.

{
    "workbench.colorTheme": "Default Light+",
    "php.validate.executablePath": "D:/xampp/php/php.exe",
    "terminal.integrated.shell.windows": "C:\\Windows\\Sysnative\\cmd.exe",
    "window.title": "${dirty}${activeEditorMedium}${separator}${folderName}${separator}${appName}",
}

Seems like I like to tweak it much further (also to get it very similar to Atom, which I really like but the speed just sucks – VSC on the other hand is sometimes just ugly and so badly designed). For reference if anyone else is interested:

Extensions:

  • Align
  • Atom Keymap
  • Auto Close Tag
  • Beautify
  • Color Highlight
  • EditorConfig
  • ESLint
  • file-icons
  • IntelliSense for CSS class names
  • One Dark Pro
  • PathIntelliSense
  • PHP DocBlocks
  • PHPIntelliSense
  • phpcs
  • Project Manager
  • Settings Sync
  • stylelint
  • ventur

And my custom settings:

{
    // App
    "workbench.startupEditor": "none",
    "window.restoreWindows": "folders",
    "telemetry.enableTelemetry": false,
    "workbench.commandPalette.history": 0,

    // Theme
    "workbench.colorTheme": "One Dark Pro",
    "editor.fontFamily": "Hasklig, Menlo, Monaco, 'Courier New', monospace",
    "editor.fontSize": 14,
    "editor.fontLigatures": true,


    // Editor
    "editor.cursorStyle": "line",
    "editor.autoIndent": true,
    "editor.wordWrap": "bounded",
    "editor.scrollBeyondLastLine": false,
    "files.trimTrailingWhitespace": true,
    "color-highlight.markerType": "dot-after",


    // Sidebar
    "explorer.openEditors.visible": 0,
    "workbench.iconTheme": "file-icons",

    // Languages
    "css.colorDecorators.enable": false,
    "scss.colorDecorators.enable": false,
    "json.colorDecorators.enable": false,
    "files.insertFinalNewline": true,
    "phpcs.standard": "PSR2",
    "html.suggest.html5": true,

    // Keymappings
    "atomKeymap.promptV3Features": true,
    "editor.multiCursorModifier": "ctrlCmd",

    // Terminal
    "terminal.external.osxExec": "iTerm.app",
    "terminal.integrated.fontFamily": "Hasklig",
    "terminal.integrated.fontLigatures": true,
    "terminal.integrated.fontSize": 13,
    "terminal.integrated.lineHeight": 1.5,
    "terminal.integrated.cursorBlinking": true,
    "terminal.integrated.cursorStyle": "line",
    "workbench.colorCustomizations": {
        "terminal.ansiBlack": "#282c34",
        "terminal.ansiRed": "#e88388",
        "terminal.ansiGreen": "#86d34b",
        "terminal.ansiYellow": "#db9752",
        "terminal.ansiBlue": "#64a8d7",
        "terminal.ansiMagenta": "#c864e4",
        "terminal.ansiCyan": "#65c2cd",
        "terminal.ansiWhite": "#b9c0cb",
        "terminal.ansiBrightBlack": "#696969",
        "terminal.ansiBrightRed": "#e88388",
        "terminal.ansiBrightGreen": "#bbe39d",
        "terminal.ansiBrightYellow": "#ecb977",
        "terminal.ansiBrightBlue": "#72bef2",
        "terminal.ansiBrightMagenta": "#d291e4",
        "terminal.ansiBrightCyan": "#65c2cd",
        "terminal.ansiBrightWhite": "#ffffff"
    },

    // Exclude files
    "files.exclude": {
        "**/.git": true,
        "**/.svn": true,
        "**/.hg": true,
        "**/CVS": true,
        "**/.DS_Store": true,
        "**/node_modules": true,
        "**/vendor": true
    },
    "search.exclude": {
        "**/node_modules": true,
        "**/.git": true,
        "**/.DS_Store": true,
        "**/coverage": true,
        "**/vendor": true
    },

    // Settings sync
    "sync.gist": "739c63f5665f17f742839a6543932abf",
    "sync.lastUpload": "2017-08-07T13:43:12.402Z",
    "sync.autoDownload": false,
    "sync.autoUpload": false,
    "sync.lastDownload": "",
    "sync.forceDownload": false,
    "sync.anonymousGist": false,
    "sync.host": "",
    "sync.pathPrefix": "",
    "sync.quietSync": false,
    "sync.askGistName": false,


    "php-docblocker.useShortNames": true,
    "git.countBadge": "off",
    "projectManager.showProjectNameInStatusBar": false,
    "projectManager.groupList": true,
    "projectManager.vscode.baseFolders": [
        "$home/Development/"
    ],

}
3 Likes

Also using VSC for quite some years now. With the php-debug extention you can even get a simple PHP debugger which sometimes can really help debugging while at the same time keeping the editor slimmer than a full IDE.

Other “must have’s” that I discovered over the years:

  • auto close tag
  • auto rename tag
  • document this
  • paste and indent (sublime can do that natively)
  • eslint
  • open in github
  • open in browser
  • project manager (like sublimes project quick switch feature)
  • setting sync
  • php debug

By the way I once created a GIST with Kirby API snippets (based on Medienbaekers Atom snippets) for VSC. I think thy should still work but I am not 100% sure because one of the recent updates changed their snippet API.

3 Likes

Perfect, just what I needed! Thanks for sharing :slightly_smiling_face:.

Used brackets for years, since, as a beginner, the live reload feature was really useful. It still was until they introduced a reverse-inspect that moves you in your code every time you click on an element in the preview, and didn’t add the possibility to disable it even in the next releases and after many complaints from users. It was also reaaally slow when projects started to have a lot of files.

Then I tried Atom, faster, but still a bit slow.

Then I tried vscode, but didn’t quite like it as you all do. Was bothered with the whole git-terminal-everythingintegrated-stuff and its left sidebar I have no use of, I just want to code in here. Also, didn’t find a visual setup that I would feel comfortable using many hours a day.

Then I tried Sublime, boy that’s fast, found a theme that suits me, the interface kept to its minimum. Love it. Still use it.

I know I’m on the not-to-be-updated-for-long road, but right now it feels just fine.

Been using Espresso (http://espressoapp.com) for a long time. It’s not the most feature rich editor but most of the stuff I want from an editor is there. When editing php or js I can sometimes miss more advanced autocompletions that you only can get if your editor/plugin can analyze your code/project. But for editing html and scss/css there are no other editor that comes close IMHO.

Integrated SFTP client is nice to have for those moments you need to connect directly to a server. But mostly I deploy using other techniques.

I’ve tried almost all of the other editors out there, but still coming back to Espresso. So for me it’s a good enough editor. The thing a like most is it’s speed. When trying Atom, VS Code or PHPStorm, I feel they are a bit sluggish. The most annoying thing is the delay when typing. On my computer, there is a noticeably delay when pressing a key before the character is shown on screen. Like a 50-100ms delay. Not much, but enough to get a feeling of a sluggish editor. Espresso on the other hand is instant when typing.

2 Likes

Sublime Text 2 for life… I’m never upgrading :fist:

2 Likes

Hey folks, for you people out there using VS Code: Have you figured out a way to get autocompletion for HTML inside of php files?

I use kirby all day long, and it seems like in VS Code using Emmet for writing faster html in php files is not possible. I would love to know if anybody here had a solution :slight_smile:

Seems to still be an on-going issue. I think this language server is the best possible solution at the moment.

You should… to Sublime 3 :grin:

2 Likes

I tried to install it but it didn’t seem to help for me. Maybe I have a plugin conflict. I will try it again.

Started out with Brackets. Tried Atom along the way. Made the switch to PHPStorm a couple of months ago and haven’t looked back since. Feels like I’ve moved away from the kid’s table to join the adults