Vim as an IDE for developers

Vim is as an IDE (integrated development environment) is a pun on it as its really just an editor that was designed back in 1991. Perhaps “just” is a strong word. Vim evolved from VI and was one of the earliest editor along side EMACS.

Today, after a good 20 years, I believe it is still great, perhaps arguably one of the best development environments out there. You can find more information about it (https://en.wikipedia.org/wiki/Vim_(text_editor)). My experience of it starts from diving into it about 8 years before. Along the way I have swapped IDES from inteliJ, visual studio, sublime, dreamweaver? heck even notepad and its ++ derivatives. Vim has been probably one of the more interesting DE journeys I have done. and still learning every time.

Basics 

You can install via homebrew

$ brew install vim

A standalone mac app can be installed as a cask from homebrew using

$ brew cask install macvim

You can proceed to start it. by typing in vim in the command line (terminal). One of the first questions definately raised by people who have never used vim is. How the heck do I quit out of vim!? .. this answer will save you. (1) hit escape key. (2) type in “:q” .. which stands for quit. There you go. your first vim command.

Vim commands

the following will be quite bland as I just type it all in as a reference. Vim is quite powerful, having to let you install additional packages to include spell checkers, linters, running bash cmds within vim, integrating git, enabling project drawers, syntax helpers for almost every language you can think of and most powerful of all which I think: is the ability to use this editor from within most VMs or cloud systems. Making it a breeze to editor or do some really funky stuff on the go.

to save and exit:
$ :wq [command mode]

to re-tab or re-space file:
$ gg=G [command mode]

to delete a line:
$ dd [command mode]

to go to top of page
$ gg [command mode]

to go to bottom of the page
$ G [command mode]

to copy line
$ yy [command mode]

to start editing (3 ways)
$ i [command mode]
$ a [command mode]
$ o [command mode:]

to search
$ / [command mode]
$ n [next / commmand mode]
$ N [previous / commmand mode]

moving using keys
$ h [left / command mode]
$ l [right / command mode]
$ j [up / command mode]
$ k [down / command mode]

to delete a character:
$ x [command mode]

to indent a number of lines:
$ >}

to change all the upper or lowercase, use visual mode to select all
$ u (for lowercase)
$ U (for uppercase)

Vim packages

some recommended packages you should start using is as follows:

  • Plug
  • Supertab
  • vim-fugitive
  • lightline.vim
  • fzf
  • vim-vinegar
  • vim-gitgutter
  • syntastic
  • vim-colorschemes
  • vim-sensible

Other packages which might help are as follows

  • vim-javascript
  • vim-markdown
  • vim-ruby
  • vim-less

If you are using Plug, you can update all your packages in one go using

$ :PlugUpdate

Have fun vim.


