A veces uso un terminal clásico donde mcedit es mi editor preferido, y a menudo me gusta pasar un número de línea, para corregir un programa / script.
Para llamarlos uniformemente edit source.sh 123
, escribí este script, que coloqué como 'editar' en la ruta:
#!/bin/bash
# - edit a file using mcedit or gedit, depending on X11 or console invoking.
# - jump to specified line, if any.
Xedit=/usr/bin/gedit
if [[ $TERM = "linux" ]]; then
if [ $# -eq 1 ]; then
mcedit $1
else if [ $# -eq 2 ]; then
# echo "edit invoked\t/usr/bin/mcedit +$2 $1" >> /tmp/edit.log
/usr/bin/mcedit +$2 $1
else if [ $# -eq 0 ]; then
/usr/bin/mcedit
fi
fi
fi
else if [[ $TERM = "xterm" ]]; then
# scheint nicht zu helfen
# LANGUAGE=C
export LC_ALL=C
if [ $# -eq 1 ]; then
$Xedit $1
else if [ $# -eq 2 ]; then
# echo "edit invoked\t/usr/bin/scite -open:$1 -goto:$2" >> /tmp/edit.log
# $Xedit -open:$1 -goto:$2
$Xedit +$2 $1
else if [ $# -eq 0 ]; then
$Xedit
fi
fi
fi
fi
fi
Use las instrucciones de depuración anteriores de cuando usé scite, no gedit, como editor gráfico.
Algo, que no funciona de esta manera, está abriendo múltiples archivos como este:
edit *.html
si hay más de un archivo html, entonces el patrón se expande a múltiples archivos.
Las invocaciones válidas son:
edit
edit foofile
edit foofile 123
desde X o terminal.
edit filename
para ejecutar todokate filename 2>/dev/null &
.