Уже есть переменная $EDITOR
, которая является чрезвычайно стандартной, и я видел, как она работает с широким спектром юниксов. Кроме того, vi
- это всегда опция для любого варианта Unix.
Debian имеет команду sensible-editor
, которая вызывает $EDITOR
, если может, или в противном случае возвращается к некоторым стандартным. Freedesktop.org имеет команду xdg-open
, которая определит, какая среда рабочего стола запущена, и откроет файл с соответствующим приложением. Насколько я знаю, sensible-editor
не существует в других дистрибутивах, и, конечно, xdg-open
потерпит неудачу в текстовой среде, но это не помешает попробовать столько вариантов, сколько возможно, если вы думаете, что это Важно, чтобы пользователь рабочего стола мог видеть их счастливые блестящие gedit
или kate
вместо страшных старых vi
или nano
. ;)
Способ работы crontab
и sudoedit
также заключается в создании файла в / tmp. git
помещает его в .git, а svn
фактически помещает его в текущий каталог (не /tmp).