Lors de l'installation de TextWrangler sous OSX, vous obtenez également une commande edit
qui vous permet d'ouvrir n'importe quel fichier texte à partir de la ligne de commande.
Est-il possible d'avoir une fonctionnalité similaire dans Ubuntu pour taper une commande sur le terminal pour ouvrir un fichier dans un éditeur de texte spécifique (par exemple, Kate)?
Pour ouvrir un fichier en utilisant kate
, vous pouvez exécuter quelque chose comme:
kate filename
Cela pourrait afficher des messages tels que:
kate(3702)/kdecore (services) KMimeTypeFactory::parseMagic: Now parsing "/usr/share/mime/magic"
kate(3702)/kdecore (services) KMimeTypeFactory::parseMagic: Now parsing "/home/user/.local/share/mime/magic"
Bus::open: Can not get ibus-daemon's address.
IBusInputContext::createInputContext: no connection to ibus-daemon
Pour supprimer ces messages, redirigez le flux de sortie d'erreur vers /dev/null
:
kate filename 2>/dev/null
Si vous souhaitez continuer à utiliser le même terminal, ajoutez un &
après la commande:
kate filename 2>/dev/null &
Si vous souhaitez exécuter edit filename
pour l'ouvrir, vous pouvez créer une fonction bash dans votre fichier ~/.bashrc
. Ajoutez le code suivant à votre fichier ~/.bashrc
:
edit() { kate "$@" 2>/dev/null & }
Vous pouvez ouvrir n'importe quel éditeur comme ceci:
NAME_OF_EDITOR FILENAME
gedit filename
(Ubuntu)kate filename
(Kubuntu)bluefish filename
kwrite filename
libreoffice filename
Vous pouvez même ouvrir une page Web de la même manièrefirefox filename.html
chrome filename.html
banshee filename.ogg
ou .mp3
Vous pouvez voir la tendance ici ..
Si vous préférez utiliser la commande edit
dans Ubuntu également parce que vous en avez l'habitude, vous pouvez également définir un alias pour votre éditeur favori, comme pour Kate:
alias edit='kate'
Pour rendre cet alias permanent, ajoutez simplement cette ligne à ~/.bash_aliases
.
Si vous ne disposez d'aucun environnement graphique et que vous utilisez la console, vous pouvez toujours utiliser:
vim foo.txt
nano bar.txt
pico foo.html
emacs bar.xml
...
et ainsi de suite revient à la première réponse ..
Vous pouvez utiliser la commande CLI de l'éditeur souhaité pour ouvrir et modifier des fichiers.Par exemple, gedit
dans gnome ou kate
dans KDE.
Il suffit de taper:
kate filename
ouvrir le fichier dans kate.
J'utilise parfois un terminal classique où mcedit est mon éditeur préféré et aime souvent passer un numéro de ligne pour corriger un programme/script.
Pour les appeler uniformément edit source.sh 123
j'ai écrit ce script, que j'ai placé comme 'edit' dans le chemin:
#!/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
Consultez les anciennes instructions de débogage de quand j’utilisais scite, pas gedit, comme éditeur graphique.
Quelque chose, qui ne fonctionne pas de cette façon, est l’ouverture de plusieurs fichiers comme ceci:
edit *.html
s'il y a plus d'un fichier HTML, le motif est étendu à plusieurs fichiers.
Les invocations valides sont:
edit
edit foofile
edit foofile 123
de X ou terminal.