Recent Posts
Why Job Sites Are Disappearing? · Apprentice, Journeyman, and Master · List of Docker Registries · Installing Debian 10 buster on virtualbox · Cross platform terminal emulators · Keep active keep happy · Tools to secure your devices · Secrets of the Face and Palm · Vim as an IDE for developers · WordPress multisite on Debian · Mongodb guide to basics · Jagged Alliance 2 some historic notes · Antivirus solutions and why its needed · A taovilla review and history · MacOS X high sierra running out of disk space · Airprint on bonjour missing scan function for all-in-one printers · Improving terminal load times · Knowing website design costs and pitfalls · Keeping secure and checking if your password is safe? · Installing Virtualbox Guest Additions for Debian Stretch · Windows XP Virtualbox on Mac OS X High Sierra · DNS settings and getting on public DNS · Extracting OVF from VMware ESXI 6.0 · Installing LMDE 2 Betsy · SSL Certificates and Encryption · Machine Learning with Spark · Installing Lubuntu in Virtualbox · Getting started with Docker (docker-toolbox) · Ubuntu upgrade limited boot space · Top 10 Browsers Overview · Taovilla Oracle app beta built using meteorjs · Setting up Debian on VirtualBox · The HomeBrew doctor · Afterlife Buddhist Chants · Caffeine icon for ubuntu / lubuntu · Updating wordpress without FTP · Preinstalled Languages on mainstream OS · Reminisce of Xcom · Java install on Ubuntu · Display image as ASCII art · VirtualBox Resizing Lubuntu Guest Linux · Introducing Samurai · Buddhist Chants · Macbook Pro Key mapping for Lubuntu · Common Apache Nginx commands · The nothingness between Zen and Tao · Tao, Zen and Theravada · Meditation for Growth · Buddhism · Refreshing Git versioned files · Basic Environments for Jira · Coffee Shops and Feng Shui · Converting a hg mercurial to git repository · Long term domain name costs comparison · SVG Graphing · 2 ways to Php install on mac · New EBook Launched Secrets of Human Face and Palm · Introducing Samurai and Installing Meteorjs to own server · Improving the speed of Linux Mint · Ma Zu Deity in Malaysia Sabah · SVG graphics with Javascript · FTP Clients for Mac OS X · Windows Apps on Mac · Programming Languages Compared · Hackers Natural Cure · Publishing on Ebooks · Editors such as SublimeText2 · Good Coding Practice · LMDE Linux Mint Debian Edition · Heroku Webapp · Hadoop Single node 32bit on 12.10 Mint XFCE · Tracing User Behaviour FRUBO · Installing Nginx on MacOSX · Installing Ruby on MacOS X · Turn off annoying compress outlook message · HTML5 Apps on Cordova PhoneGap with MacOSX · Choosing and using Latex · Reviewing Javascript World · Gemstones · Han Xin the Hero of Han · Gathered Wisdoms · Oriental Calendar · Li Qi Feng Shui · Five Elements Feng Shui · Taoist Philosophy Overview · 25th Anniversary Singapore Taoist Philosophy Group · Draw up an Ubuntu Server Environment · Draw up a Lightweight Mail Server · Draw up a Web Database · Php CMS and Frameworks · Drawing up a Web Service · Draw up a Virtual Cloud Server · Unlocking and Flashing your ZTE Blade · Tai Chi and Qi Gong · Pip error in Python with Homebrew · Setting up homebrew for OSX · Personality by Month · Life and Death in Oriental Beliefs · Windows and Linux Desktop Security · Ruan Tou Feng Shui · Life Analysis and Prediction · Cemetery Feng Shui · Taoism · Confucius · Guan Gong · Meditation · Gu Qin · TexMaker with Glossary on Mac · Quick way to OpenStack on Lubuntu · Ancient IT Dictionary · Oriental Poems · Fan Li · IChing · Dao De Jing · TeaTime for Basic Python · CVs and Jobhunting · Chinese Input on Linux Ubuntu · Research in Computer Science · Reviewing Applications on My Mac · Reviewing Applications on My Windows · Installing Windows XP · Installing wireless on Linux Ubuntu or Mint · Restoring an Amazon EC2 Backup · Mac Update PASV problem · Reviewing Green Computing · Consuming the Cloud Storage Space · Using Cherokee and WordPress Whine · Disabling Lubuntu Screensaver · Installing Lubuntu from USB drive · Searching for a Micro Mini CMS · ReStructuredText in Python · Rackspacecloud Vs Amazon · Hacking your old PSP · Attending Atlanta 55th MMM Conference · Smart devices for everyday use · Creative Programmers · Linux Settings · Embarking on Further Education · Machine Learning · Mac Tips – Viewing hidden files on desktop · Creating PDF files for free · Online Media for All · C# ASP Settings · SVN Git and Mercurial Versioning · Getting the last inserted id using datasets · Think Lucky and be Happy · AngieGallery Design · AceTravel Design · Letter to Mum · Prison Vs Work · Irish Daughter · Are you a carrot, an egg or a coffee bean? · Home Media Entertainment Setup · Collection of Interesting sites · Studying in London · Great Oriental eats in London · CMS Joomla, WordPress, Drupal compared ·

© 2024 · mirageglobe · using zenifywp theme by www.mirageglobe.com ·
  · RSS Feed