Raspberry pi text editor (command line)
Note: This is a translation of the Spanish version of my blog article I posted some years back
Before even mastering the command line, you will need to learn a way to edit text files from the command line. Be it to make configuration changes, or write a script (sequence of commands), you'll be a lot more productive if you learn how to use one.
Raspbian comes equipped with nano (easy to use when starting out) and vi (the standard - found on all *nix servers and desktops), but, there is something even better: vim (VI iMproved).
Raspbian comes equipped with nano (easy to use when starting out) and vi (the standard - found on all *nix servers and desktops), but, there is something even better: vim (VI iMproved).
If you've never used vi before, might want to start with nano instead, or read a vi tutorial or even better, an interactive vim tutorial (highly recommended!!), and cheat sheet)
Normally, on Linux and modern Unix, vi is really vim, but on Raspbian, vi is vi. Let's change this:
fdion@raspberrypi ~ $ vi file.py
There are a few lines you will want to use specifically for Python scripts:
The first line is always the "shebang" line:
Here, we tell the operating system shell executor to pass the script to the python interpreter. For other interpreters, just replace python with whichever interpreter will handle the script.
fdion@raspberrypi ~ $ sudo apt-get install vimThere are a few things to add to .vimrc to make it better (in /home/user):
syntax on
filetype indent plugin on
set modeline
fdion@raspberrypi ~ $ pwd
/home/fdion
fdion@raspberrypi ~ $ vi .vimrc
(type i for insert, type the above 3 lines, hit Escape and :wq)
fdion@raspberrypi ~ $ ls .vimrcExcellent, now scripts and code (like Python) will look much better, easier to read in color:
.vimrc
fdion@raspberrypi ~ $ vi file.py
There are a few lines you will want to use specifically for Python scripts:
The first line is always the "shebang" line:
#!/usr/bin/env python
Here, we tell the operating system shell executor to pass the script to the python interpreter. For other interpreters, just replace python with whichever interpreter will handle the script.
Another thing for a python script that I like to use, a docstring (description) for the script, between """ and """.
The seventh line above (in the code example) is for vim itself for proper tabs as 4 spaces (you want that for aligning your Python code, and is a nice to have in general for shell scripting):
If you are dealing with utf-8 code (for example accents or special characters) then you need to define the following:
# vim: tabstop=4 expandtab shiftwidth=4 softtabstop=4
If you are dealing with utf-8 code (for example accents or special characters) then you need to define the following:
# vim: set fileencoding=utf-8
Francois
@f_dion
@f_dion
No comments:
Post a Comment